VLC  4.0.0-dev
vlc_httpd.h File Reference

HTTP/RTSP server API. More...

Include dependency graph for vlc_httpd.h:

Go to the source code of this file.

Data Structures

struct  httpd_header
 
struct  httpd_message_t
 

Typedefs

typedef struct httpd_host_t httpd_host_t
 
typedef struct httpd_client_t httpd_client_t
 
typedef struct httpd_message_t httpd_message_t
 
typedef struct httpd_url_t httpd_url_t
 
typedef struct httpd_callback_sys_t httpd_callback_sys_t
 
typedef int(* httpd_callback_t) (httpd_callback_sys_t *, httpd_client_t *, httpd_message_t *answer, const httpd_message_t *query)
 
typedef struct httpd_file_t httpd_file_t
 
typedef struct httpd_file_sys_t httpd_file_sys_t
 
typedef int(* httpd_file_callback_t) (httpd_file_sys_t *, httpd_file_t *, uint8_t *psz_request, uint8_t **pp_data, int *pi_data)
 
typedef struct httpd_handler_t httpd_handler_t
 
typedef int(* httpd_handler_callback_t) (void *, httpd_handler_t *, char *psz_url, uint8_t *psz_request, int i_type, uint8_t *p_in, int i_in, char *psz_remote_addr, char *psz_remote_host, uint8_t **pp_data, int *pi_data)
 
typedef struct httpd_redirect_t httpd_redirect_t
 
typedef struct httpd_stream_t httpd_stream_t
 

Enumerations

enum  {
  HTTPD_MSG_NONE , HTTPD_MSG_ANSWER , HTTPD_MSG_GET , HTTPD_MSG_HEAD ,
  HTTPD_MSG_POST , HTTPD_MSG_OPTIONS , HTTPD_MSG_DESCRIBE , HTTPD_MSG_SETUP ,
  HTTPD_MSG_PLAY , HTTPD_MSG_PAUSE , HTTPD_MSG_GETPARAMETER , HTTPD_MSG_TEARDOWN ,
  HTTPD_MSG_MAX
}
 
enum  { HTTPD_PROTO_NONE , HTTPD_PROTO_HTTP , HTTPD_PROTO_RTSP , HTTPD_PROTO_HTTP0 }
 

Functions

httpd_host_tvlc_http_HostNew (vlc_object_t *) VLC_USED
 
httpd_host_tvlc_https_HostNew (vlc_object_t *) VLC_USED
 
httpd_host_tvlc_rtsp_HostNew (vlc_object_t *) VLC_USED
 
void httpd_HostDelete (httpd_host_t *)
 
httpd_url_thttpd_UrlNew (httpd_host_t *, const char *psz_url, const char *psz_user, const char *psz_password) VLC_USED
 
int httpd_UrlCatch (httpd_url_t *, int i_msg, httpd_callback_t, httpd_callback_sys_t *)
 
void httpd_UrlDelete (httpd_url_t *)
 
char * httpd_ClientIP (const httpd_client_t *cl, char *, int *)
 
char * httpd_ServerIP (const httpd_client_t *cl, char *, int *)
 
httpd_file_thttpd_FileNew (httpd_host_t *, const char *psz_url, const char *psz_mime, const char *psz_user, const char *psz_password, httpd_file_callback_t pf_fill, httpd_file_sys_t *) VLC_USED
 
httpd_file_sys_thttpd_FileDelete (httpd_file_t *)
 
httpd_handler_thttpd_HandlerNew (httpd_host_t *, const char *psz_url, const char *psz_user, const char *psz_password, httpd_handler_callback_t pf_fill, void *) VLC_USED
 
void * httpd_HandlerDelete (httpd_handler_t *)
 
httpd_redirect_thttpd_RedirectNew (httpd_host_t *, const char *psz_url_dst, const char *psz_url_src) VLC_USED
 
void httpd_RedirectDelete (httpd_redirect_t *)
 
httpd_stream_thttpd_StreamNew (httpd_host_t *, const char *psz_url, const char *psz_mime, const char *psz_user, const char *psz_password) VLC_USED
 
void httpd_StreamDelete (httpd_stream_t *)
 
int httpd_StreamHeader (httpd_stream_t *, uint8_t *p_data, int i_data)
 
int httpd_StreamSend (httpd_stream_t *, const block_t *p_block)
 
int httpd_StreamSetHTTPHeaders (httpd_stream_t *, const httpd_header *, size_t)
 
void httpd_MsgAdd (httpd_message_t *, const char *psz_name, const char *psz_value,...)
 
