summaryrefslogtreecommitdiff
path: root/cpukit/ftpd (follow)
AgeCommit message (Collapse)Author
2020-04-16Canonicalize config.h includeSebastian Huber
Use the following variant which was already used by most source files: #ifdef HAVE_CONFIG_H #include "config.h" #endif
2020-03-31ftpd: Fix return typesSebastian Huber
2018-11-20Misc: Minor English fixes (GCI 2018)kuaLeYi
2018-10-30ftpd: Avoid TOCTOU problemSebastian Huber
Assume that opendir() returns only non-NULL if we actually open a directory. Update #3530.
2018-10-30ftpd: Deal with too long command linesSebastian Huber
Update #3530.
2018-10-30ftpd: Make send_dirline() more robustSebastian Huber
Account for large file names. Update #3530.
2018-10-09build: Merge ftpd/Makefile.amSebastian Huber
2018-10-09ftpd: Restructure chroot() handling.Sebastian Huber
Remove superfluous setting of errno = 0. Update #3530.
2018-10-08ftpd: Remove superfluous temporary bufferSebastian Huber
Update #3530.
2018-10-08ftpd: Check return status of getsockname()Sebastian Huber
Update #3530.
2018-10-05ftpd: Fix insecure chroot() handlingSebastian Huber
Ensure that the rtems_libio_set_private_env() was successful before the chroot(). Update #3530.
2018-10-05ftpd: Avoid resource leakSebastian Huber
Update #3530.
2018-10-05ftpd: Avoid use of uninitialized memorySebastian Huber
Update #3530.
2018-10-05ftpd: Avoid malloc() and sscanf()Sebastian Huber
Move the user name to the session information. Update #3530.
2018-10-05ftpd: Remove FTPD_SessionInfo_t::pass memberSebastian Huber
There is no need to keep the password throughout the session. Update #3530.
2018-10-05ftpd: Avoid NULL pointer checks before free()Sebastian Huber
They are superfluous and just bloat the code. Update #3530.
2018-10-02Use rtems_task_exit()Sebastian Huber
Update #3530. Update #3533.
2018-05-08ftpd: Fix infinite recursion in yield()Sebastian Huber
Update #3419.
2018-05-02ftpd: Always build FTP daemonSebastian Huber
Add support for libbsd initialization. Update #3419.
2018-05-02ftpd: Use floating-point tasks due to syslog()Sebastian Huber
Update #3419.
2018-05-02ftpd: Fairplay with libbsdSebastian Huber
Update #3419.
2018-02-07ftpd: Use self-contained synchronization objectsSebastian Huber
Update #2843.
2018-01-25Remove make preinstallChris Johns
A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
2017-12-13ftpd: Include <rtems/ftpd.h>Sebastian Huber
Prepare for header file move to common include directory. Update #3254.
2017-07-18ftpd: Use floating point tasksSebastian Huber
Update #3076.
2016-03-18ftpd: Resolve function name conflictSebastian Huber
Visible with Newlib be657151f12f4d198e45395987f0a626ee1bbb91.
2015-10-26basdefs.h: Add and use RTEMS_UNUSEDSebastian Huber
2014-08-29Regenerate all preinstall.am files.Chris Johns
With this patch the preinstall.am files are in a set order and not dependent on now perl implements a hash.
2014-08-28Regenerate all preinstall.am files.Joel Sherrill
Apparently, at some point automake output changed and these were not updated.
2013-02-13ftpd: Go back to the root directorySebastian Huber
2013-01-30ftpd: Check the root and current directory changeSebastian Huber
Only continue the session if the root and current directory change was successful, otherwise the FTP server may access restricted file system areas.
2012-11-21ftpd: Add SIZE commandSebastian Huber
2012-05-29ftpd: Set current directory after session closeSebastian Huber
The chroot() is an implicit chdir("/"). Set the current directory to "/" after session close. This helps to avoid references to mounted file systems in dynamic media.
2012-05-11Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill
Script does what is expected and tries to do it as smartly as possible. + remove occurrences of two blank comment lines next to each other after Id string line removed. + remove entire comment blocks which only exited to contain CVS Ids + If the processing left a blank line at the top of a file, it was removed.
2012-05-07Revert: Remove CVS IdsJoel Sherrill
See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html for details.
2012-05-04Remove CVS-Ids.Ralf Corsépius
2012-02-02PR 1998/networking - Move ftpd root initializationJoel Sherrill
From: Xiangfu <xiangfu@sharism.cc> Signed-off-by: Xiangfu <xiangfu@sharism.cc>
2012-02-01Remove all .cvsignore files.Joel Sherrill
2011-12-082011-12-08 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* ftpd/ftpd.c: Make split_command static.
2011-10-262011-10-26 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber
* ftpd/ftpd.h, ftpd/ftpd.c: Moved buffer and stack size constants into header file.
2011-10-262011-10-26 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber
* ftpd/ftpd.c: Increased data buffer size to 4096 bytes. Use RTEMS_MINIMUM_STACK_SIZE plus the data buffer size for worker thread stack size.
2011-07-242011-07-24 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* ftpd/ftpd.c, libcsupport/src/geteuid.c, libcsupport/src/getgroups.c, libcsupport/src/getpgrp.c, libcsupport/src/getpid.c, libcsupport/src/getppid.c, libcsupport/src/setpgid.c, libcsupport/src/setsid.c, libcsupport/src/utsname.c, libmisc/stackchk/check.c, posix/include/rtems/posix/mqueue.h, posix/inline/rtems/posix/cond.inl, posix/inline/rtems/posix/mqueue.inl, posix/inline/rtems/posix/mutex.inl, posix/inline/rtems/posix/pthread.inl, posix/inline/rtems/posix/semaphore.inl, posix/inline/rtems/posix/timer.inl, posix/src/alarm.c, posix/src/barrierattrdestroy.c, posix/src/barrierattrgetpshared.c, posix/src/barrierattrinit.c, posix/src/barrierattrsetpshared.c, posix/src/cleanuppop.c, posix/src/cleanuppush.c, posix/src/clockgetcpuclockid.c, posix/src/clockgetenableattr.c, posix/src/clockgetres.c, posix/src/clockgettime.c, posix/src/clocksetenableattr.c, posix/src/clocksettime.c, posix/src/cond.c, posix/src/condattrdestroy.c, posix/src/condattrgetpshared.c, posix/src/condattrinit.c, posix/src/condattrsetpshared.c, posix/src/condbroadcast.c, posix/src/conddefaultattributes.c, posix/src/conddestroy.c, posix/src/condinit.c, posix/src/condsignal.c, posix/src/condsignalsupp.c, posix/src/condtimedwait.c, posix/src/condwait.c, posix/src/condwaitsupp.c, posix/src/keygetspecific.c, posix/src/keyrundestructors.c, posix/src/keysetspecific.c, posix/src/mprotect.c, posix/src/mqueue.c, posix/src/mqueuecreatesupp.c, posix/src/mqueuedeletesupp.c, posix/src/mqueuegetattr.c, posix/src/mqueuenotify.c, posix/src/mqueuereceive.c, posix/src/mqueuesend.c, posix/src/mqueuesendsupp.c, posix/src/mqueuesetattr.c, posix/src/mqueuetimedreceive.c, posix/src/mqueuetimedsend.c, posix/src/mqueuetranslatereturncode.c, posix/src/mqueueunlink.c, posix/src/mutex.c, posix/src/mutexattrdestroy.c, posix/src/mutexattrgetprioceiling.c, posix/src/mutexattrgetprotocol.c, posix/src/mutexattrgetpshared.c, posix/src/mutexattrinit.c, posix/src/mutexattrsetprioceiling.c, posix/src/mutexattrsetprotocol.c, posix/src/mutexattrsetpshared.c, posix/src/mutexdestroy.c, posix/src/mutexgetprioceiling.c, posix/src/mutexinit.c, posix/src/mutexlock.c, posix/src/mutexlocksupp.c, posix/src/mutexsetprioceiling.c, posix/src/mutextimedlock.c, posix/src/mutextrylock.c, posix/src/mutexunlock.c, posix/src/nanosleep.c, posix/src/psignal.c, posix/src/psignalchecksignal.c, posix/src/psignalclearprocesssignals.c, posix/src/psignalclearsignals.c, posix/src/psignalsetprocesssignals.c, posix/src/psignalunblockthread.c, posix/src/pthreadinitthreads.c, posix/src/rwlockattrdestroy.c, posix/src/rwlockattrgetpshared.c, posix/src/rwlockattrinit.c, posix/src/rwlockattrsetpshared.c, posix/src/semaphore.c, posix/src/semaphoredeletesupp.c, posix/src/semaphorenametoid.c, posix/src/semaphorewaitsupp.c, posix/src/semclose.c, posix/src/semdestroy.c, posix/src/semgetvalue.c, posix/src/seminit.c, posix/src/semopen.c, posix/src/sempost.c, posix/src/semtimedwait.c, posix/src/semtrywait.c, posix/src/semunlink.c, posix/src/semwait.c, posix/src/sysconf.c, posix/src/testcancel.c, posix/src/ualarm.c, rtems/src/clockgetuptime.c, rtems/src/clockset.c, rtems/src/clocksetnsecshandler.c, rtems/src/clocktick.c, rtems/src/clocktodtoseconds.c, rtems/src/clocktodvalidate.c, rtems/src/dpmem.c, rtems/src/dpmemcreate.c, rtems/src/dpmemdelete.c, rtems/src/dpmemexternal2internal.c, rtems/src/dpmemident.c, rtems/src/dpmeminternal2external.c, rtems/src/event.c, rtems/src/eventmp.c, rtems/src/eventreceive.c, rtems/src/eventseize.c, rtems/src/eventsend.c, rtems/src/eventsurrender.c, rtems/src/eventtimeout.c, rtems/src/mp.c, rtems/src/msg.c, rtems/src/msgmp.c, rtems/src/msgqallocate.c, rtems/src/msgqbroadcast.c, rtems/src/msgqcreate.c, rtems/src/msgqdelete.c, rtems/src/msgqflush.c, rtems/src/msgqgetnumberpending.c, rtems/src/msgqident.c, rtems/src/msgqreceive.c, rtems/src/msgqtranslatereturncode.c, rtems/src/msgqurgent.c, rtems/src/part.c, rtems/src/partcreate.c, rtems/src/partdelete.c, rtems/src/partgetbuffer.c, rtems/src/partident.c, rtems/src/partmp.c, rtems/src/partreturnbuffer.c, rtems/src/ratemon.c, rtems/src/ratemoncancel.c, rtems/src/ratemoncreate.c, rtems/src/ratemondelete.c, rtems/src/ratemongetstatistics.c, rtems/src/ratemongetstatus.c, rtems/src/ratemonident.c, rtems/src/ratemonperiod.c, rtems/src/ratemonresetstatistics.c, rtems/src/ratemontimeout.c, rtems/src/region.c, rtems/src/regioncreate.c, rtems/src/regiondelete.c, rtems/src/regionextend.c, rtems/src/regiongetfreeinfo.c, rtems/src/regiongetinfo.c, rtems/src/regiongetsegment.c, rtems/src/regiongetsegmentsize.c, rtems/src/regionident.c, rtems/src/regionmp.c, rtems/src/regionprocessqueue.c, rtems/src/regionresizesegment.c, rtems/src/regionreturnsegment.c, rtems/src/rtemsobjectgetclassicname.c, rtems/src/rtemstimer.c, rtems/src/sem.c, rtems/src/semcreate.c, rtems/src/semdelete.c, rtems/src/semflush.c, rtems/src/semident.c, rtems/src/semmp.c, rtems/src/semobtain.c, rtems/src/semrelease.c, rtems/src/semtranslatereturncode.c, rtems/src/signal.c, rtems/src/signalcatch.c, rtems/src/signalmp.c, rtems/src/signalsend.c, rtems/src/taskcreate.c, rtems/src/taskdelete.c, rtems/src/taskgetnote.c, rtems/src/taskident.c, rtems/src/taskinitusers.c, rtems/src/taskissuspended.c, rtems/src/taskmp.c, rtems/src/taskrestart.c, rtems/src/taskresume.c, rtems/src/tasks.c, rtems/src/tasksetnote.c, rtems/src/tasksetpriority.c, rtems/src/taskstart.c, rtems/src/tasksuspend.c, rtems/src/taskwakeafter.c, rtems/src/taskwakewhen.c, rtems/src/timercancel.c, rtems/src/timercreate.c, rtems/src/timerdelete.c, rtems/src/timerfireafter.c, rtems/src/timerfirewhen.c, rtems/src/timergetinfo.c, rtems/src/timerident.c, rtems/src/timerreset.c, rtems/src/timerserverfireafter.c, rtems/src/timerserverfirewhen.c, sapi/src/debug.c, sapi/src/extension.c, sapi/src/posixapi.c, sapi/src/rtemsapi.c, score/src/apiext.c, score/src/chain.c, score/src/corebarrier.c, score/src/corebarrierrelease.c, score/src/corebarrierwait.c, score/src/coremsgbroadcast.c, score/src/coremsgclose.c, score/src/coremsgflush.c, score/src/coremsgflushsupp.c, score/src/coremsgflushwait.c, score/src/coremsginsert.c, score/src/coremsgseize.c, score/src/coremsgsubmit.c, score/src/coremutex.c, score/src/coremutexflush.c, score/src/coremutexseize.c, score/src/corerwlock.c, score/src/corerwlockobtainread.c, score/src/corerwlockobtainwrite.c, score/src/corerwlockrelease.c, score/src/coresem.c, score/src/coresemflush.c, score/src/coresemsurrender.c, score/src/corespinlock.c, score/src/corespinlockrelease.c, score/src/corespinlockwait.c, score/src/coretod.c, score/src/coretodset.c, score/src/coretodtickle.c, score/src/heap.c, score/src/interr.c, score/src/mpci.c, score/src/objectallocate.c, score/src/objectextendinformation.c, score/src/objectfree.c, score/src/objectget.c, score/src/objectgetisr.c, score/src/objectgetnext.c, score/src/objectgetnoprotection.c, score/src/objectinitializeinformation.c, score/src/objectmp.c, score/src/objectnametoid.c, score/src/objectnametoidstring.c, score/src/objectshrinkinformation.c, score/src/rbtree.c, score/src/threaddelayended.c, score/src/threadhandler.c, score/src/threadinitialize.c, score/src/threadloadenv.c, score/src/threadmp.c, score/src/threadq.c, score/src/threadqdequeue.c, score/src/threadqdequeuefifo.c, score/src/threadqdequeuepriority.c, score/src/threadqenqueue.c, score/src/threadqenqueuefifo.c, score/src/threadqenqueuepriority.c, score/src/threadqextract.c, score/src/threadqextractfifo.c, score/src/threadqextractpriority.c, score/src/threadqextractwithproxy.c, score/src/threadqfirst.c, score/src/threadqfirstfifo.c, score/src/threadqfirstpriority.c, score/src/threadqflush.c, score/src/threadqrequeue.c, score/src/threadstackallocate.c, score/src/threadstartmultitasking.c, score/src/watchdog.c, score/src/watchdogadjust.c, score/src/watchdoginsert.c, score/src/watchdogremove.c, score/src/watchdogtickle.c: Remove /*PAGE markers which were interpreted by a long dead print script.
2011-06-242011-06-24 Arnout Vandecappelle <arnout@mind.be>Sebastian Huber
Sebastien Bourdeauducq <sebastien@milkymist.org> PR 1724/cpukit * ftpd/ftpd.h, ftpd/ftpd.c: Added USER/PASS authentication.
2011-06-072011-06-07 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber
PR 1811/networking * ftpd/ftpd.c: Fixed reply format.
2011-04-042011-04-04 Sebastien Bourdeauducq <sebastien.bourdeauducq@gmail.com>Joel Sherrill
PR 1722/networking * ftpd/ftpd.c: FTPD fails to parse correctly FTP commands relating to filenames with spaces in them.
2011-02-232011-02-23 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* ftpd/ftpd.h: Add missing includes.
2010-05-072010-05-07 Arnout Vandecappelle <arnout@mind.be>Sebastian Huber
PR 1511/networking * ftpd/ftpd.c: Abort RETR for directories.
2010-03-122010-03-12 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* ftpd/ftpd.c, httpd/asp.c, httpd/ejparse.c, httpd/emfdb.c, httpd/misc.c, httpd/um.c, httpd/webs.c, httpd/websuemf.c, libfs/src/dosfs/msdos_dir.c, libfs/src/dosfs/msdos_format.c, libfs/src/dosfs/msdos_misc.c, libfs/src/nfsclient/src/nfs.c, libmisc/capture/capture-cli.c, libmisc/monitor/mon-network.c, libmisc/shell/hexdump-odsyntax.c, libmisc/shell/main_ifconfig.c, libmisc/shell/shell.c, libmisc/shell/shell_makeargs.c, libmisc/uuid/parse.c, libnetworking/libc/gethostbydns.c, libnetworking/libc/gethostbyht.c, libnetworking/libc/gethostnamadr.c, libnetworking/libc/getnetnamadr.c, libnetworking/libc/inet_addr.c, libnetworking/libc/inet_network.c, libnetworking/libc/res_debug.c, libnetworking/libc/res_init.c, libnetworking/libc/res_query.c, libnetworking/rtems/rtems_mii_ioctl.c, score/src/objectgetnameasstring.c: Readdress use of ctype methods per recommendation from D.J. Delorie on the newlib mailing list. We should pass an unsigned char into these methods.
2010-03-112010-03-11 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* ftpd/ftpd.c, httpd/uemf.c, httpd/um.c, httpd/webs.c, httpd/websuemf.c, libblock/src/diskdevs.c, libmisc/capture/capture-cli.c, libmisc/monitor/mon-network.c, libmisc/shell/hexdump-odsyntax.c, libmisc/shell/main_ifconfig.c, libmisc/uuid/parse.c, libnetworking/lib/ftpfs.c, libnetworking/libc/gethostbyht.c, libnetworking/libc/getnetnamadr.c, libnetworking/libc/inet_network.c, libnetworking/rtems/rtems_mii_ioctl.c, score/src/objectgetnameasstring.c: Fix warnings for ctype methods.
2009-03-122009-03-12 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
* ftpd/ftpd.h: Add extern C.