www.usr.com/support/gpl/USR9107_release.1.4.tar.gz
[bcm963xx.git] / userapps / opensource / ftpd / fwsyscall.h
1 #ifndef FW_SYSCALL_H
2 #define FW_SYSCALL_H
3
4 #include <net/if.h>
5
6 #include "bcmtypes.h"
7 #include "board.h"
8 #include "board_api.h"
9 #include "clidefs.h"
10 #include "syscall.h"
11 #include "psidefs.h"
12 #include "version.h"
13 #include "psixml.h"
14
15 #define SEC_BUFF_MAX_LEN     16     // from secdefs.h
16 #define IFC_NAME_LEN                 16         // from ifcdefs.h
17
18 /* HTTP upload image formats. */
19 typedef enum
20 {
21     NO_IMAGE_FORMAT,
22     BROADCOM_IMAGE_FORMAT,
23     FLASH_IMAGE_FORMAT,
24     PSI_IMAGE_FORMAT,
25 } PARSE_RESULT;
26
27
28 typedef enum
29 {
30     BUF_ALL_TYPES,
31     BUF_IMAGES,
32     BUF_CONFIG_DATA,
33 } BUFFER_TYPE;
34
35 typedef enum
36 {
37     UPLOAD_OK,
38     UPLOAD_FAIL_NO_MEM,
39     UPLOAD_FAIL_ILLEGAL_IMAGE,
40     UPLOAD_FAIL_FLASH,
41     UPLOAD_FAIL_FTP,
42 } UPLOAD_RESULT;
43
44 #define     SKIP_NONE_APP       0x00000000
45 #define     SKIP_TELNETD_APP    0x00000001
46 #define     SKIP_SSHD_APP       0x00000002
47 #define     SKIP_HTTPD_APP      0x00000004
48
49
50 #if defined(__cplusplus)
51 extern "C" {
52 #endif
53 PARSE_RESULT parseImageData(char *image_start_ptr, int bufSize, BUFFER_TYPE fBufType);
54 UPLOAD_RESULT flashImage(char *imagePtr, PARSE_RESULT imageType, int imageLen);
55 int bcmCheckEnable(char *appName, struct in_addr clntAddr);
56 int bcmSocketIfPid(void);
57 void killAllApps(int socketPid, int skipApp, int telnetIfcPid, int sshdIfcPid);
58 #if defined(__cplusplus)
59 }
60 #endif   // defined(__cplusplus)
61
62 #endif