libwebsockets
Lightweight C library for HTML5 websockets
|
Go to the source code of this file.
Data Structures | |
struct | lws_fop_fd |
struct | lws_fops_index |
struct | lws_plat_file_ops |
Macros | |
#define | LWS_FOP_OPEN open |
#define | LWS_FOP_CLOSE close |
#define | LWS_FOP_SEEK_CUR seek_cur |
#define | LWS_FOP_READ read |
#define | LWS_FOP_WRITE write |
#define | LWS_FOP_FLAGS_MASK ((1 << 23) - 1) |
#define | LWS_FOP_FLAG_COMPR_ACCEPTABLE_GZIP (1 << 24) |
#define | LWS_FOP_FLAG_COMPR_IS_GZIP (1 << 25) |
#define | LWS_FOP_FLAG_MOD_TIME_VALID (1 << 26) |
#define | LWS_FOP_FLAG_VIRTUAL (1 << 27) |
Typedefs | |
typedef struct lws_fop_fd * | lws_fop_fd_t |
Variables | |
struct lws_plat_file_ops | fops_zip |
struct lws_fop_fd |
Data Fields | ||
---|---|---|
lws_filefd_type | fd |
real file descriptor related to the file... |
const struct lws_plat_file_ops * | fops |
fops that apply to this fop_fd |
void * | filesystem_priv |
ignored by lws; owned by the fops handlers |
lws_filepos_t | pos |
generic "position in file" |
lws_filepos_t | len |
generic "length of file" |
lws_fop_flags_t | flags |
copy of the returned flags |
uint32_t | mod_time |
optional "modification time of file", only valid if .open() set the LWS_FOP_FLAG_MOD_TIME_VALID flag |
struct lws_fops_index |
#define LWS_FOP_OPEN open |
struct lws_plat_file_ops - Platform-specific file operations
These provide platform-agnostic ways to deal with filesystem access in the library and in the user code.
typedef struct lws_fop_fd* lws_fop_fd_t |
LWS_VISIBLE LWS_EXTERN struct lws_plat_file_ops* LWS_WARN_UNUSED_RESULT lws_get_fops | ( | struct lws_context * | context | ) |
lws_get_fops() - get current file ops
context | context |
LWS_VISIBLE LWS_EXTERN void lws_set_fops | ( | struct lws_context * | context, |
const struct lws_plat_file_ops * | fops | ||
) |
LWS_VISIBLE LWS_EXTERN lws_filepos_t LWS_WARN_UNUSED_RESULT lws_vfs_tell | ( | lws_fop_fd_t | fop_fd | ) |
lws_vfs_tell() - get current file position
fop_fd | fop_fd we are asking about |
LWS_VISIBLE LWS_EXTERN lws_filepos_t LWS_WARN_UNUSED_RESULT lws_vfs_get_length | ( | lws_fop_fd_t | fop_fd | ) |
lws_vfs_get_length() - get current file total length in bytes
fop_fd | fop_fd we are asking about |
LWS_VISIBLE LWS_EXTERN uint32_t LWS_WARN_UNUSED_RESULT lws_vfs_get_mod_time | ( | lws_fop_fd_t | fop_fd | ) |
lws_vfs_get_mod_time() - get time file last modified
fop_fd | fop_fd we are asking about |
LWS_VISIBLE LWS_EXTERN lws_fileofs_t lws_vfs_file_seek_set | ( | lws_fop_fd_t | fop_fd, |
lws_fileofs_t | offset | ||
) |
lws_vfs_file_seek_set() - seek relative to start of file
fop_fd | fop_fd we are seeking in |
offset | offset from start of file |
LWS_VISIBLE LWS_EXTERN lws_fileofs_t lws_vfs_file_seek_end | ( | lws_fop_fd_t | fop_fd, |
lws_fileofs_t | offset | ||
) |
lws_vfs_file_seek_end() - seek relative to end of file
fop_fd | fop_fd we are seeking in |
offset | offset from start of file |
LWS_VISIBLE LWS_EXTERN lws_fop_fd_t LWS_WARN_UNUSED_RESULT lws_vfs_file_open | ( | const struct lws_plat_file_ops * | fops, |
const char * | vfs_path, | ||
lws_fop_flags_t * | flags | ||
) |
lws_plat_file_open() - open vfs filepath
fops | file ops struct that applies to this descriptor |
vfs_path | filename to open |
flags | pointer to open flags |
The vfs_path is scanned for known fops signatures, and the open directed to any matching fops open.
User code should use this api to perform vfs opens.
returns semi-opaque handle
LWS_VISIBLE LWS_EXTERN lws_fop_fd_t _lws_plat_file_open | ( | const struct lws_plat_file_ops * | fops_own, |
const struct lws_plat_file_ops * | fops, | ||
const char * | filename, | ||
const char * | vpath, | ||
lws_fop_flags_t * | flags | ||
) |
LWS_VISIBLE LWS_EXTERN int _lws_plat_file_close | ( | lws_fop_fd_t * | fop_fd | ) |
LWS_VISIBLE LWS_EXTERN lws_fileofs_t _lws_plat_file_seek_cur | ( | lws_fop_fd_t | fop_fd, |
lws_fileofs_t | offset | ||
) |
LWS_VISIBLE LWS_EXTERN int _lws_plat_file_read | ( | lws_fop_fd_t | fop_fd, |
lws_filepos_t * | amount, | ||
uint8_t * | buf, | ||
lws_filepos_t | len | ||
) |
LWS_VISIBLE LWS_EXTERN int _lws_plat_file_write | ( | lws_fop_fd_t | fop_fd, |
lws_filepos_t * | amount, | ||
uint8_t * | buf, | ||
lws_filepos_t | len | ||
) |
LWS_VISIBLE LWS_EXTERN int lws_alloc_vfs_file | ( | struct lws_context * | context, |
const char * | filename, | ||
uint8_t ** | buf, | ||
lws_filepos_t * | amount | ||
) |
|
extern |