SYMBOL INDEX (101 symbols across 6 files) FILE: src/common.c type stat (line 38) | struct stat function set_nonblock (line 123) | int set_nonblock(int fd) function open_socket (line 134) | int open_socket(int port, int type, char *desc) function convert_address (line 173) | void convert_address(struct sockaddr_storage *ss, char *buf, size_t len) function inactivity_cb (line 189) | static void inactivity_cb(uev_t *w, void *arg, int events) function ctrl_t (line 197) | ctrl_t *new_session(uev_ctx_t *ctx, int sd, int *rc) function del_session (line 292) | int del_session(ctrl_t *ctrl, int isftp) FILE: src/ftpcmd.c type ftp_cmd_t (line 30) | typedef struct { function is_cont (line 42) | static int is_cont(char *msg) function send_msg (line 56) | static int send_msg(int sd, char *msg) function recv_msg (line 90) | static int recv_msg(int sd, char *msg, size_t len, char **cmd, char **ar... function open_data_connection (line 166) | static int open_data_connection(ctrl_t *ctrl) function close_data_connection (line 231) | static int close_data_connection(ctrl_t *ctrl) function check_user_pass (line 262) | static int check_user_pass(ctrl_t *ctrl) function do_abort (line 273) | static int do_abort(ctrl_t *ctrl) function handle_ABOR (line 310) | static void handle_ABOR(ctrl_t *ctrl, char *arg) function handle_USER (line 319) | static void handle_USER(ctrl_t *ctrl, char *name) function handle_PASS (line 339) | static void handle_PASS(ctrl_t *ctrl, char *pass) function handle_SYST (line 362) | static void handle_SYST(ctrl_t *ctrl, char *arg) function handle_TYPE (line 369) | static void handle_TYPE(ctrl_t *ctrl, char *argument) function handle_PWD (line 395) | static void handle_PWD(ctrl_t *ctrl, char *arg) function handle_CWD (line 403) | static void handle_CWD(ctrl_t *ctrl, char *path) function handle_CDUP (line 434) | static void handle_CDUP(ctrl_t *ctrl, char *path) function handle_PORT (line 439) | static void handle_PORT(ctrl_t *ctrl, char *str) function handle_EPRT (line 474) | static void handle_EPRT(ctrl_t *ctrl, char *str) type tm (line 500) | struct tm type tm (line 511) | struct tm function mlsd_fact (line 529) | void mlsd_fact(char fact, char *buf, size_t len, char *name, char *perms... function mlsd_printf (line 564) | static void mlsd_printf(ctrl_t *ctrl, char *buf, size_t len, char *path,... function list_printf (line 595) | static int list_printf(ctrl_t *ctrl, char *buf, size_t len, char *path, ... function do_MLST (line 624) | static void do_MLST(ctrl_t *ctrl) function do_MLSD (line 656) | static void do_MLSD(ctrl_t *ctrl) function do_LIST (line 679) | static void do_LIST(uev_t *w, void *arg, int events) function list (line 767) | static void list(ctrl_t *ctrl, char *arg, int mode) function handle_LIST (line 834) | static void handle_LIST(ctrl_t *ctrl, char *arg) function handle_NLST (line 839) | static void handle_NLST(ctrl_t *ctrl, char *arg) function handle_MLST (line 844) | static void handle_MLST(ctrl_t *ctrl, char *arg) function handle_MLSD (line 849) | static void handle_MLSD(ctrl_t *ctrl, char *arg) function do_pasv_connection (line 854) | static void do_pasv_connection(uev_t *w, void *arg, int events) function do_PASV (line 917) | static int do_PASV(ctrl_t *ctrl, char *arg, struct sockaddr *data, sockl... function handle_PASV (line 970) | static void handle_PASV(ctrl_t *ctrl, char *arg) function handle_EPSV (line 1001) | static void handle_EPSV(ctrl_t *ctrl, char *arg) function do_RETR (line 1019) | static void do_RETR(uev_t *w, void *arg, int events) function do_PORT (line 1074) | static void do_PORT(ctrl_t *ctrl, pend_t pending) function handle_RETR (line 1118) | static void handle_RETR(ctrl_t *ctrl, char *file) function handle_MDTM (line 1166) | static void handle_MDTM(ctrl_t *ctrl, char *file) function do_STOR (line 1223) | static void do_STOR(uev_t *w, void *arg, int events) function handle_STOR (line 1273) | static void handle_STOR(ctrl_t *ctrl, char *file) function handle_DELE (line 1316) | static void handle_DELE(ctrl_t *ctrl, char *file) function handle_MKD (line 1342) | static void handle_MKD(ctrl_t *ctrl, char *arg) function handle_RMD (line 1364) | static void handle_RMD(ctrl_t *ctrl, char *arg) function handle_REST (line 1369) | static void handle_REST(ctrl_t *ctrl, char *arg) function num_nl (line 1384) | static size_t num_nl(char *file) function handle_SIZE (line 1411) | static void handle_SIZE(ctrl_t *ctrl, char *file) function handle_NOOP (line 1434) | static void handle_NOOP(ctrl_t *ctrl, char *arg) function handle_RNFR (line 1440) | static void handle_RNFR(ctrl_t *ctrl, char *arg) function handle_RNTO (line 1444) | static void handle_RNTO(ctrl_t *ctrl, char *arg) function handle_QUIT (line 1449) | static void handle_QUIT(ctrl_t *ctrl, char *arg) function handle_CLNT (line 1455) | static void handle_CLNT(ctrl_t *ctrl, char *arg) function handle_OPTS (line 1460) | static void handle_OPTS(ctrl_t *ctrl, char *arg) function handle_HELP (line 1491) | static void handle_HELP(ctrl_t *ctrl, char *arg) function handle_FEAT (line 1515) | static void handle_FEAT(ctrl_t *ctrl, char *arg) function handle_UNKNOWN (line 1528) | static void handle_UNKNOWN(ctrl_t *ctrl, char *command) function child_exit (line 1572) | static void child_exit(uev_t *w, void *arg, int events) function read_client_command (line 1578) | static void read_client_command(uev_t *w, void *arg, int events) function ftp_command (line 1616) | static void ftp_command(ctrl_t *ctrl) function ftp_session (line 1635) | int ftp_session(uev_ctx_t *ctx, int sd) FILE: src/log.c function loglvl (line 24) | int loglvl(char *level) function logit (line 34) | void logit(int severity, const char *fmt, ...) FILE: src/tftpcmd.c function do_send (line 45) | static int do_send(ctrl_t *ctrl, size_t len) function send_DATA (line 66) | static int send_DATA(ctrl_t *ctrl, int block) function send_ACK (line 92) | static int send_ACK(ctrl_t *ctrl, int block) function send_OACK (line 104) | static int send_OACK(ctrl_t *ctrl) function send_ERROR (line 125) | static int send_ERROR(ctrl_t *ctrl, int code, char *str) function alloc_buf (line 145) | static int alloc_buf(ctrl_t *ctrl, size_t segsize) function parse_RWRQ (line 169) | static int parse_RWRQ(ctrl_t *ctrl, char *buf, size_t len) function handle_RRQ (line 211) | static int handle_RRQ(ctrl_t *ctrl) function handle_WRQ (line 230) | static int handle_WRQ(ctrl_t *ctrl) function handle_DATA (line 253) | static int handle_DATA(ctrl_t *ctrl, size_t len) function handle_ACK (line 280) | static int handle_ACK(ctrl_t *ctrl, int block) function read_client_command (line 296) | static void read_client_command(uev_t *w, void *arg, int events) function tftp_command (line 374) | static void tftp_command(ctrl_t *ctrl) function tftp_session (line 386) | int tftp_session(uev_ctx_t *ctx, int sd) FILE: src/uftpd.c type passwd (line 32) | struct passwd function version (line 44) | static int version(void) function usage (line 54) | static int usage(int code) function sigchld_cb (line 85) | static void sigchld_cb(uev_t *w, void *arg, int events) function sigquit_cb (line 106) | static void sigquit_cb(uev_t *w, void *arg, int events) function sig_init (line 125) | static void sig_init(uev_ctx_t *ctx) function find_port (line 134) | static int find_port(char *service, char *proto, int fallback) function init (line 150) | static int init(uev_ctx_t *ctx) function ftp_cb (line 178) | static void ftp_cb(uev_t *w, void *arg, int events) function tftp_cb (line 197) | static void tftp_cb(uev_t *w, void *arg, int events) function start_service (line 213) | static int start_service(uev_ctx_t *ctx, uev_t *w, uev_cb_t *cb, int por... function serve_files (line 235) | static int serve_files(uev_ctx_t *ctx) function main (line 271) | int main(int argc, char **argv) FILE: src/uftpd.h type passwd (line 106) | struct passwd type tftp_t (line 108) | typedef struct tftphdr tftp_t; type pend_t (line 110) | typedef enum { type ctrl_t (line 117) | typedef struct { type sockaddr_storage (line 177) | struct sockaddr_storage