1 /* 2 * FreeRTOS V202212.00 3 * Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. 4 * 5 * Permission is hereby granted, free of charge, to any person obtaining a copy of 6 * this software and associated documentation files (the "Software"), to deal in 7 * the Software without restriction, including without limitation the rights to 8 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 * the Software, and to permit persons to whom the Software is furnished to do so, 10 * subject to the following conditions: 11 * 12 * The above copyright notice and this permission notice shall be included in all 13 * copies or substantial portions of the Software. 14 * 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 * 22 * https://www.FreeRTOS.org 23 * https://github.com/FreeRTOS 24 * 25 */ 26 27 /* FreeRTOS includes. */ 28 #include "FreeRTOS.h" 29 30 /* FreeRTOS+TCP includes. */ 31 #include "FreeRTOS_FTP_commands.h" 32 33 const FTPCommand_t xFTPCommands[ FTP_CMD_COUNT ] = 34 { 35 /* cmdLen cmdName[7] cmdType checkLogin checkNullArg */ 36 { 4, "USER", ECMD_USER, pdFALSE, pdFALSE }, 37 { 4, "PASS", ECMD_PASS, pdFALSE, pdFALSE }, 38 { 4, "ACCT", ECMD_ACCT, pdTRUE, pdFALSE }, 39 { 3, "CWD", ECMD_CWD, pdTRUE, pdTRUE }, 40 { 4, "CDUP", ECMD_CDUP, pdTRUE, pdFALSE }, 41 { 4, "SMNT", ECMD_SMNT, pdTRUE, pdFALSE }, 42 { 4, "QUIT", ECMD_QUIT, pdTRUE, pdFALSE }, 43 { 4, "REIN", ECMD_REIN, pdTRUE, pdFALSE }, 44 { 4, "PORT", ECMD_PORT, pdTRUE, pdFALSE }, 45 { 4, "PASV", ECMD_PASV, pdTRUE, pdFALSE }, 46 { 4, "TYPE", ECMD_TYPE, pdTRUE, pdFALSE }, 47 { 4, "STRU", ECMD_STRU, pdTRUE, pdFALSE }, 48 { 4, "MODE", ECMD_MODE, pdTRUE, pdFALSE }, 49 { 4, "RETR", ECMD_RETR, pdTRUE, pdTRUE }, 50 { 4, "STOR", ECMD_STOR, pdTRUE, pdTRUE }, 51 { 4, "STOU", ECMD_STOU, pdTRUE, pdFALSE }, 52 { 4, "APPE", ECMD_APPE, pdTRUE, pdFALSE }, 53 { 4, "ALLO", ECMD_ALLO, pdTRUE, pdFALSE }, 54 { 4, "REST", ECMD_REST, pdTRUE, pdFALSE }, 55 { 4, "RNFR", ECMD_RNFR, pdTRUE, pdTRUE }, 56 { 4, "RNTO", ECMD_RNTO, pdTRUE, pdTRUE }, 57 { 4, "ABOR", ECMD_ABOR, pdTRUE, pdFALSE }, 58 { 4, "SIZE", ECMD_SIZE, pdTRUE, pdTRUE }, 59 { 4, "MDTM", ECMD_MDTM, pdTRUE, pdTRUE }, 60 { 4, "DELE", ECMD_DELE, pdTRUE, pdTRUE }, 61 { 3, "RMD", ECMD_RMD, pdTRUE, pdTRUE }, 62 { 3, "MKD", ECMD_MKD, pdTRUE, pdTRUE }, 63 { 3, "PWD", ECMD_PWD, pdTRUE, pdFALSE }, 64 { 4, "LIST", ECMD_LIST, pdTRUE, pdFALSE }, 65 { 4, "NLST", ECMD_NLST, pdTRUE, pdFALSE }, 66 { 4, "SITE", ECMD_SITE, pdTRUE, pdFALSE }, 67 { 4, "SYST", ECMD_SYST, pdFALSE, pdFALSE }, 68 { 4, "FEAT", ECMD_FEAT, pdFALSE, pdFALSE }, 69 { 4, "STAT", ECMD_STAT, pdTRUE, pdFALSE }, 70 { 4, "HELP", ECMD_HELP, pdFALSE, pdFALSE }, 71 { 4, "NOOP", ECMD_NOOP, pdFALSE, pdFALSE }, 72 { 4, "EMPT", ECMD_EMPTY, pdFALSE, pdFALSE }, 73 { 4, "CLOS", ECMD_CLOSE, pdTRUE, pdFALSE }, 74 { 4, "UNKN", ECMD_UNKNOWN, pdFALSE, pdFALSE }, 75 }; 76