Browse Source

FTP server is marginally functional

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4372 7fd9a85b-ad96-42d3-883c-3090e2eb8679
sbg
patacongo 13 years ago
parent
commit
76f187ba85
  1. 8
      apps/examples/ftpd/ftpd_main.c
  2. 9
      apps/netutils/ftpd/ftpd.c
  3. 2
      nuttx/configs/stm3240g-eval/nsh/defconfig

8
apps/examples/ftpd/ftpd_main.c

@ -130,11 +130,11 @@ static void ftpd_accounts(FTPD_SESSION handle)
{ {
account = &g_ftpdaccounts[i]; account = &g_ftpdaccounts[i];
printf("%d. %s account: USER=%s PASSWORD=%s HOME=%s\n", printf("%d. %s account: USER=%s PASSWORD=%s HOME=%s\n", i+1,
(account->flags & FTPD_ACCOUNTFLAG_SYSTEM) != 0 ? "Root" : "User", (account->flags & FTPD_ACCOUNTFLAG_SYSTEM) != 0 ? "Root" : "User",
(account->user) ? "(none)" : account->user, (!account->user) ? "(none)" : account->user,
(account->password) ? "(none)" : account->password, (!account->password) ? "(none)" : account->password,
(account->home) ? "(none)" : account->home); (!account->home) ? "(none)" : account->home);
ftpd_adduser(handle, account->flags, account->user, ftpd_adduser(handle, account->flags, account->user,
account->password, account->home); account->password, account->home);

9
apps/netutils/ftpd/ftpd.c

@ -700,7 +700,7 @@ static FAR char *ftpd_strtok(bool skipspace, FAR const char *delimiters,
while (*sptr != '\0') while (*sptr != '\0')
{ {
dptr = delimiters; dptr = delimiters;
while (*sptr |= *dptr && *dptr != '\0') while (*sptr != *dptr && *dptr != '\0')
{ {
dptr++; dptr++;
} }
@ -4256,6 +4256,7 @@ int ftpd_session(FTPD_SESSION handle, int timeout)
session = (FAR struct ftpd_session_s *)zalloc(sizeof(struct ftpd_session_s)); session = (FAR struct ftpd_session_s *)zalloc(sizeof(struct ftpd_session_s));
if (!session) if (!session)
{ {
ndbg("Failed to allocate session\n");
ret = -ENOMEM; ret = -ENOMEM;
goto errout; goto errout;
} }
@ -4291,6 +4292,7 @@ int ftpd_session(FTPD_SESSION handle, int timeout)
session->cmd.buffer = (FAR char *)malloc(session->cmd.buflen); session->cmd.buffer = (FAR char *)malloc(session->cmd.buflen);
if (!session->cmd.buffer) if (!session->cmd.buffer)
{ {
ndbg("Failed to allocate command buffer\n");
ret = -ENOMEM; ret = -ENOMEM;
goto errout_with_session; goto errout_with_session;
} }
@ -4300,6 +4302,7 @@ int ftpd_session(FTPD_SESSION handle, int timeout)
session->data.buffer = (FAR char *)malloc(session->data.buflen); session->data.buffer = (FAR char *)malloc(session->data.buflen);
if (!session->data.buffer) if (!session->data.buffer)
{ {
ndbg("Failed to allocate data buffer\n");
ret = -ENOMEM; ret = -ENOMEM;
goto errout_with_session; goto errout_with_session;
} }
@ -4310,7 +4313,8 @@ int ftpd_session(FTPD_SESSION handle, int timeout)
&session->cmd.addrlen, timeout); &session->cmd.addrlen, timeout);
if (session->cmd.sd < 0) if (session->cmd.sd < 0)
{ {
ret = -errno; ndbg("ftpd_accept() failed: %d\n", session->cmd.sd);
ret = session->cmd.sd;
goto errout_with_session; goto errout_with_session;
} }
@ -4320,6 +4324,7 @@ int ftpd_session(FTPD_SESSION handle, int timeout)
CONFIG_FTPD_WORKERSTACKSIZE); CONFIG_FTPD_WORKERSTACKSIZE);
if (ret < 0) if (ret < 0)
{ {
ndbg("ftpd_startworker() failed: %d\n", ret);
goto errout_with_session; goto errout_with_session;
} }

2
nuttx/configs/stm3240g-eval/nsh/defconfig

@ -1,7 +1,7 @@
############################################################################ ############################################################################
# configs/stm3240g-eval/nsh/defconfig # configs/stm3240g-eval/nsh/defconfig
# #
# Copyright (C) 2011 Gregory Nutt. All rights reserved. # Copyright (C) 2011-2012 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org> # Author: Gregory Nutt <gnutt@nuttx.org>
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without

Loading…
Cancel
Save