Directories and Files

This section discusses the modules available for μC/FTPs, and how they all fit together. A Windows®-based development platform is assumed. The directories and files make references to typical Windows-type directory structures. However, since μC/FTPs is available in source form, it can also be used with any ANSI-C compatible compiler/linker and any Operating System.

Below is a summary of all directories and files involved in the µC/FTPs module. The ‘<- Cfg’ on the far right indicates that these files are typically copied into the application (i.e., project) directory and edited based on project requirements.

 

\Micrium
    \Software
        \uC-FTPs
            \Cfg
                \Template                    
                    \ftp-s_cfg.h                     <- Cfg
            \Examples
                \ftp-s_auth.c
                \ftp-s_init.c
            \OS
                \uCOS-II
                    \ftp-s_os.c
                \uCOS-III
                    \ftp-s_os.c
            \Source
                \ftp-s.c
                \ftp-s.h

 

 

The code and documentation of the µC/FTPs module are organized in a directory structure according to “AN-2002, µC/OS-II Directory Structure”. Specifically, the files may be found in the following directories:

\Micrium\Software\uC-FTPs

This is the main directory for µC/FTPs.

\Micrium\Software\uC-FTPs\Doc

This directory contains all µC/FTPs documentation files, including this user’s manual.

\Micrium\Software\uC-FTPs\Cfg\Template

This directory contains a template of µC/FTPs configuration.

\Micrium\Software\uC-FTPs\Source

This directory contains the µC/FTPs source code. This protocol is implemented in two OS and FS independent files:

ftp-s.c
ftp-s.h

Note that the ‘-s’ after ‘ftp’ stands for server and thus contains ‘server’ side code.

\Micrium\Software\uC-FTPs\OS\uCOS-II
                            \uCOS-III

This is where operating system (OS) dependent code is located. µC/FTPs is distributed with ports for µC/OS-II and µC/OS-III. Note that it would be possible to use this FTP server with other operating systems by developing appropriate ftp-s_os.* implementation files.

 

Required modules

µC/FTPs requires the µC/CPU, µC/LIB, µC/TCP-IP and a File system modules. If the network security manager is to be used, a security layer module (i.e Mocana’s NanoSSL) is required. Please refer to the µC/FTPs release notes document for required version information.