From 146ccad3863879e9acc928cc2b2087cb45abe4d9 Mon Sep 17 00:00:00 2001 From: patacongo Date: Thu, 2 Jun 2011 18:36:20 +0000 Subject: FTP client debug changes git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3660 42af7a65-404d-4744-a932-0658087f49c3 --- apps/examples/ftpc/ftpc.h | 32 ++++++++++----------- apps/examples/ftpc/ftpc_cmds.c | 60 +++++++++++++++++++-------------------- apps/examples/ftpc/ftpc_main.c | 54 +++++++++++++++++------------------ apps/include/ftpc.h | 7 +++-- apps/netutils/ftpc/ftpc_connect.c | 18 +++++++++--- apps/netutils/ftpc/ftpc_socket.c | 4 +-- 6 files changed, 93 insertions(+), 82 deletions(-) (limited to 'apps') diff --git a/apps/examples/ftpc/ftpc.h b/apps/examples/ftpc/ftpc.h index 42f1d3fa0..503922375 100644 --- a/apps/examples/ftpc/ftpc.h +++ b/apps/examples/ftpc/ftpc.h @@ -102,24 +102,24 @@ extern void ftpc_freefullpath(char *relpath); /* FTP command handlers */ -extern int cmd_login(SESSION handle, int argc, char **argv); -extern int cmd_quit(SESSION handle, int argc, char **argv); -extern int cmd_chdir(SESSION handle, int argc, char **argv); +extern int cmd_rlogin(SESSION handle, int argc, char **argv); +extern int cmd_rquit(SESSION handle, int argc, char **argv); +extern int cmd_rchdir(SESSION handle, int argc, char **argv); extern int cmd_rpwd(SESSION handle, int argc, char **argv); -extern int cmd_cdup(SESSION handle, int argc, char **argv); -extern int cmd_mkdir(SESSION handle, int argc, char **argv); - -extern int cmd_rmdir(SESSION handle, int argc, char **argv); -extern int cmd_unlink(SESSION handle, int argc, char **argv); -extern int cmd_chmod(SESSION handle, int argc, char **argv); -extern int cmd_rename(SESSION handle, int argc, char **argv); -extern int cmd_size(SESSION handle, int argc, char **argv); -extern int cmd_time(SESSION handle, int argc, char **argv); -extern int cmd_idle(SESSION handle, int argc, char **argv); -extern int cmd_noop(SESSION handle, int argc, char **argv); +extern int cmd_rcdup(SESSION handle, int argc, char **argv); +extern int cmd_rmkdir(SESSION handle, int argc, char **argv); + +extern int cmd_rrmdir(SESSION handle, int argc, char **argv); +extern int cmd_runlink(SESSION handle, int argc, char **argv); +extern int cmd_rchmod(SESSION handle, int argc, char **argv); +extern int cmd_rrename(SESSION handle, int argc, char **argv); +extern int cmd_rsize(SESSION handle, int argc, char **argv); +extern int cmd_rtime(SESSION handle, int argc, char **argv); +extern int cmd_ridle(SESSION handle, int argc, char **argv); +extern int cmd_rnoop(SESSION handle, int argc, char **argv); extern int cmd_rhelp(SESSION handle, int argc, char **argv); extern int cmd_rls(SESSION handle, int argc, char **argv); -extern int cmd_get(SESSION handle, int argc, char **argv); -extern int cmd_put(SESSION handle, int argc, char **argv); +extern int cmd_rget(SESSION handle, int argc, char **argv); +extern int cmd_rput(SESSION handle, int argc, char **argv); #endif /* __APPS_EXAMPLES_FTPC_FTPC_H */ diff --git a/apps/examples/ftpc/ftpc_cmds.c b/apps/examples/ftpc/ftpc_cmds.c index 4787da33e..fd07a68ca 100755 --- a/apps/examples/ftpc/ftpc_cmds.c +++ b/apps/examples/ftpc/ftpc_cmds.c @@ -61,10 +61,10 @@ ****************************************************************************/ /**************************************************************************** - * Name: cmd_login + * Name: cmd_rlogin ****************************************************************************/ -int cmd_login(SESSION handle, int argc, char **argv) +int cmd_rlogin(SESSION handle, int argc, char **argv) { struct ftpc_login_s login = {0, 0, 0, true}; @@ -78,10 +78,10 @@ int cmd_login(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_quit + * Name: cmd_rquit ****************************************************************************/ -int cmd_quit(SESSION handle, int argc, char **argv) +int cmd_rquit(SESSION handle, int argc, char **argv) { int ret = ftpc_quit(handle); if (ret < 0) @@ -94,10 +94,10 @@ int cmd_quit(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_chdir + * Name: cmd_rchdir ****************************************************************************/ -int cmd_chdir(SESSION handle, int argc, char **argv) +int cmd_rchdir(SESSION handle, int argc, char **argv) { return ftpc_chdir(handle, argv[1]); } @@ -119,64 +119,64 @@ int cmd_rpwd(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_cdup + * Name: cmd_rcdup ****************************************************************************/ -int cmd_cdup(SESSION handle, int argc, char **argv) +int cmd_rcdup(SESSION handle, int argc, char **argv) { return ftpc_cdup(handle); } /**************************************************************************** - * Name: cmd_mkdir + * Name: cmd_rmkdir ****************************************************************************/ -int cmd_mkdir(SESSION handle, int argc, char **argv) +int cmd_rmkdir(SESSION handle, int argc, char **argv) { return ftpc_mkdir(handle, argv[1]); } /**************************************************************************** - * Name: cmd_rmdir + * Name: cmd_rrmdir ****************************************************************************/ -int cmd_rmdir(SESSION handle, int argc, char **argv) +int cmd_rrmdir(SESSION handle, int argc, char **argv) { return ftpc_rmdir(handle, argv[1]); } /**************************************************************************** - * Name: cmd_unlink + * Name: cmd_runlink ****************************************************************************/ -int cmd_unlink(SESSION handle, int argc, char **argv) +int cmd_runlink(SESSION handle, int argc, char **argv) { return ftpc_unlink(handle, argv[1]); } /**************************************************************************** - * Name: cmd_chmod + * Name: cmd_rchmod ****************************************************************************/ -int cmd_chmod(SESSION handle, int argc, char **argv) +int cmd_rchmod(SESSION handle, int argc, char **argv) { return ftpc_chmod(handle, argv[1], argv[2]); } /**************************************************************************** - * Name: cmd_rename + * Name: cmd_rrename ****************************************************************************/ -int cmd_rename(SESSION handle, int argc, char **argv) +int cmd_rrename(SESSION handle, int argc, char **argv) { return ftpc_rename(handle, argv[1], argv[2]); } /**************************************************************************** - * Name: cmd_size + * Name: cmd_rsize ****************************************************************************/ -int cmd_size(SESSION handle, int argc, char **argv) +int cmd_rsize(SESSION handle, int argc, char **argv) { uint64_t size = ftpc_filesize(handle, argv[1]); printf("SIZE: %ull\n", size); @@ -184,10 +184,10 @@ int cmd_size(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_time + * Name: cmd_rtime ****************************************************************************/ -int cmd_time(SESSION handle, int argc, char **argv) +int cmd_rtime(SESSION handle, int argc, char **argv) { time_t filetime = ftpc_filetime(handle, argv[1]); printf("TIME: %ul\n", (long)filetime); @@ -195,10 +195,10 @@ int cmd_time(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_idle + * Name: cmd_ridle ****************************************************************************/ -int cmd_idle(SESSION handle, int argc, char **argv) +int cmd_ridle(SESSION handle, int argc, char **argv) { unsigned int idletime = 0; @@ -211,10 +211,10 @@ int cmd_idle(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_noop + * Name: cmd_rnoop ****************************************************************************/ -int cmd_noop(SESSION handle, int argc, char **argv) +int cmd_rnoop(SESSION handle, int argc, char **argv) { return ftpc_noop(handle); } @@ -270,10 +270,10 @@ int cmd_rls(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_get + * Name: cmd_rget ****************************************************************************/ -int cmd_get(SESSION handle, int argc, char **argv) +int cmd_rget(SESSION handle, int argc, char **argv) { FAR const char *lname = argv[1]; @@ -285,10 +285,10 @@ int cmd_get(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_put + * Name: cmd_rput ****************************************************************************/ -int cmd_put(SESSION handle, int argc, char **argv) +int cmd_rput(SESSION handle, int argc, char **argv) { FAR const char *rname = argv[1]; diff --git a/apps/examples/ftpc/ftpc_main.c b/apps/examples/ftpc/ftpc_main.c index e80b80a0c..abca07089 100755 --- a/apps/examples/ftpc/ftpc_main.c +++ b/apps/examples/ftpc/ftpc_main.c @@ -71,30 +71,30 @@ struct cmdmap_s static const char g_delim[] = " \t\n"; -static int cmd_help(SESSION handle, int argc, char **argv); -static int cmd_unrecognized(SESSION handle, int argc, char **argv); +static int cmd_lhelp(SESSION handle, int argc, char **argv); +static int cmd_lunrecognized(SESSION handle, int argc, char **argv); static const struct cmdmap_s g_cmdmap[] = { - { "cd", cmd_chdir, 2, 2, "" }, - { "chmod", cmd_chmod, 3, 3, " " }, - { "get", cmd_unlink, 2, 3, " []" }, - { "help", cmd_help, 1, 2, "" }, - { "idle", cmd_idle, 1, 2, "[]" }, - { "login", cmd_login, 2, 3, " []" }, - { "ls", cmd_login, 1, 2, "[]" }, - { "quit", cmd_login, 1, 1, "" }, - { "mkdir", cmd_mkdir, 2, 2, "" }, - { "noop", cmd_noop, 1, 1, "" }, - { "put", cmd_unlink, 2, 3, " []" }, - { "pwd", cmd_rpwd, 1, 1, "" }, - { "rename", cmd_rename, 3, 3, " " }, - { "rhelp", cmd_rhelp, 1, 2, "[]" }, - { "rm", cmd_unlink, 2, 2, "" }, - { "rmdir", cmd_rmdir, 2, 2, "" }, - { "size", cmd_size, 2, 2, "" }, - { "time", cmd_time, 2, 2, "" }, - { "up", cmd_cdup, 1, 1, "" }, + { "cd", cmd_rchdir, 2, 2, "" }, + { "chmod", cmd_rchmod, 3, 3, " " }, + { "get", cmd_rget, 2, 3, " []" }, + { "help", cmd_lhelp, 1, 2, "" }, + { "idle", cmd_ridle, 1, 2, "[]" }, + { "login", cmd_rlogin, 2, 3, " []" }, + { "ls", cmd_rls, 1, 2, "[]" }, + { "quit", cmd_rquit, 1, 1, "" }, + { "mkdir", cmd_rmkdir, 2, 2, "" }, + { "noop", cmd_rnoop, 1, 1, "" }, + { "put", cmd_rput, 2, 3, " []" }, + { "pwd", cmd_rpwd, 1, 1, "" }, + { "rename", cmd_rrename, 3, 3, " " }, + { "rhelp", cmd_rhelp, 1, 2, "[]" }, + { "rm", cmd_runlink, 2, 2, "" }, + { "rmdir", cmd_rrmdir, 2, 2, "" }, + { "size", cmd_rsize, 2, 2, "" }, + { "time", cmd_rtime, 2, 2, "" }, + { "up", cmd_rcdup, 1, 1, "" }, }; static char g_line[CONFIG_FTPC_LINELEN]; @@ -104,10 +104,10 @@ static char g_line[CONFIG_FTPC_LINELEN]; ****************************************************************************/ /**************************************************************************** - * Name: cmd_help + * Name: cmd_lhelp ****************************************************************************/ -static int cmd_help(SESSION handle, int argc, char **argv) +static int cmd_lhelp(SESSION handle, int argc, char **argv) { const struct cmdmap_s *ptr; @@ -127,10 +127,10 @@ static int cmd_help(SESSION handle, int argc, char **argv) } /**************************************************************************** - * Name: cmd_unrecognized + * Name: cmd_lunrecognized ****************************************************************************/ -static int cmd_unrecognized(SESSION handle, int argc, char **argv) +static int cmd_lunrecognized(SESSION handle, int argc, char **argv) { printf("Command %s unrecognized\n", argv[0]); return ERROR; @@ -226,7 +226,7 @@ static int ftpc_execute(SESSION handle, int argc, char *argv[]) { const struct cmdmap_s *cmdmap; const char *cmd; - cmd_t handler = cmd_unrecognized; + cmd_t handler = cmd_lunrecognized; int ret; /* The form of argv is: @@ -407,4 +407,4 @@ int ftpc_main(int argc, char **argv, char **envp) } return 0; -} \ No newline at end of file +} diff --git a/apps/include/ftpc.h b/apps/include/ftpc.h index 0676a7040..79632ba1d 100644 --- a/apps/include/ftpc.h +++ b/apps/include/ftpc.h @@ -116,9 +116,10 @@ typedef FAR void *SESSION; * * addr - The IPv4 address of the FTP server (or the proxy) for the FTP * server. - * port - The port number on the FTP server to connect to. This is usually - * port 21 for FTP. You may set this value to zero to let FTPC - * select the default port number for you (CONFIG_FTP_DEFPORT). + * port - The port number on the FTP server to connect to (in host byte + * order). This is usually port 21 for FTP. You may set this + * value to zero to let FTPC select the default port number for + * you (it will use CONFIG_FTP_DEFPORT). */ struct ftpc_connect_s diff --git a/apps/netutils/ftpc/ftpc_connect.c b/apps/netutils/ftpc/ftpc_connect.c index ff19af324..ccd68cb03 100644 --- a/apps/netutils/ftpc/ftpc_connect.c +++ b/apps/netutils/ftpc/ftpc_connect.c @@ -98,9 +98,19 @@ SESSION ftpc_connect(FAR struct ftpc_connect_s *server) /* Initialize the session structure */ session->addr.s_addr = server->addr.s_addr; - session->port = server->port ? server->port : CONFIG_FTP_DEFPORT; session->pid = getpid(); + /* Use the default port if the user specified port number zero */ + + if (!server->port) + { + session->port = HTONS(CONFIG_FTP_DEFPORT); + } + else + { + session->port = htons(server->port); + } + /* Create up a timer to prevent hangs */ session->wdog = wd_create(); @@ -165,7 +175,7 @@ int ftpc_reconnect(FAR struct ftpc_session_s *session) #ifdef CONFIG_DEBUG tmp = inet_ntoa(session->addr); - ndbg("Connecting to server address %s:%d\n", tmp, ntohl(session->port)); + ndbg("Connecting to server address %s:%d\n", tmp, ntohs(session->port)); #endif addr.sin_family = AF_INET; @@ -211,9 +221,9 @@ int ftpc_reconnect(FAR struct ftpc_session_s *session) #ifdef CONFIG_DEBUG ndbg("Connected\n"); tmp = inet_ntoa(session->cmd.raddr.sin_addr); - ndbg(" Remote address: %s:%d\n", tmp, ntohl(session->cmd.raddr.sin_port)); + ndbg(" Remote address: %s:%d\n", tmp, ntohs(session->cmd.raddr.sin_port)); tmp = inet_ntoa(session->cmd.laddr.sin_addr); - ndbg(" Local address: %s:d\n", tmp, ntohl(session->cmd.laddr.sin_port)); + ndbg(" Local address: %s:d\n", tmp, ntohs(session->cmd.laddr.sin_port)); #endif return OK; diff --git a/apps/netutils/ftpc/ftpc_socket.c b/apps/netutils/ftpc/ftpc_socket.c index 500f20995..a77481403 100644 --- a/apps/netutils/ftpc/ftpc_socket.c +++ b/apps/netutils/ftpc/ftpc_socket.c @@ -377,10 +377,10 @@ int ftpc_sockprintf(struct ftpc_socket_s *sock, const char *str, ...) int ftpc_sockgetsockname(FAR struct ftpc_socket_s *sock, FAR struct sockaddr_in *addr) { - unsigned int len = sizeof(struct sockaddr_in); + socklen_t len = sizeof(struct sockaddr_in); int ret; - ret = getsockname(sock->sd, (struct sockaddr *)addr, &len); + ret = getsockname(sock->sd, (FAR struct sockaddr *)addr, &len); if (ret < 0) { ndbg("getsockname failed: %d\n", errno); -- cgit v1.2.3