diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2011-06-02 18:36:20 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2011-06-02 18:36:20 +0000 |
commit | 146ccad3863879e9acc928cc2b2087cb45abe4d9 (patch) | |
tree | 78b859634e20334c35ca4278c67fd81900a4f6ad | |
parent | 971830b005e76311a0950d26f6862997c892e76a (diff) | |
download | nuttx-146ccad3863879e9acc928cc2b2087cb45abe4d9.tar.gz nuttx-146ccad3863879e9acc928cc2b2087cb45abe4d9.tar.bz2 nuttx-146ccad3863879e9acc928cc2b2087cb45abe4d9.zip |
FTP client debug changes
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3660 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r-- | apps/examples/ftpc/ftpc.h | 32 | ||||
-rwxr-xr-x | apps/examples/ftpc/ftpc_cmds.c | 60 | ||||
-rwxr-xr-x | apps/examples/ftpc/ftpc_main.c | 54 | ||||
-rw-r--r-- | apps/include/ftpc.h | 7 | ||||
-rw-r--r-- | apps/netutils/ftpc/ftpc_connect.c | 18 | ||||
-rw-r--r-- | apps/netutils/ftpc/ftpc_socket.c | 4 | ||||
-rw-r--r-- | nuttx/ChangeLog | 3 | ||||
-rwxr-xr-x | nuttx/configs/olimex-lpc1766stk/ftpc/defconfig | 103 | ||||
-rwxr-xr-x | nuttx/configs/olimex-lpc1766stk/nsh/defconfig | 20 | ||||
-rw-r--r-- | nuttx/net/getsockname.c | 4 |
10 files changed, 193 insertions, 112 deletions
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, "<directory>" },
- { "chmod", cmd_chmod, 3, 3, "<permissions> <path>" },
- { "get", cmd_unlink, 2, 3, "<rname> [<lname>]" },
- { "help", cmd_help, 1, 2, "" },
- { "idle", cmd_idle, 1, 2, "[<idletime>]" },
- { "login", cmd_login, 2, 3, "<uname> [<password>]" },
- { "ls", cmd_login, 1, 2, "[<dirpath>]" },
- { "quit", cmd_login, 1, 1, "" },
- { "mkdir", cmd_mkdir, 2, 2, "<directory>" },
- { "noop", cmd_noop, 1, 1, "" },
- { "put", cmd_unlink, 2, 3, "<lname> [<rname>]" },
- { "pwd", cmd_rpwd, 1, 1, "" },
- { "rename", cmd_rename, 3, 3, "<oldname> <newname>" },
- { "rhelp", cmd_rhelp, 1, 2, "[<command>]" },
- { "rm", cmd_unlink, 2, 2, "" },
- { "rmdir", cmd_rmdir, 2, 2, "<directory>" },
- { "size", cmd_size, 2, 2, "<filepath>" },
- { "time", cmd_time, 2, 2, "<filepath>" },
- { "up", cmd_cdup, 1, 1, "" },
+ { "cd", cmd_rchdir, 2, 2, "<directory>" },
+ { "chmod", cmd_rchmod, 3, 3, "<permissions> <path>" },
+ { "get", cmd_rget, 2, 3, "<rname> [<lname>]" },
+ { "help", cmd_lhelp, 1, 2, "" },
+ { "idle", cmd_ridle, 1, 2, "[<idletime>]" },
+ { "login", cmd_rlogin, 2, 3, "<uname> [<password>]" },
+ { "ls", cmd_rls, 1, 2, "[<dirpath>]" },
+ { "quit", cmd_rquit, 1, 1, "" },
+ { "mkdir", cmd_rmkdir, 2, 2, "<directory>" },
+ { "noop", cmd_rnoop, 1, 1, "" },
+ { "put", cmd_rput, 2, 3, "<lname> [<rname>]" },
+ { "pwd", cmd_rpwd, 1, 1, "" },
+ { "rename", cmd_rrename, 3, 3, "<oldname> <newname>" },
+ { "rhelp", cmd_rhelp, 1, 2, "[<command>]" },
+ { "rm", cmd_runlink, 2, 2, "" },
+ { "rmdir", cmd_rrmdir, 2, 2, "<directory>" },
+ { "size", cmd_rsize, 2, 2, "<filepath>" },
+ { "time", cmd_rtime, 2, 2, "<filepath>" },
+ { "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); diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index 122ab4148..6bfbedeef 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -1794,3 +1794,6 @@ * lib/stdio/lib_asprintf.c: Add asprintf() * configs/olimex-lpc1766stk/ftpc: Add a configuration to support testing of the FTP client shell. + * fd/fs_fdopen.c and net/net_checksd.c: Add support so that fdopen may + be used with socket descriptors. + diff --git a/nuttx/configs/olimex-lpc1766stk/ftpc/defconfig b/nuttx/configs/olimex-lpc1766stk/ftpc/defconfig index 8e2a75668..abbd6a63e 100755 --- a/nuttx/configs/olimex-lpc1766stk/ftpc/defconfig +++ b/nuttx/configs/olimex-lpc1766stk/ftpc/defconfig @@ -115,7 +115,7 @@ CONFIG_LPC17_CAN1=n CONFIG_LPC17_CAN2=n CONFIG_LPC17_SPI=n CONFIG_LPC17_SSP0=n -CONFIG_LPC17_SSP1=n +CONFIG_LPC17_SSP1=y CONFIG_LPC17_I2C0=n CONFIG_LPC17_I2C1=n CONFIG_LPC17_I2S=n @@ -195,10 +195,10 @@ CONFIG_UART3_2STOP=0 # CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is # the higest priority. # CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented). -# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs -# CONFIG_DEBUG. # CONFIG_NET_DUMPPACKET - Dump all received and transmitted packets. # Also needs CONFIG_DEBUG. +# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs +# CONFIG_DEBUG. # CONFIG_NET_HASH - Enable receipt of near-perfect match frames. # CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames. # Automatically set if CONFIG_NET_IGMP is selected. @@ -207,6 +207,9 @@ CONFIG_PHY_KS8721=y CONFIG_PHY_AUTONEG=y CONFIG_PHY_SPEED100=n CONFIG_PHY_FDUPLEX=y +CONFIG_NET_EMACRAM_SIZE=8192 +CONFIG_NET_NTXDESC=7 +CONFIG_NET_NRXDESC=7 CONFIG_NET_REGDEBUG=n # @@ -330,9 +333,9 @@ CONFIG_ARCH_LOWPUTC=y CONFIG_RR_INTERVAL=200 CONFIG_SCHED_INSTRUMENTATION=n CONFIG_TASK_NAME_SIZE=0 -CONFIG_START_YEAR=2010 -CONFIG_START_MONTH=11 -CONFIG_START_DAY=23 +CONFIG_START_YEAR=2011 +CONFIG_START_MONTH=6 +CONFIG_START_DAY=2 CONFIG_GREGORIAN_TIME=n CONFIG_JULIAN_TIME=n CONFIG_DEV_CONSOLE=y @@ -343,7 +346,7 @@ CONFIG_SEM_PREALLOCHOLDERS=0 CONFIG_SEM_NNESTPRIO=0 CONFIG_FDCLONE_DISABLE=n CONFIG_FDCLONE_STDIO=n -CONFIG_SDCLONE_DISABLE=n +CONFIG_SDCLONE_DISABLE=y CONFIG_SCHED_WORKQUEUE=n CONFIG_SCHED_WORKPRIORITY=50 CONFIG_SCHED_WORKPERIOD=(50*1000) @@ -351,7 +354,8 @@ CONFIG_SCHED_WORKSTACKSIZE=1024 CONFIG_SIG_SIGWORK=4 # -# Settings for nxflat +# Settings for NXFLAT +# # CONFIG_NXFLAT. Enable support for the NXFLAT binary format. # This format will support execution of NuttX binaries located # in a ROMFS filesystem (see examples/nxflat). @@ -382,10 +386,10 @@ CONFIG_SYMTAB_ORDEREDBYNAME=y # up waiting tasks. # CONFIG_DISABLE_CLOCK=n -CONFIG_DISABLE_POSIX_TIMERS=y -CONFIG_DISABLE_PTHREAD=y +CONFIG_DISABLE_POSIX_TIMERS=n +CONFIG_DISABLE_PTHREAD=n CONFIG_DISABLE_SIGNALS=n -CONFIG_DISABLE_MQUEUE=y +CONFIG_DISABLE_MQUEUE=n CONFIG_DISABLE_MOUNTPOINT=n CONFIG_DISABLE_ENVIRON=n CONFIG_DISABLE_POLL=n @@ -452,14 +456,14 @@ CONFIG_ARCH_BZERO=n # CONFIG_MAX_TASKS=16 CONFIG_MAX_TASK_ARGS=4 -CONFIG_NPTHREAD_KEYS=0 +CONFIG_NPTHREAD_KEYS=4 CONFIG_NFILE_DESCRIPTORS=8 CONFIG_NFILE_STREAMS=8 CONFIG_NAME_MAX=32 -CONFIG_STDIO_BUFFER_SIZE=64 -CONFIG_NUNGET_CHARS=0 -CONFIG_PREALLOC_MQ_MSGS=0 -CONFIG_MQ_MAXMSGSIZE=0 +CONFIG_STDIO_BUFFER_SIZE=256 +CONFIG_NUNGET_CHARS=2 +CONFIG_PREALLOC_MQ_MSGS=4 +CONFIG_MQ_MAXMSGSIZE=32 CONFIG_MAX_WDOGPARMS=2 CONFIG_PREALLOC_WDOGS=8 CONFIG_PREALLOC_TIMERS=8 @@ -471,8 +475,8 @@ CONFIG_PREALLOC_TIMERS=8 # CONFIG_FAT_SECTORSIZE - Max supported sector size # CONFIG_FS_ROMFS - Enable ROMFS filesystem support # -CONFIG_FS_FAT=n -CONFIG_FS_ROMFS=y +CONFIG_FS_FAT=y +CONFIG_FS_ROMFS=n # # SPI-based MMC/SD driver @@ -543,17 +547,17 @@ CONFIG_NET=y CONFIG_NET_IPv6=n CONFIG_NSOCKET_DESCRIPTORS=16 CONFIG_NET_SOCKOPTS=y -CONFIG_NET_BUFSIZE=420 +CONFIG_NET_BUFSIZE=562 CONFIG_NET_TCP=y CONFIG_NET_TCP_CONNS=16 -CONFIG_NET_NTCP_READAHEAD_BUFFERS=8 +CONFIG_NET_NTCP_READAHEAD_BUFFERS=16 CONFIG_NET_TCPBACKLOG=y CONFIG_NET_MAX_LISTENPORTS=8 CONFIG_NET_UDP=n CONFIG_NET_UDP_CHECKSUMS=y #CONFIG_NET_UDP_CONNS=10 CONFIG_NET_ICMP=y -CONFIG_NET_ICMP_PING=n +CONFIG_NET_ICMP_PING=y #CONFIG_NET_PINGADDRCONF=0 CONFIG_NET_STATISTICS=n #CONFIG_NET_RECEIVE_WINDOW= @@ -598,7 +602,30 @@ CONFIG_USBDEV_TRACE=n CONFIG_USBDEV_TRACE_NRECORDS=128 # -# LPC17xx USB Configuration +# USB Host Configuration +# +# CONFIG_USBHOST +# Enables USB host support +# CONFIG_USBHOST_NPREALLOC +# Number of pre-allocated class instances +# CONFIG_USBHOST_BULK_DISABLE +# On some architectures, selecting this setting will reduce driver size +# by disabling bulk endpoint support +# CONFIG_USBHOST_INT_DISABLE +# On some architectures, selecting this setting will reduce driver size +# by disabling interrupt endpoint support +# CONFIG_USBHOST_ISOC_DISABLE +# On some architectures, selecting this setting will reduce driver size +# by disabling isochronous endpoint support +# +CONFIG_USBHOST=n +CONFIG_USBHOST_NPREALLOC=0 +CONFIG_USBHOST_BULK_DISABLE=n +CONFIG_USBHOST_INT_DISABLE=y +CONFIG_USBHOST_ISOC_DISABLE=y + +# +# LPC17xx USB Device Configuration # # CONFIG_LPC17_USBDEV_FRAME_INTERRUPT # Handle USB Start-Of-Frame events. @@ -620,6 +647,30 @@ CONFIG_LPC17_USBDEV_NDMADESCRIPTORS=0 CONFIG_LPC17_USBDEV_DMAINTMASK=0 # +# LPC17xx USB Host Configuration +# +# OHCI RAM layout: +# CONFIG_USBHOST_OHCIRAM_SIZE +# Total size of OHCI RAM (in AHB SRAM Bank 1) +# CONFIG_USBHOST_NEDS +# Number of endpoint descriptors +# CONFIG_USBHOST_NTDS +# Number of transfer descriptors +# CONFIG_USBHOST_TDBUFFERS +# Number of transfer descriptor buffers +# CONFIG_USBHOST_TDBUFSIZE +# Size of one transfer descriptor buffer +# CONFIG_USBHOST_IOBUFSIZE +# Size of one end-user I/O buffer +# +CONFIG_USBHOST_OHCIRAM_SIZE=1536 +CONFIG_USBHOST_NEDS=2 +CONFIG_USBHOST_NTDS=3 +CONFIG_USBHOST_TDBUFFERS=3 +CONFIG_USBHOST_TDBUFSIZE=128 +CONFIG_USBHOST_IOBUFSIZE=512 + +# # USB Serial Device Configuration # # CONFIG_USBSER @@ -866,10 +917,10 @@ CONFIG_NSH_DISABLEBG=n CONFIG_NSH_ROMFSETC=n CONFIG_NSH_CONSOLE=y CONFIG_NSH_TELNET=n -CONFIG_NSH_ARCHINIT=n +CONFIG_NSH_ARCHINIT=y CONFIG_NSH_IOBUFFER_SIZE=512 CONFIG_NSH_DHCPC=n -CONFIG_NSH_NOMAC=n +CONFIG_NSH_NOMAC=y CONFIG_NSH_IPADDR=(10<<24|0<<16|0<<8|2) CONFIG_NSH_DRIPADDR=(10<<24|0<<16|0<<8|1) CONFIG_NSH_NETMASK=(255<<24|255<<16|255<<8|0) @@ -890,7 +941,7 @@ CONFIG_NSH_DISABLE_GET=y # # Architecture-specific NSH options # -CONFIG_NSH_MMCSDSPIPORTNO=0 +CONFIG_NSH_MMCSDSPIPORTNO=1 CONFIG_NSH_MMCSDSLOTNO=0 CONFIG_NSH_MMCSDMINOR=0 @@ -945,7 +996,7 @@ CONFIG_BOOT_COPYTORAM=n CONFIG_CUSTOM_STACK=n CONFIG_STACK_POINTER= CONFIG_IDLETHREAD_STACKSIZE=1024 -CONFIG_USERMAIN_STACKSIZE=8192 +CONFIG_USERMAIN_STACKSIZE=2048 CONFIG_PTHREAD_STACK_MIN=256 CONFIG_PTHREAD_STACK_DEFAULT=2048 CONFIG_HEAP_BASE= diff --git a/nuttx/configs/olimex-lpc1766stk/nsh/defconfig b/nuttx/configs/olimex-lpc1766stk/nsh/defconfig index c177f11ef..89175c4fb 100755 --- a/nuttx/configs/olimex-lpc1766stk/nsh/defconfig +++ b/nuttx/configs/olimex-lpc1766stk/nsh/defconfig @@ -64,7 +64,7 @@ # CONFIG_ARCH_CALIBRATION - Enables some build in instrumentation that # cause a 100 second delay during boot-up. This 100 second delay # serves no purpose other than it allows you to calibrate -# CONFIG_BOARD_LOOPSPERMSEC. You simply use a stop watch to measure +# CONFIG_BOARD_LOOPSPERMSEC. You simply use a stop watch to measure # the 100 second delay then adjust CONFIG_BOARD_LOOPSPERMSEC until # the delay actually is 100 seconds. # CONFIG_ARCH_DMA - Support DMA initialization @@ -350,7 +350,6 @@ CONFIG_SEM_NNESTPRIO=0 CONFIG_FDCLONE_DISABLE=n CONFIG_FDCLONE_STDIO=n CONFIG_SDCLONE_DISABLE=y -CONFIG_NXFLAT=n CONFIG_SCHED_WORKQUEUE=n CONFIG_SCHED_WORKPRIORITY=50 CONFIG_SCHED_WORKPERIOD=(50*1000) @@ -358,6 +357,23 @@ CONFIG_SCHED_WORKSTACKSIZE=1024 CONFIG_SIG_SIGWORK=4 # +# Settings for NXFLAT +# +# CONFIG_NXFLAT. Enable support for the NXFLAT binary format. +# This format will support execution of NuttX binaries located +# in a ROMFS filesystem (see examples/nxflat). +# CONFIG_NXFLAT_DUMPBUFFER. Dump a most buffers that NXFFLAT deals +# with. CONFIG_DEBUG, CONFIG_DEBUG_VERBOSE, and +# CONFIG_DEBUG_BINFMT have to be defined or +# CONFIG_NXFLAT_DUMPBUFFER does nothing. +# CONFIG_SYMTAB_ORDEREDBYNAME. Select if the system symbol table +# is ordered by symbol name +# +CONFIG_NXFLAT=y +CONFIG_NXFLAT_DUMPBUFFER=n +CONFIG_SYMTAB_ORDEREDBYNAME=y + +# # The following can be used to disable categories of # APIs supported by the OS. If the compiler supports # weak functions, then it should not be necessary to diff --git a/nuttx/net/getsockname.c b/nuttx/net/getsockname.c index a77a31b71..3af89b762 100644 --- a/nuttx/net/getsockname.c +++ b/nuttx/net/getsockname.c @@ -131,9 +131,9 @@ int getsockname(int sockfd, FAR struct sockaddr *addr, FAR socklen_t *addrlen) /* Check if enough space has been provided for the full address */ #ifdef CONFIG_NET_IPv6 - if (addr->sa_family != AF_INET6 || *addrlen < sizeof(struct sockaddr_in6)) + if (*addrlen < sizeof(struct sockaddr_in6)) #else - if (addr->sa_family != AF_INET || *addrlen < sizeof(struct sockaddr_in)) + if (*addrlen < sizeof(struct sockaddr_in)) #endif { /* This function is supposed to return the partial address if |