const char * httpd_MsgGet (const httpd_message_t *, const char *psz_name)
 

Detailed Description

HTTP/RTSP server API.

Typedef Documentation

◆ httpd_callback_sys_t

◆ httpd_callback_t

typedef int(* httpd_callback_t) (httpd_callback_sys_t *, httpd_client_t *, httpd_message_t *answer, const httpd_message_t *query)

◆ httpd_client_t

◆ httpd_file_callback_t

typedef int(* httpd_file_callback_t) (httpd_file_sys_t *, httpd_file_t *, uint8_t *psz_request, uint8_t **pp_data, int *pi_data)

◆ httpd_file_sys_t

◆ httpd_file_t

typedef struct httpd_file_t httpd_file_t

◆ httpd_handler_callback_t

typedef int(* httpd_handler_callback_t) (void *, httpd_handler_t *, char *psz_url, uint8_t *psz_request, int i_type, uint8_t *p_in, int i_in, char *psz_remote_addr, char *psz_remote_host, uint8_t **pp_data, int *pi_data)

◆ httpd_handler_t

◆ httpd_host_t

typedef struct httpd_host_t httpd_host_t

◆ httpd_message_t

◆ httpd_redirect_t

◆ httpd_stream_t

◆ httpd_url_t

typedef struct httpd_url_t httpd_url_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
HTTPD_MSG_NONE 
HTTPD_MSG_ANSWER 
HTTPD_MSG_GET 
HTTPD_MSG_HEAD 
HTTPD_MSG_POST 
HTTPD_MSG_OPTIONS 
HTTPD_MSG_DESCRIBE 
HTTPD_MSG_SETUP 
HTTPD_MSG_PLAY 
HTTPD_MSG_PAUSE 
HTTPD_MSG_GETPARAMETER 
HTTPD_MSG_TEARDOWN 
HTTPD_MSG_MAX 

◆ anonymous enum

anonymous enum
Enumerator
HTTPD_PROTO_NONE 
HTTPD_PROTO_HTTP 
HTTPD_PROTO_RTSP 
HTTPD_PROTO_HTTP0 

Function Documentation

◆ httpd_ClientIP()

char* httpd_ClientIP ( const httpd_client_t cl,
char *  ip,
int *  port 
)

◆ httpd_FileDelete()

httpd_file_sys_t* httpd_FileDelete ( httpd_file_t file)

◆ httpd_FileNew()

httpd_file_t* httpd_FileNew ( httpd_host_t host,
const char *  psz_url,
const char *  psz_mime,
const char *  psz_user,
const char *  psz_password,
httpd_file_callback_t  pf_fill,
httpd_file_sys_t p_sys 
)

◆ httpd_HandlerDelete()

void* httpd_HandlerDelete ( httpd_handler_t handler)

◆ httpd_HandlerNew()

httpd_handler_t* httpd_HandlerNew ( httpd_host_t host,
const char *  psz_url,
const char *  psz_user,
const char *  psz_password,
httpd_handler_callback_t  pf_fill,
void *  p_sys 
)

◆ httpd_HostDelete()

◆ httpd_MsgAdd()

◆ httpd_MsgGet()

const char* httpd_MsgGet ( const httpd_message_t msg,
const char *  psz_name 
)

◆ httpd_RedirectDelete()

void httpd_RedirectDelete ( httpd_redirect_t rdir)

◆ httpd_RedirectNew()

httpd_redirect_t* httpd_RedirectNew ( httpd_host_t host,
const char *  psz_url_dst,
const char *  psz_url_src 
)

◆ httpd_ServerIP()

char* httpd_ServerIP ( const httpd_client_t cl,
char *  ip,
int *  port 
)

◆ httpd_StreamDelete()

◆ httpd_StreamHeader()

int httpd_StreamHeader ( httpd_stream_t stream,
uint8_t *  p_data,
int  i_data 
)

◆ httpd_StreamNew()

◆ httpd_StreamSend()

◆ httpd_StreamSetHTTPHeaders()

int httpd_StreamSetHTTPHeaders ( httpd_stream_t p_stream,
const httpd_header p_headers,
size_t  i_headers 
)

◆ httpd_UrlCatch()

◆ httpd_UrlDelete()

◆ httpd_UrlNew()

◆ vlc_http_HostNew()

httpd_host_t* vlc_http_HostNew ( vlc_object_t p_this)

References httpd_HostCreate().

◆ vlc_https_HostNew()

◆ vlc_rtsp_HostNew()

httpd_host_t* vlc_rtsp_HostNew ( vlc_object_t p_this)