1#ifndef __SHUTILS_H__ 2#define __SHUTILS_H__ 3 4 5#define PPP_PSEUDO_IP "10.64.64.64" 6#define PPP_PSEUDO_NM "255.255.255.255" 7#define PPP_PSEUDO_GW "10.112.112.112" 8 9 10// extern int diag_led(int type, int act); 11// extern int C_led(int i); 12// extern int get_single_ip(char *ipaddr, int which); 13// extern char *get_mac_from_ip(char *ip); 14// extern struct dns_lists *get_dns_list(int no); 15// extern char *get_wan_face(void); 16// extern int check_wan_link(int num); 17// extern char *get_complete_lan_ip(char *ip); 18// extern int get_int_len(int num); 19// extern int file_to_buf(char *path, char *buf, int len); 20// int buf_to_file(char *path, char *buf); 21// extern pid_t* find_pid_by_name( char* pidName); 22// extern int find_pid_by_ps(char* pidName); 23// extern int *find_all_pid_by_ps(char* pidName); 24 25// extern long convert_ver(char *ver); 26// extern int check_flash(void); 27// extern int check_now_boot(void); 28// extern int check_hw_type(void); 29// extern int is_exist(char *filename); 30 31// extern void encode(char *buf, int len); 32// extern void decode(char *buf, int len); 33 34// extern int set_register_value(unsigned short port_addr, unsigned short option_content); 35// extern unsigned long get_register_value(unsigned short id, unsigned short num); 36 37// struct wl_assoc_mac * get_wl_assoc_mac(int *c); 38 39/* 40enum { 41 WL = 0, 42 DIAG = 1, 43 SES_LED1 = 2, 44 SES_LED2 = 3, 45 SES_BUTTON = 4, 46 DMZ = 7 47}; 48 49enum { 50 START_LED, 51 STOP_LED, 52 MALFUNCTION_LED 53}; 54*/ 55 56// enum { UNKNOWN_BOOT = -1, PMON_BOOT, CFE_BOOT }; 57 58// enum { BCM4702_CHIP, BCM4712_CHIP, BCM5325E_CHIP, BCM4704_BCM5325F_CHIP, BCM5352E_CHIP, NO_DEFINE_CHIP }; 59 60// enum { FIRST, SECOND }; 61 62// enum { SYSLOG_LOG=1, SYSLOG_DEBUG, CONSOLE_ONLY, LOG_CONSOLE, DEBUG_CONSOLE }; 63 64/* 65typedef enum { 66 ACT_IDLE, 67 ACT_TFTP_UPGRADE, 68 ACT_WEB_UPGRADE, 69 ACT_WEBS_UPGRADE, 70 ACT_SW_RESTORE, 71 ACT_HW_RESTORE, 72 ACT_ERASE_NVRAM, 73 ACT_NVRAM_COMMIT, 74 ACT_UPGRADE_DONE 75} ACTION; 76#define ACTION_FILE "/tmp/action" 77#define ACTION(cmd) buf_to_file(ACTION_FILE, cmd) 78extern int check_action(void); 79*/ 80 81/* 82struct dns_lists { 83 int num_servers; 84 char dns_server[4][16]; 85}; 86 87struct wl_assoc_mac { 88 char mac[18]; 89}; 90 91#define PROTO_DHCP 0 92#define PROTO_STATIC 1 93#define PROTO_PPPOE 2 94#define PROTO_PPTP 3 95#define PROTO_L2TP 4 96#define PROTO_HB 5 97#define PROTO_EARTHLINK 6 98#define PROTO_ERROR -1 99*/ 100 101 102 103#define split(word, wordlist, next, delim) \ 104 for (next = wordlist, \ 105 strncpy(word, next, sizeof(word)), \ 106 word[(next=strstr(next, delim)) ? strstr(word, delim) - word : sizeof(word) - 1] = '\0', \ 107 next = next ? next + sizeof(delim) - 1 : NULL ; \ 108 strlen(word); \ 109 next = next ? : "", \ 110 strncpy(word, next, sizeof(word)), \ 111 word[(next=strstr(next, delim)) ? strstr(word, delim) - word : sizeof(word) - 1] = '\0', \ 112 next = next ? next + sizeof(delim) - 1 : NULL) 113 114#define STRUCT_LEN(name) sizeof(name)/sizeof(name[0]) 115 116#endif 117