Modularizando o src
Dependencies: EALib EthernetInterface_vz mbed-rtos mbed
Fork of header_main_colinas_V0-20-09-14 by
file_system_manager.cpp@135:2f4290590e51, 2015-09-10 (annotated)
- Committer:
- klauss
- Date:
- Thu Sep 10 20:11:35 2015 +0000
- Revision:
- 135:2f4290590e51
- Parent:
- 133:3d136f5ffd66
inclus?o das funcionalidades; - [get|set]_cbx_wake_mode; - [get|set]_cbx_detach_mode; - [get|set]_cbx_mode; - simula < ext > <msg_id > < type >; - refresh_status
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
klauss | 74:81c47fff88a5 | 1 | #include "file_system_manager.h" |
klauss | 74:81c47fff88a5 | 2 | |
klauss | 81:3656f00ab3db | 3 | QSPIFileSystem qspifs("qspi"); |
klauss | 81:3656f00ab3db | 4 | |
klauss | 132:05cd37f7e007 | 5 | extern Serial pc; |
klauss | 132:05cd37f7e007 | 6 | |
klauss | 121:ee02790d00b7 | 7 | char file_buffer [ FILE_BUFFER_SIZE ]; |
klauss | 121:ee02790d00b7 | 8 | |
klauss | 132:05cd37f7e007 | 9 | int fset_header_ip ( const char * new_header_ip ) |
klauss | 121:ee02790d00b7 | 10 | { |
klauss | 81:3656f00ab3db | 11 | FILE * fip = fopen("/qspi/myip.txt", "w"); |
klauss | 119:ee6a53069455 | 12 | if ( fip ) |
klauss | 119:ee6a53069455 | 13 | { |
klauss | 119:ee6a53069455 | 14 | fprintf( fip, "%s\n\r", new_header_ip ); |
klauss | 119:ee6a53069455 | 15 | fclose( fip ); |
klauss | 132:05cd37f7e007 | 16 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 17 | } |
klauss | 132:05cd37f7e007 | 18 | else |
klauss | 132:05cd37f7e007 | 19 | { |
klauss | 132:05cd37f7e007 | 20 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 21 | } |
klauss | 81:3656f00ab3db | 22 | } |
klauss | 81:3656f00ab3db | 23 | |
klauss | 132:05cd37f7e007 | 24 | int fget_ip ( char * header_ip, const size_t length ) |
klauss | 121:ee02790d00b7 | 25 | { |
klauss | 122:480c44b0e205 | 26 | FILE * fip = fopen ("/qspi/myip.txt", "r" ); |
klauss | 121:ee02790d00b7 | 27 | if ( fip != NULL ) |
klauss | 121:ee02790d00b7 | 28 | { |
klauss | 121:ee02790d00b7 | 29 | int read = fread ( header_ip, 1, length, fip ); |
klauss | 121:ee02790d00b7 | 30 | if( read > 0 ) |
klauss | 121:ee02790d00b7 | 31 | { |
klauss | 121:ee02790d00b7 | 32 | for ( register int i = 0; i < read; i++ ) |
klauss | 121:ee02790d00b7 | 33 | { |
klauss | 121:ee02790d00b7 | 34 | if( header_ip [ i ] == '\n' || header_ip [ i ] == '\r' ) |
klauss | 121:ee02790d00b7 | 35 | { |
klauss | 121:ee02790d00b7 | 36 | header_ip [ i ] = '\0'; |
klauss | 121:ee02790d00b7 | 37 | break; |
klauss | 121:ee02790d00b7 | 38 | } |
klauss | 121:ee02790d00b7 | 39 | } |
klauss | 121:ee02790d00b7 | 40 | } else { |
klauss | 122:480c44b0e205 | 41 | if ( fip ) fclose ( fip ); |
klauss | 121:ee02790d00b7 | 42 | return ( -3 ); |
klauss | 121:ee02790d00b7 | 43 | } |
klauss | 121:ee02790d00b7 | 44 | |
klauss | 121:ee02790d00b7 | 45 | header_ip [ length ] = 0; |
klauss | 121:ee02790d00b7 | 46 | |
klauss | 122:480c44b0e205 | 47 | if ( fip ) fclose ( fip ); |
klauss | 121:ee02790d00b7 | 48 | |
klauss | 121:ee02790d00b7 | 49 | return ( read ); |
klauss | 121:ee02790d00b7 | 50 | } |
klauss | 121:ee02790d00b7 | 51 | |
klauss | 122:480c44b0e205 | 52 | return ( -1 ); |
klauss | 122:480c44b0e205 | 53 | } |
klauss | 122:480c44b0e205 | 54 | |
klauss | 132:05cd37f7e007 | 55 | int fget_fw_ip ( char * fw_ip, const size_t length ) |
klauss | 122:480c44b0e205 | 56 | { |
klauss | 132:05cd37f7e007 | 57 | FILE *ffw_ip = fopen( "/qspi/fw_ip.txt", "r"); |
klauss | 132:05cd37f7e007 | 58 | if( ffw_ip == NULL ){ |
klauss | 132:05cd37f7e007 | 59 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 60 | }else{ |
klauss | 132:05cd37f7e007 | 61 | int read = fread( fw_ip, 1, 512, ffw_ip ); |
klauss | 132:05cd37f7e007 | 62 | if( read > 0 ){ |
klauss | 132:05cd37f7e007 | 63 | for( int i = 0; i < read; i++ ) |
klauss | 132:05cd37f7e007 | 64 | if( fw_ip[ i ] == '\n' || fw_ip[ i ] == '\r' ){ |
klauss | 132:05cd37f7e007 | 65 | fw_ip[ i ] = '\0'; |
klauss | 132:05cd37f7e007 | 66 | break; |
klauss | 132:05cd37f7e007 | 67 | } |
klauss | 132:05cd37f7e007 | 68 | }else{ |
klauss | 132:05cd37f7e007 | 69 | if ( ffw_ip ) fclose ( ffw_ip ); |
klauss | 132:05cd37f7e007 | 70 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 71 | } |
klauss | 132:05cd37f7e007 | 72 | |
klauss | 132:05cd37f7e007 | 73 | if ( ffw_ip ) fclose ( ffw_ip ); |
klauss | 132:05cd37f7e007 | 74 | |
klauss | 132:05cd37f7e007 | 75 | fw_ip [ length ] = 0; |
klauss | 132:05cd37f7e007 | 76 | |
klauss | 132:05cd37f7e007 | 77 | return ( read ); |
klauss | 132:05cd37f7e007 | 78 | } |
klauss | 132:05cd37f7e007 | 79 | } |
klauss | 132:05cd37f7e007 | 80 | |
klauss | 132:05cd37f7e007 | 81 | int fget_server_ip ( char * server_ip, const size_t length ) |
klauss | 122:480c44b0e205 | 82 | { |
klauss | 122:480c44b0e205 | 83 | FILE * fsip = fopen ("/qspi/serverip.txt", "r" ); |
klauss | 122:480c44b0e205 | 84 | if ( fsip != NULL ) |
klauss | 122:480c44b0e205 | 85 | { |
klauss | 122:480c44b0e205 | 86 | int read = fread ( server_ip, 1, length, fsip ); |
klauss | 122:480c44b0e205 | 87 | if( read > 0 ) |
klauss | 122:480c44b0e205 | 88 | { |
klauss | 122:480c44b0e205 | 89 | for ( register int i = 0; i < read; i++ ) |
klauss | 122:480c44b0e205 | 90 | { |
klauss | 122:480c44b0e205 | 91 | if( server_ip [ i ] == '\n' || server_ip [ i ] == '\r' ) |
klauss | 122:480c44b0e205 | 92 | { |
klauss | 122:480c44b0e205 | 93 | server_ip [ i ] = '\0'; |
klauss | 122:480c44b0e205 | 94 | break; |
klauss | 122:480c44b0e205 | 95 | } |
klauss | 122:480c44b0e205 | 96 | } |
klauss | 122:480c44b0e205 | 97 | } else { |
klauss | 122:480c44b0e205 | 98 | if ( fsip ) fclose ( fsip ); |
klauss | 122:480c44b0e205 | 99 | return ( -3 ); |
klauss | 122:480c44b0e205 | 100 | } |
klauss | 122:480c44b0e205 | 101 | |
klauss | 122:480c44b0e205 | 102 | server_ip [ length ] = 0; |
klauss | 122:480c44b0e205 | 103 | |
klauss | 122:480c44b0e205 | 104 | fclose ( fsip ); |
klauss | 122:480c44b0e205 | 105 | |
klauss | 122:480c44b0e205 | 106 | return ( read ); |
klauss | 122:480c44b0e205 | 107 | } |
klauss | 122:480c44b0e205 | 108 | |
klauss | 122:480c44b0e205 | 109 | return ( -1 ); |
klauss | 122:480c44b0e205 | 110 | } |
klauss | 122:480c44b0e205 | 111 | |
klauss | 132:05cd37f7e007 | 112 | int fget_mask ( char * eth_mask, const size_t length ) |
klauss | 122:480c44b0e205 | 113 | { |
klauss | 122:480c44b0e205 | 114 | FILE * fmsk = fopen("/qspi/mymask.txt", "r"); |
klauss | 122:480c44b0e205 | 115 | if ( fmsk != NULL ) |
klauss | 122:480c44b0e205 | 116 | { |
klauss | 122:480c44b0e205 | 117 | int read = fread ( eth_mask, 1, length, fmsk ); |
klauss | 122:480c44b0e205 | 118 | if( read > 0 ) |
klauss | 122:480c44b0e205 | 119 | { |
klauss | 122:480c44b0e205 | 120 | for ( register int i = 0; i < read; i++ ) |
klauss | 122:480c44b0e205 | 121 | { |
klauss | 122:480c44b0e205 | 122 | if( eth_mask [ i ] == '\n' || eth_mask [ i ] == '\r' ) |
klauss | 122:480c44b0e205 | 123 | { |
klauss | 122:480c44b0e205 | 124 | eth_mask [ i ] = '\0'; |
klauss | 122:480c44b0e205 | 125 | break; |
klauss | 122:480c44b0e205 | 126 | } |
klauss | 122:480c44b0e205 | 127 | } |
klauss | 122:480c44b0e205 | 128 | } else { |
klauss | 122:480c44b0e205 | 129 | if ( fmsk ) fclose ( fmsk ); |
klauss | 122:480c44b0e205 | 130 | return ( -3 ); |
klauss | 122:480c44b0e205 | 131 | } |
klauss | 122:480c44b0e205 | 132 | |
klauss | 122:480c44b0e205 | 133 | eth_mask [ length ] = 0; |
klauss | 122:480c44b0e205 | 134 | |
klauss | 122:480c44b0e205 | 135 | if ( fmsk ) fclose ( fmsk ); |
klauss | 122:480c44b0e205 | 136 | |
klauss | 122:480c44b0e205 | 137 | return ( read ); |
klauss | 122:480c44b0e205 | 138 | } |
klauss | 122:480c44b0e205 | 139 | |
klauss | 121:ee02790d00b7 | 140 | return ( -1 ); |
klauss | 121:ee02790d00b7 | 141 | } |
klauss | 132:05cd37f7e007 | 142 | |
klauss | 132:05cd37f7e007 | 143 | int fget_gateway ( char * eth_gw, const size_t length ) |
klauss | 122:480c44b0e205 | 144 | { |
klauss | 122:480c44b0e205 | 145 | FILE * fgw = fopen("/qspi/mygateway.txt", "r"); |
klauss | 122:480c44b0e205 | 146 | if ( fgw != NULL ) |
klauss | 122:480c44b0e205 | 147 | { |
klauss | 122:480c44b0e205 | 148 | int read = fread ( eth_gw, 1, length, fgw ); |
klauss | 122:480c44b0e205 | 149 | if( read > 0 ) |
klauss | 122:480c44b0e205 | 150 | { |
klauss | 122:480c44b0e205 | 151 | for ( register int i = 0; i < read; i++ ) |
klauss | 122:480c44b0e205 | 152 | { |
klauss | 122:480c44b0e205 | 153 | if( eth_gw [ i ] == '\n' || eth_gw [ i ] == '\r' ) |
klauss | 122:480c44b0e205 | 154 | { |
klauss | 122:480c44b0e205 | 155 | eth_gw [ i ] = '\0'; |
klauss | 122:480c44b0e205 | 156 | break; |
klauss | 122:480c44b0e205 | 157 | } |
klauss | 122:480c44b0e205 | 158 | } |
klauss | 122:480c44b0e205 | 159 | } else { |
klauss | 122:480c44b0e205 | 160 | if ( fgw ) fclose ( fgw ); |
klauss | 122:480c44b0e205 | 161 | return ( -3 ); |
klauss | 122:480c44b0e205 | 162 | } |
klauss | 122:480c44b0e205 | 163 | |
klauss | 122:480c44b0e205 | 164 | eth_gw [ length ] = 0; |
klauss | 122:480c44b0e205 | 165 | |
klauss | 122:480c44b0e205 | 166 | if ( fgw ) fclose ( fgw ); |
klauss | 122:480c44b0e205 | 167 | |
klauss | 122:480c44b0e205 | 168 | return ( read ); |
klauss | 122:480c44b0e205 | 169 | } |
klauss | 122:480c44b0e205 | 170 | |
klauss | 122:480c44b0e205 | 171 | return ( -1 ); |
klauss | 122:480c44b0e205 | 172 | } |
klauss | 122:480c44b0e205 | 173 | |
klauss | 132:05cd37f7e007 | 174 | int fset_header_ext ( const int new_header_ext ) |
klauss | 121:ee02790d00b7 | 175 | { |
klauss | 81:3656f00ab3db | 176 | FILE * fext = fopen( "/qspi/myext.txt", "w" ); |
klauss | 119:ee6a53069455 | 177 | if ( fext ) |
klauss | 119:ee6a53069455 | 178 | { |
klauss | 119:ee6a53069455 | 179 | fprintf( fext, "%i\n\r", new_header_ext ); |
klauss | 119:ee6a53069455 | 180 | fclose( fext ); |
klauss | 132:05cd37f7e007 | 181 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 182 | } |
klauss | 132:05cd37f7e007 | 183 | else |
klauss | 132:05cd37f7e007 | 184 | { |
klauss | 132:05cd37f7e007 | 185 | return ( -1 ); |
klauss | 119:ee6a53069455 | 186 | } |
klauss | 81:3656f00ab3db | 187 | } |
klauss | 81:3656f00ab3db | 188 | |
klauss | 133:3d136f5ffd66 | 189 | int fset_acceptable_delay ( const int new_acceptable_delay ) |
klauss | 133:3d136f5ffd66 | 190 | { |
klauss | 133:3d136f5ffd66 | 191 | FILE * fad = fopen( "/qspi/acceptable_delay.txt", "w" ); |
klauss | 133:3d136f5ffd66 | 192 | if ( fad ) |
klauss | 133:3d136f5ffd66 | 193 | { |
klauss | 133:3d136f5ffd66 | 194 | fprintf ( fad, "%i\n\r", new_acceptable_delay ); |
klauss | 133:3d136f5ffd66 | 195 | fclose ( fad ); |
klauss | 133:3d136f5ffd66 | 196 | return ( 0 ); |
klauss | 133:3d136f5ffd66 | 197 | } |
klauss | 133:3d136f5ffd66 | 198 | else |
klauss | 133:3d136f5ffd66 | 199 | { |
klauss | 133:3d136f5ffd66 | 200 | return ( -1 ); |
klauss | 133:3d136f5ffd66 | 201 | } |
klauss | 133:3d136f5ffd66 | 202 | } |
klauss | 133:3d136f5ffd66 | 203 | |
klauss | 133:3d136f5ffd66 | 204 | int fget_acceptable_delay ( void ) |
klauss | 133:3d136f5ffd66 | 205 | { |
klauss | 133:3d136f5ffd66 | 206 | char get_acceptable_delay_buffer [ 32 ] = ""; |
klauss | 133:3d136f5ffd66 | 207 | |
klauss | 133:3d136f5ffd66 | 208 | FILE * fad = fopen ( "/qspi/acceptable_delay.txt", "r" ); |
klauss | 133:3d136f5ffd66 | 209 | if ( fad == NULL ) |
klauss | 133:3d136f5ffd66 | 210 | { |
klauss | 133:3d136f5ffd66 | 211 | return ( -3 ); |
klauss | 133:3d136f5ffd66 | 212 | } else { |
klauss | 133:3d136f5ffd66 | 213 | if( fread ( ( void * ) get_acceptable_delay_buffer, 1, sizeof ( get_acceptable_delay_buffer ) - 1, fad ) > 0 ) |
klauss | 133:3d136f5ffd66 | 214 | { |
klauss | 133:3d136f5ffd66 | 215 | if ( fad ) fclose ( fad ); |
klauss | 133:3d136f5ffd66 | 216 | return ( atoi ( get_acceptable_delay_buffer ) ); |
klauss | 133:3d136f5ffd66 | 217 | } else { |
klauss | 133:3d136f5ffd66 | 218 | if ( fad ) fclose ( fad ); |
klauss | 133:3d136f5ffd66 | 219 | return ( -5 ); |
klauss | 133:3d136f5ffd66 | 220 | } |
klauss | 133:3d136f5ffd66 | 221 | } |
klauss | 133:3d136f5ffd66 | 222 | } |
klauss | 122:480c44b0e205 | 223 | |
klauss | 132:05cd37f7e007 | 224 | int fget_header_ext ( void ) |
klauss | 122:480c44b0e205 | 225 | { |
klauss | 122:480c44b0e205 | 226 | char get_header_ext_buffer [ 32 ] = ""; |
klauss | 122:480c44b0e205 | 227 | |
klauss | 122:480c44b0e205 | 228 | FILE * fext = fopen ( "/qspi/myext.txt", "r" ); |
klauss | 122:480c44b0e205 | 229 | if ( fext == NULL ) |
klauss | 132:05cd37f7e007 | 230 | { |
klauss | 132:05cd37f7e007 | 231 | return ( -3 ); |
klauss | 122:480c44b0e205 | 232 | } else { |
klauss | 122:480c44b0e205 | 233 | if( fread ( ( void * ) get_header_ext_buffer, 1, sizeof ( get_header_ext_buffer ) - 1, fext ) > 0 ) |
klauss | 122:480c44b0e205 | 234 | { |
klauss | 122:480c44b0e205 | 235 | if ( fext ) fclose ( fext ); |
klauss | 122:480c44b0e205 | 236 | return ( atoi ( get_header_ext_buffer ) ); |
klauss | 122:480c44b0e205 | 237 | } else { |
klauss | 122:480c44b0e205 | 238 | if ( fext ) fclose ( fext ); |
klauss | 132:05cd37f7e007 | 239 | return ( -5 ); |
klauss | 122:480c44b0e205 | 240 | } |
klauss | 122:480c44b0e205 | 241 | } |
klauss | 122:480c44b0e205 | 242 | } |
klauss | 122:480c44b0e205 | 243 | |
klauss | 132:05cd37f7e007 | 244 | int fset_header_sip_port ( const int new_header_sip_port ) |
klauss | 121:ee02790d00b7 | 245 | { |
klauss | 119:ee6a53069455 | 246 | FILE * fport = fopen("/qspi/mysipport.txt", "w"); |
klauss | 119:ee6a53069455 | 247 | if ( fport ) |
klauss | 119:ee6a53069455 | 248 | { |
klauss | 119:ee6a53069455 | 249 | fprintf( fport,"%i\n\r", new_header_sip_port ); |
klauss | 119:ee6a53069455 | 250 | fclose( fport ); |
klauss | 132:05cd37f7e007 | 251 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 252 | } |
klauss | 132:05cd37f7e007 | 253 | else |
klauss | 132:05cd37f7e007 | 254 | { |
klauss | 132:05cd37f7e007 | 255 | return ( -1 ); |
klauss | 119:ee6a53069455 | 256 | } |
klauss | 117:e9facba9db27 | 257 | } |
klauss | 117:e9facba9db27 | 258 | |
klauss | 132:05cd37f7e007 | 259 | int fget_header_sip_port ( void ) |
klauss | 122:480c44b0e205 | 260 | { |
klauss | 122:480c44b0e205 | 261 | char get_header_sip_port_buffer [ 32 ] = ""; |
klauss | 122:480c44b0e205 | 262 | |
klauss | 122:480c44b0e205 | 263 | FILE * fport = fopen ( "/qspi/mysipport.txt", "r" ); |
klauss | 122:480c44b0e205 | 264 | if ( fport == NULL ) |
klauss | 122:480c44b0e205 | 265 | { |
klauss | 132:05cd37f7e007 | 266 | return ( -1 ); |
klauss | 122:480c44b0e205 | 267 | } else { |
klauss | 122:480c44b0e205 | 268 | if( fread ( ( void * ) get_header_sip_port_buffer, 1, sizeof ( get_header_sip_port_buffer ) - 1, fport ) > 0 ) |
klauss | 122:480c44b0e205 | 269 | { |
klauss | 122:480c44b0e205 | 270 | if ( fport ) fclose ( fport ); |
klauss | 122:480c44b0e205 | 271 | return ( atoi ( get_header_sip_port_buffer ) ); |
klauss | 122:480c44b0e205 | 272 | } else { |
klauss | 122:480c44b0e205 | 273 | if ( fport ) fclose ( fport ); |
klauss | 132:05cd37f7e007 | 274 | return ( -3 ); |
klauss | 122:480c44b0e205 | 275 | } |
klauss | 122:480c44b0e205 | 276 | } |
klauss | 122:480c44b0e205 | 277 | } |
klauss | 122:480c44b0e205 | 278 | |
klauss | 132:05cd37f7e007 | 279 | int fset_server_ip ( const char * new_server_ip ) |
klauss | 121:ee02790d00b7 | 280 | { |
klauss | 119:ee6a53069455 | 281 | FILE * fsip = fopen("/qspi/serverip.txt", "w"); |
klauss | 119:ee6a53069455 | 282 | if ( fsip ) |
klauss | 119:ee6a53069455 | 283 | { |
klauss | 119:ee6a53069455 | 284 | fprintf( fsip,"%s\n\r", new_server_ip ); |
klauss | 119:ee6a53069455 | 285 | fclose( fsip ); |
klauss | 132:05cd37f7e007 | 286 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 287 | } |
klauss | 132:05cd37f7e007 | 288 | else |
klauss | 132:05cd37f7e007 | 289 | { |
klauss | 132:05cd37f7e007 | 290 | return ( -1 ); |
klauss | 119:ee6a53069455 | 291 | } |
klauss | 81:3656f00ab3db | 292 | } |
klauss | 81:3656f00ab3db | 293 | |
klauss | 132:05cd37f7e007 | 294 | int fset_server_ext ( const int new_server_ext ) |
klauss | 121:ee02790d00b7 | 295 | { |
klauss | 119:ee6a53069455 | 296 | FILE * fserext = fopen("/qspi/peerext.txt", "w"); |
klauss | 119:ee6a53069455 | 297 | if ( fserext ) |
klauss | 119:ee6a53069455 | 298 | { |
klauss | 119:ee6a53069455 | 299 | fprintf( fserext , "%i\n\r", new_server_ext ); |
klauss | 119:ee6a53069455 | 300 | fclose( fserext ); |
klauss | 132:05cd37f7e007 | 301 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 302 | } |
klauss | 132:05cd37f7e007 | 303 | else |
klauss | 132:05cd37f7e007 | 304 | { |
klauss | 132:05cd37f7e007 | 305 | return ( -1 ); |
klauss | 119:ee6a53069455 | 306 | } |
klauss | 117:e9facba9db27 | 307 | } |
klauss | 117:e9facba9db27 | 308 | |
klauss | 132:05cd37f7e007 | 309 | int fget_server_ext ( void ) |
klauss | 132:05cd37f7e007 | 310 | { |
klauss | 132:05cd37f7e007 | 311 | char get_server_ext_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 312 | |
klauss | 132:05cd37f7e007 | 313 | FILE * fserver_ext = fopen ( "/qspi/peerext.txt", "r" ); |
klauss | 132:05cd37f7e007 | 314 | if ( fserver_ext == NULL ) |
klauss | 132:05cd37f7e007 | 315 | { |
klauss | 132:05cd37f7e007 | 316 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 317 | } else { |
klauss | 132:05cd37f7e007 | 318 | if( fread ( ( void * ) get_server_ext_buffer, 1, sizeof ( get_server_ext_buffer ) - 1, fserver_ext ) > 0 ) |
klauss | 132:05cd37f7e007 | 319 | { |
klauss | 132:05cd37f7e007 | 320 | if ( fserver_ext ) fclose ( fserver_ext ); |
klauss | 132:05cd37f7e007 | 321 | return ( atoi ( get_server_ext_buffer ) ); |
klauss | 132:05cd37f7e007 | 322 | } else { |
klauss | 132:05cd37f7e007 | 323 | if ( fserver_ext ) fclose ( fserver_ext ); |
klauss | 132:05cd37f7e007 | 324 | return ( -5 ); |
klauss | 132:05cd37f7e007 | 325 | } |
klauss | 132:05cd37f7e007 | 326 | } |
klauss | 132:05cd37f7e007 | 327 | } |
klauss | 132:05cd37f7e007 | 328 | |
klauss | 132:05cd37f7e007 | 329 | int fset_server_port ( const int new_server_port ) |
klauss | 121:ee02790d00b7 | 330 | { |
klauss | 119:ee6a53069455 | 331 | FILE * fsport = fopen("/qspi/serverport.txt", "w"); |
klauss | 119:ee6a53069455 | 332 | if ( fsport ) |
klauss | 119:ee6a53069455 | 333 | { |
klauss | 119:ee6a53069455 | 334 | fprintf(fsport,"%i\n\r", new_server_port ); |
klauss | 119:ee6a53069455 | 335 | fclose( fsport ); |
klauss | 132:05cd37f7e007 | 336 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 337 | } |
klauss | 132:05cd37f7e007 | 338 | else |
klauss | 132:05cd37f7e007 | 339 | { |
klauss | 132:05cd37f7e007 | 340 | return ( -1 ); |
klauss | 99:e80850c51106 | 341 | } |
klauss | 81:3656f00ab3db | 342 | } |
klauss | 81:3656f00ab3db | 343 | |
klauss | 132:05cd37f7e007 | 344 | int fget_server_port ( void ) |
klauss | 132:05cd37f7e007 | 345 | { |
klauss | 132:05cd37f7e007 | 346 | char get_server_sip_port_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 347 | |
klauss | 132:05cd37f7e007 | 348 | FILE * fserver_port = fopen ( "/qspi/serverport.txt", "r" ); |
klauss | 132:05cd37f7e007 | 349 | if ( fserver_port == NULL ) |
klauss | 132:05cd37f7e007 | 350 | { |
klauss | 132:05cd37f7e007 | 351 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 352 | } else { |
klauss | 132:05cd37f7e007 | 353 | if( fread ( ( void * ) get_server_sip_port_buffer, 1, sizeof ( get_server_sip_port_buffer ) - 1, fserver_port ) > 0 ) |
klauss | 132:05cd37f7e007 | 354 | { |
klauss | 132:05cd37f7e007 | 355 | if ( fserver_port ) fclose ( fserver_port ); |
klauss | 132:05cd37f7e007 | 356 | return ( atoi ( get_server_sip_port_buffer ) ); |
klauss | 132:05cd37f7e007 | 357 | } else { |
klauss | 132:05cd37f7e007 | 358 | if ( fserver_port ) fclose ( fserver_port ); |
klauss | 132:05cd37f7e007 | 359 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 360 | } |
klauss | 132:05cd37f7e007 | 361 | } |
klauss | 132:05cd37f7e007 | 362 | } |
klauss | 132:05cd37f7e007 | 363 | |
klauss | 132:05cd37f7e007 | 364 | int fset_mask ( const char * new_mask ) |
klauss | 121:ee02790d00b7 | 365 | { |
klauss | 119:ee6a53069455 | 366 | FILE * fmask = fopen("/qspi/mymask.txt", "w"); |
klauss | 119:ee6a53069455 | 367 | if ( fmask ) |
klauss | 119:ee6a53069455 | 368 | { |
klauss | 119:ee6a53069455 | 369 | fprintf(fmask,"%s\n\r",new_mask ); |
klauss | 119:ee6a53069455 | 370 | fclose( fmask ); |
klauss | 132:05cd37f7e007 | 371 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 372 | } |
klauss | 132:05cd37f7e007 | 373 | else |
klauss | 132:05cd37f7e007 | 374 | { |
klauss | 132:05cd37f7e007 | 375 | return ( -1 ); |
klauss | 119:ee6a53069455 | 376 | } |
klauss | 119:ee6a53069455 | 377 | } |
klauss | 119:ee6a53069455 | 378 | |
klauss | 132:05cd37f7e007 | 379 | int fset_gateway ( const char * new_gateway ) |
klauss | 121:ee02790d00b7 | 380 | { |
klauss | 119:ee6a53069455 | 381 | FILE * fgate = fopen("/qspi/mygateway.txt", "w"); |
klauss | 119:ee6a53069455 | 382 | if ( fgate ) |
klauss | 119:ee6a53069455 | 383 | { |
klauss | 119:ee6a53069455 | 384 | fprintf(fgate,"%s\n\r", new_gateway ); |
klauss | 119:ee6a53069455 | 385 | fclose( fgate ); |
klauss | 132:05cd37f7e007 | 386 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 387 | } |
klauss | 132:05cd37f7e007 | 388 | else |
klauss | 132:05cd37f7e007 | 389 | { |
klauss | 132:05cd37f7e007 | 390 | return ( -1 ); |
klauss | 119:ee6a53069455 | 391 | } |
klauss | 119:ee6a53069455 | 392 | } |
klauss | 119:ee6a53069455 | 393 | |
klauss | 132:05cd37f7e007 | 394 | int set_udp_port_listener ( const int new_udp_port_listener ) |
klauss | 121:ee02790d00b7 | 395 | { |
klauss | 119:ee6a53069455 | 396 | FILE * fudpport = fopen( "/qspi/udpport.txt", "w" ); |
klauss | 119:ee6a53069455 | 397 | if ( fudpport ) |
klauss | 119:ee6a53069455 | 398 | { |
klauss | 119:ee6a53069455 | 399 | fprintf( fudpport, "%i\n\r",new_udp_port_listener ); |
klauss | 119:ee6a53069455 | 400 | fclose( fudpport ); |
klauss | 132:05cd37f7e007 | 401 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 402 | } |
klauss | 132:05cd37f7e007 | 403 | else |
klauss | 132:05cd37f7e007 | 404 | { |
klauss | 132:05cd37f7e007 | 405 | return ( -1 ); |
klauss | 119:ee6a53069455 | 406 | } |
klauss | 119:ee6a53069455 | 407 | } |
klauss | 119:ee6a53069455 | 408 | |
klauss | 132:05cd37f7e007 | 409 | int fget_udp_port_listener ( void ) |
klauss | 132:05cd37f7e007 | 410 | { |
klauss | 132:05cd37f7e007 | 411 | char get_udp_port_listener_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 412 | |
klauss | 132:05cd37f7e007 | 413 | FILE * fudp_port_listener = fopen ( "/qspi/udpport.txt", "r" ); |
klauss | 132:05cd37f7e007 | 414 | if ( fudp_port_listener == NULL ) |
klauss | 132:05cd37f7e007 | 415 | { |
klauss | 132:05cd37f7e007 | 416 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 417 | } else { |
klauss | 132:05cd37f7e007 | 418 | if( fread ( ( void * ) get_udp_port_listener_buffer, 1, sizeof ( get_udp_port_listener_buffer ) - 1, fudp_port_listener ) > 0 ) |
klauss | 132:05cd37f7e007 | 419 | { |
klauss | 132:05cd37f7e007 | 420 | if ( fudp_port_listener ) fclose ( fudp_port_listener ); |
klauss | 132:05cd37f7e007 | 421 | return ( atoi ( get_udp_port_listener_buffer ) ); |
klauss | 132:05cd37f7e007 | 422 | } else { |
klauss | 132:05cd37f7e007 | 423 | if ( fudp_port_listener ) fclose ( fudp_port_listener ); |
klauss | 132:05cd37f7e007 | 424 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 425 | } |
klauss | 132:05cd37f7e007 | 426 | } |
klauss | 132:05cd37f7e007 | 427 | } |
klauss | 132:05cd37f7e007 | 428 | |
klauss | 132:05cd37f7e007 | 429 | int set_tcp_port_listener ( const int new_tcp_port_listener ) |
klauss | 121:ee02790d00b7 | 430 | { |
klauss | 119:ee6a53069455 | 431 | FILE * ftcpport = fopen( "/qspi/tcpport.txt", "w" ); |
klauss | 119:ee6a53069455 | 432 | if ( ftcpport ) |
klauss | 119:ee6a53069455 | 433 | { |
klauss | 119:ee6a53069455 | 434 | fprintf( ftcpport, "%i\n\r",new_tcp_port_listener ); |
klauss | 119:ee6a53069455 | 435 | fclose( ftcpport ); |
klauss | 132:05cd37f7e007 | 436 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 437 | } |
klauss | 132:05cd37f7e007 | 438 | else |
klauss | 132:05cd37f7e007 | 439 | { |
klauss | 132:05cd37f7e007 | 440 | return ( -1 ); |
klauss | 119:ee6a53069455 | 441 | } |
klauss | 119:ee6a53069455 | 442 | } |
klauss | 119:ee6a53069455 | 443 | |
klauss | 132:05cd37f7e007 | 444 | int fget_tcp_port_listener ( void ) |
klauss | 132:05cd37f7e007 | 445 | { |
klauss | 132:05cd37f7e007 | 446 | char get_tcp_port_listener_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 447 | |
klauss | 132:05cd37f7e007 | 448 | FILE * ftcp_port_listener = fopen ( "/qspi/tcpport.txt", "r" ); |
klauss | 132:05cd37f7e007 | 449 | if ( ftcp_port_listener == NULL ) |
klauss | 132:05cd37f7e007 | 450 | { |
klauss | 132:05cd37f7e007 | 451 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 452 | } else { |
klauss | 132:05cd37f7e007 | 453 | if( fread ( ( void * ) get_tcp_port_listener_buffer, 1, sizeof ( get_tcp_port_listener_buffer ) - 1, ftcp_port_listener ) > 0 ) |
klauss | 132:05cd37f7e007 | 454 | { |
klauss | 132:05cd37f7e007 | 455 | if ( ftcp_port_listener ) fclose ( ftcp_port_listener ); |
klauss | 132:05cd37f7e007 | 456 | return ( atoi ( get_tcp_port_listener_buffer ) ); |
klauss | 132:05cd37f7e007 | 457 | } else { |
klauss | 132:05cd37f7e007 | 458 | if ( ftcp_port_listener ) fclose ( ftcp_port_listener ); |
klauss | 132:05cd37f7e007 | 459 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 460 | } |
klauss | 132:05cd37f7e007 | 461 | } |
klauss | 132:05cd37f7e007 | 462 | } |
klauss | 132:05cd37f7e007 | 463 | |
klauss | 132:05cd37f7e007 | 464 | int fset_fw_ip ( const char * new_fw_ip ) |
klauss | 121:ee02790d00b7 | 465 | { |
klauss | 119:ee6a53069455 | 466 | FILE * ffwip = fopen("/qspi/fw_ip.txt", "w" ); |
klauss | 119:ee6a53069455 | 467 | if ( ffwip ) |
klauss | 119:ee6a53069455 | 468 | { |
klauss | 119:ee6a53069455 | 469 | fprintf(ffwip,"%s\n\r", new_fw_ip ); |
klauss | 119:ee6a53069455 | 470 | fclose( ffwip ); |
klauss | 132:05cd37f7e007 | 471 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 472 | } |
klauss | 132:05cd37f7e007 | 473 | else |
klauss | 132:05cd37f7e007 | 474 | { |
klauss | 132:05cd37f7e007 | 475 | return ( -1 ); |
klauss | 119:ee6a53069455 | 476 | } |
klauss | 119:ee6a53069455 | 477 | } |
klauss | 119:ee6a53069455 | 478 | |
klauss | 132:05cd37f7e007 | 479 | int fset_fw_port ( const int new_fw_port ) |
klauss | 121:ee02790d00b7 | 480 | { |
klauss | 119:ee6a53069455 | 481 | FILE * ffwport = fopen("/qspi/fw_port.txt", "w" ); |
klauss | 119:ee6a53069455 | 482 | if ( ffwport ) |
klauss | 119:ee6a53069455 | 483 | { |
klauss | 119:ee6a53069455 | 484 | fprintf(ffwport,"%i\n\r", new_fw_port ); |
klauss | 119:ee6a53069455 | 485 | fclose( ffwport ); |
klauss | 132:05cd37f7e007 | 486 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 487 | } |
klauss | 132:05cd37f7e007 | 488 | else |
klauss | 132:05cd37f7e007 | 489 | { |
klauss | 132:05cd37f7e007 | 490 | return ( -1 ); |
klauss | 119:ee6a53069455 | 491 | } |
klauss | 119:ee6a53069455 | 492 | } |
klauss | 119:ee6a53069455 | 493 | |
klauss | 132:05cd37f7e007 | 494 | int fget_fw_port ( void ) |
klauss | 132:05cd37f7e007 | 495 | { |
klauss | 132:05cd37f7e007 | 496 | char get_fw_server_port_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 497 | |
klauss | 132:05cd37f7e007 | 498 | FILE * ffw_server_port = fopen ( "/qspi/fw_port.txt", "r" ); |
klauss | 132:05cd37f7e007 | 499 | if ( ffw_server_port == NULL ) |
klauss | 132:05cd37f7e007 | 500 | { |
klauss | 132:05cd37f7e007 | 501 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 502 | } else { |
klauss | 132:05cd37f7e007 | 503 | if( fread ( ( void * ) get_fw_server_port_buffer, 1, sizeof ( get_fw_server_port_buffer ) - 1, ffw_server_port ) > 0 ) |
klauss | 132:05cd37f7e007 | 504 | { |
klauss | 132:05cd37f7e007 | 505 | if ( ffw_server_port ) fclose ( ffw_server_port ); |
klauss | 132:05cd37f7e007 | 506 | return ( atoi ( get_fw_server_port_buffer ) ); |
klauss | 132:05cd37f7e007 | 507 | } else { |
klauss | 132:05cd37f7e007 | 508 | if ( ffw_server_port ) fclose ( ffw_server_port ); |
klauss | 132:05cd37f7e007 | 509 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 510 | } |
klauss | 132:05cd37f7e007 | 511 | } |
klauss | 132:05cd37f7e007 | 512 | } |
klauss | 132:05cd37f7e007 | 513 | |
klauss | 132:05cd37f7e007 | 514 | int fset_max_ext ( const int new_max_ext ) |
klauss | 121:ee02790d00b7 | 515 | { |
klauss | 119:ee6a53069455 | 516 | FILE * fmex = fopen( "/qspi/maxext.txt", "w" ); |
klauss | 119:ee6a53069455 | 517 | if ( fmex ){ |
klauss | 119:ee6a53069455 | 518 | fprintf( fmex, "%i\n\r", new_max_ext ); |
klauss | 119:ee6a53069455 | 519 | fclose( fmex ); |
klauss | 132:05cd37f7e007 | 520 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 521 | } |
klauss | 132:05cd37f7e007 | 522 | else |
klauss | 132:05cd37f7e007 | 523 | { |
klauss | 132:05cd37f7e007 | 524 | return ( -1 ); |
klauss | 119:ee6a53069455 | 525 | } |
klauss | 119:ee6a53069455 | 526 | } |
klauss | 119:ee6a53069455 | 527 | |
klauss | 132:05cd37f7e007 | 528 | int fget_max_ext ( void ) |
klauss | 132:05cd37f7e007 | 529 | { |
klauss | 132:05cd37f7e007 | 530 | char get_max_ext_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 531 | |
klauss | 132:05cd37f7e007 | 532 | FILE * fmax_ext = fopen ( "/qspi/maxext.txt", "r" ); |
klauss | 132:05cd37f7e007 | 533 | if ( fmax_ext == NULL ) |
klauss | 132:05cd37f7e007 | 534 | { |
klauss | 132:05cd37f7e007 | 535 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 536 | } else { |
klauss | 132:05cd37f7e007 | 537 | if( fread ( ( void * ) get_max_ext_buffer, 1, sizeof ( get_max_ext_buffer ) - 1, fmax_ext ) > 0 ) |
klauss | 132:05cd37f7e007 | 538 | { |
klauss | 132:05cd37f7e007 | 539 | if ( fmax_ext ) fclose ( fmax_ext ); |
klauss | 132:05cd37f7e007 | 540 | return ( atoi ( get_max_ext_buffer ) ); |
klauss | 132:05cd37f7e007 | 541 | } else { |
klauss | 132:05cd37f7e007 | 542 | if ( fmax_ext ) fclose ( fmax_ext ); |
klauss | 132:05cd37f7e007 | 543 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 544 | } |
klauss | 132:05cd37f7e007 | 545 | } |
klauss | 132:05cd37f7e007 | 546 | } |
klauss | 132:05cd37f7e007 | 547 | |
klauss | 132:05cd37f7e007 | 548 | int fset_min_ext ( const int new_min_ext ) |
klauss | 121:ee02790d00b7 | 549 | { |
klauss | 81:3656f00ab3db | 550 | FILE * fmin = fopen( "/qspi/minext.txt", "w" ); |
klauss | 119:ee6a53069455 | 551 | if ( fmin ){ |
klauss | 99:e80850c51106 | 552 | fprintf( fmin, "%i\n\r", new_min_ext ); |
klauss | 99:e80850c51106 | 553 | fclose( fmin ); |
klauss | 132:05cd37f7e007 | 554 | return ( 0 ); |
klauss | 132:05cd37f7e007 | 555 | } |
klauss | 132:05cd37f7e007 | 556 | else |
klauss | 132:05cd37f7e007 | 557 | { |
klauss | 132:05cd37f7e007 | 558 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 559 | } |
klauss | 132:05cd37f7e007 | 560 | } |
klauss | 132:05cd37f7e007 | 561 | |
klauss | 132:05cd37f7e007 | 562 | int fget_min_ext ( void ) |
klauss | 132:05cd37f7e007 | 563 | { |
klauss | 132:05cd37f7e007 | 564 | char get_min_ext_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 565 | |
klauss | 132:05cd37f7e007 | 566 | FILE * fmin_ext = fopen ( "/qspi/minext.txt", "r" ); |
klauss | 132:05cd37f7e007 | 567 | if ( fmin_ext == NULL ) |
klauss | 132:05cd37f7e007 | 568 | { |
klauss | 132:05cd37f7e007 | 569 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 570 | } else { |
klauss | 132:05cd37f7e007 | 571 | if( fread ( ( void * ) get_min_ext_buffer, 1, sizeof ( get_min_ext_buffer ) - 1, fmin_ext ) > 0 ) |
klauss | 132:05cd37f7e007 | 572 | { |
klauss | 132:05cd37f7e007 | 573 | if ( fmin_ext ) fclose ( fmin_ext ); |
klauss | 132:05cd37f7e007 | 574 | return ( atoi ( get_min_ext_buffer ) ); |
klauss | 132:05cd37f7e007 | 575 | } else { |
klauss | 132:05cd37f7e007 | 576 | if ( fmin_ext ) fclose ( fmin_ext ); |
klauss | 132:05cd37f7e007 | 577 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 578 | } |
klauss | 99:e80850c51106 | 579 | } |
klauss | 81:3656f00ab3db | 580 | } |
klauss | 81:3656f00ab3db | 581 | |
klauss | 81:3656f00ab3db | 582 | // Print the content of a given file |
klauss | 132:05cd37f7e007 | 583 | int cat ( const char * fname ) |
klauss | 121:ee02790d00b7 | 584 | { |
klauss | 81:3656f00ab3db | 585 | char buff[513]; |
klauss | 81:3656f00ab3db | 586 | int num; |
klauss | 81:3656f00ab3db | 587 | |
klauss | 124:c1b6c893e1c3 | 588 | FILE * fp = fopen( fname, "r" ); |
klauss | 132:05cd37f7e007 | 589 | if ( fp == NULL ) |
klauss | 132:05cd37f7e007 | 590 | { |
klauss | 132:05cd37f7e007 | 591 | pc.printf( "Failed to open %s", fname); |
klauss | 132:05cd37f7e007 | 592 | return ( -3 ); |
klauss | 81:3656f00ab3db | 593 | } |
klauss | 81:3656f00ab3db | 594 | |
klauss | 132:05cd37f7e007 | 595 | while( ( num = fread( buff, 1, 512, fp ) ) > 0 ) |
klauss | 132:05cd37f7e007 | 596 | { |
klauss | 81:3656f00ab3db | 597 | buff[ num ] = '\0'; |
klauss | 132:05cd37f7e007 | 598 | pc.printf( "%s", buff ); |
klauss | 81:3656f00ab3db | 599 | } |
klauss | 124:c1b6c893e1c3 | 600 | |
klauss | 124:c1b6c893e1c3 | 601 | if ( fp ) fclose ( fp ); |
klauss | 132:05cd37f7e007 | 602 | |
klauss | 132:05cd37f7e007 | 603 | return ( 0 ); |
klauss | 114:472502b31a12 | 604 | } |
klauss | 114:472502b31a12 | 605 | |
klauss | 132:05cd37f7e007 | 606 | int fset_shift_port ( const int new_shift_port ) |
klauss | 121:ee02790d00b7 | 607 | { |
klauss | 119:ee6a53069455 | 608 | FILE * shift_port = fopen("/qspi/shift_port.txt", "w" ); |
klauss | 119:ee6a53069455 | 609 | if( shift_port ) |
klauss | 119:ee6a53069455 | 610 | { |
klauss | 119:ee6a53069455 | 611 | fprintf( shift_port,"%i\n\r", new_shift_port ); |
klauss | 119:ee6a53069455 | 612 | fclose( shift_port ); |
klauss | 132:05cd37f7e007 | 613 | return ( 0 ); |
klauss | 114:472502b31a12 | 614 | } |
klauss | 119:ee6a53069455 | 615 | else |
klauss | 119:ee6a53069455 | 616 | { |
klauss | 132:05cd37f7e007 | 617 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 618 | } |
klauss | 132:05cd37f7e007 | 619 | } |
klauss | 132:05cd37f7e007 | 620 | |
klauss | 132:05cd37f7e007 | 621 | |
klauss | 132:05cd37f7e007 | 622 | int fget_shift_port ( void ) |
klauss | 132:05cd37f7e007 | 623 | { |
klauss | 132:05cd37f7e007 | 624 | char get_shift_port_buffer [ 32 ] = ""; |
klauss | 132:05cd37f7e007 | 625 | |
klauss | 132:05cd37f7e007 | 626 | FILE * fshift_port = fopen ( "/qspi/shift_port.txt", "r" ); |
klauss | 132:05cd37f7e007 | 627 | if ( fshift_port == NULL ) |
klauss | 132:05cd37f7e007 | 628 | { |
klauss | 132:05cd37f7e007 | 629 | return ( -1 ); |
klauss | 132:05cd37f7e007 | 630 | } else { |
klauss | 132:05cd37f7e007 | 631 | if( fread ( ( void * ) get_shift_port_buffer, 1, sizeof ( get_shift_port_buffer ) - 1, fshift_port ) > 0 ) |
klauss | 132:05cd37f7e007 | 632 | { |
klauss | 132:05cd37f7e007 | 633 | if ( fshift_port ) fclose ( fshift_port ); |
klauss | 132:05cd37f7e007 | 634 | return ( atoi ( get_shift_port_buffer ) ); |
klauss | 132:05cd37f7e007 | 635 | } else { |
klauss | 132:05cd37f7e007 | 636 | if ( fshift_port ) fclose ( fshift_port ); |
klauss | 132:05cd37f7e007 | 637 | return ( -3 ); |
klauss | 132:05cd37f7e007 | 638 | } |
klauss | 119:ee6a53069455 | 639 | } |
klauss | 121:ee02790d00b7 | 640 | } |
klauss | 121:ee02790d00b7 | 641 | |
klauss | 132:05cd37f7e007 | 642 | int files ( const char type ) |
klauss | 132:05cd37f7e007 | 643 | { |
klauss | 132:05cd37f7e007 | 644 | if ( type == 's' ) { |
klauss | 132:05cd37f7e007 | 645 | pc.printf("Header IP " ); |
klauss | 121:ee02790d00b7 | 646 | cat ("/qspi/myip.txt"); |
klauss | 121:ee02790d00b7 | 647 | |
klauss | 132:05cd37f7e007 | 648 | pc.printf("Header ext "); |
klauss | 121:ee02790d00b7 | 649 | cat("/qspi/myext.txt"); |
klauss | 121:ee02790d00b7 | 650 | |
klauss | 132:05cd37f7e007 | 651 | pc.printf("Header port "); |
klauss | 121:ee02790d00b7 | 652 | cat("/qspi/mysipport.txt"); |
klauss | 121:ee02790d00b7 | 653 | |
klauss | 132:05cd37f7e007 | 654 | pc.printf("Server IP "); |
klauss | 121:ee02790d00b7 | 655 | cat("/qspi/serverip.txt"); |
klauss | 121:ee02790d00b7 | 656 | |
klauss | 132:05cd37f7e007 | 657 | pc.printf("Server ext "); |
klauss | 121:ee02790d00b7 | 658 | cat("/qspi/peerext.txt"); |
klauss | 121:ee02790d00b7 | 659 | |
klauss | 132:05cd37f7e007 | 660 | pc.printf("Server port "); |
klauss | 121:ee02790d00b7 | 661 | cat("/qspi/serverport.txt"); |
klauss | 121:ee02790d00b7 | 662 | |
klauss | 132:05cd37f7e007 | 663 | pc.printf("Mascara de rede "); |
klauss | 121:ee02790d00b7 | 664 | cat("/qspi/mymask.txt"); |
klauss | 121:ee02790d00b7 | 665 | |
klauss | 132:05cd37f7e007 | 666 | pc.printf("Gateway IP "); |
klauss | 121:ee02790d00b7 | 667 | cat("/qspi/mygateway.txt"); |
klauss | 121:ee02790d00b7 | 668 | |
klauss | 132:05cd37f7e007 | 669 | pc.printf("UDP Port "); |
klauss | 121:ee02790d00b7 | 670 | cat("/qspi/udpport.txt"); |
klauss | 121:ee02790d00b7 | 671 | |
klauss | 132:05cd37f7e007 | 672 | pc.printf("TCP Port "); |
klauss | 121:ee02790d00b7 | 673 | cat("/qspi/tcpport.txt"); |
klauss | 121:ee02790d00b7 | 674 | |
klauss | 132:05cd37f7e007 | 675 | pc.printf("FW Server IP "); |
klauss | 121:ee02790d00b7 | 676 | cat("/qspi/fw_ip.txt"); |
klauss | 121:ee02790d00b7 | 677 | |
klauss | 132:05cd37f7e007 | 678 | pc.printf("FW Server Port "); |
klauss | 121:ee02790d00b7 | 679 | cat("/qspi/fw_port.txt"); |
klauss | 121:ee02790d00b7 | 680 | |
klauss | 132:05cd37f7e007 | 681 | pc.printf("Max Ext "); |
klauss | 121:ee02790d00b7 | 682 | cat("/qspi/maxext.txt"); |
klauss | 121:ee02790d00b7 | 683 | |
klauss | 132:05cd37f7e007 | 684 | pc.printf("Min Ext "); |
klauss | 121:ee02790d00b7 | 685 | cat("/qspi/minext.txt"); |
klauss | 121:ee02790d00b7 | 686 | |
klauss | 132:05cd37f7e007 | 687 | pc.printf("Shift Port "); |
klauss | 121:ee02790d00b7 | 688 | cat("/qspi/shift_port.txt"); |
klauss | 121:ee02790d00b7 | 689 | |
klauss | 132:05cd37f7e007 | 690 | pc.printf("Clock Server IP "); |
klauss | 121:ee02790d00b7 | 691 | cat("/qspi/serverip.txt"); |
klauss | 132:05cd37f7e007 | 692 | |
klauss | 132:05cd37f7e007 | 693 | return ( 0 ); |
klauss | 121:ee02790d00b7 | 694 | } |
klauss | 121:ee02790d00b7 | 695 | |
klauss | 132:05cd37f7e007 | 696 | return ( -1 ); |
klauss | 121:ee02790d00b7 | 697 | } |
klauss | 121:ee02790d00b7 | 698 | |
klauss | 121:ee02790d00b7 | 699 | int init_fsystem ( void ) |
klauss | 121:ee02790d00b7 | 700 | { |
klauss | 121:ee02790d00b7 | 701 | // init file system and check if files exist |
klauss | 121:ee02790d00b7 | 702 | int return_value = 0; |
klauss | 121:ee02790d00b7 | 703 | |
klauss | 121:ee02790d00b7 | 704 | if (!qspifs.isformatted()) { |
klauss | 121:ee02790d00b7 | 705 | qspifs.format(); |
klauss | 121:ee02790d00b7 | 706 | return_value |= BIT0; |
klauss | 121:ee02790d00b7 | 707 | } |
klauss | 121:ee02790d00b7 | 708 | |
klauss | 121:ee02790d00b7 | 709 | return ( return_value |= BIT1 ); |
klauss | 135:2f4290590e51 | 710 | } |
klauss | 135:2f4290590e51 | 711 | |
klauss | 135:2f4290590e51 | 712 | int fset_cbx_detach_mode ( const bool new_cbx_detach_mode ) |
klauss | 135:2f4290590e51 | 713 | { |
klauss | 135:2f4290590e51 | 714 | FILE * file_cbx_detach_mode = fopen ("/qspi/cbx_detach_mode.txt", "w" ); |
klauss | 135:2f4290590e51 | 715 | if ( file_cbx_detach_mode ) |
klauss | 135:2f4290590e51 | 716 | { |
klauss | 135:2f4290590e51 | 717 | fprintf ( file_cbx_detach_mode,"%i\n\r", ( new_cbx_detach_mode ) ? 1 : 0 ); |
klauss | 135:2f4290590e51 | 718 | fclose ( file_cbx_detach_mode ); |
klauss | 135:2f4290590e51 | 719 | return ( 0 ); |
klauss | 135:2f4290590e51 | 720 | } |
klauss | 135:2f4290590e51 | 721 | else |
klauss | 135:2f4290590e51 | 722 | { |
klauss | 135:2f4290590e51 | 723 | return ( -1 ); |
klauss | 135:2f4290590e51 | 724 | } |
klauss | 135:2f4290590e51 | 725 | } |
klauss | 135:2f4290590e51 | 726 | |
klauss | 135:2f4290590e51 | 727 | bool fget_cbx_detach_mode ( int * err ) |
klauss | 135:2f4290590e51 | 728 | { |
klauss | 135:2f4290590e51 | 729 | char get_cbx_detach_mode_buffer [ 32 ] = ""; |
klauss | 135:2f4290590e51 | 730 | |
klauss | 135:2f4290590e51 | 731 | FILE * file_cbx_detach_mode = fopen ( "/qspi/cbx_detach_mode.txt", "r" ); |
klauss | 135:2f4290590e51 | 732 | if ( file_cbx_detach_mode == NULL ) |
klauss | 135:2f4290590e51 | 733 | { |
klauss | 135:2f4290590e51 | 734 | *err = -1; |
klauss | 135:2f4290590e51 | 735 | } else { |
klauss | 135:2f4290590e51 | 736 | if( fread ( ( void * ) get_cbx_detach_mode_buffer, 1, sizeof ( get_cbx_detach_mode_buffer ) - 1, file_cbx_detach_mode ) > 0 ) |
klauss | 135:2f4290590e51 | 737 | { |
klauss | 135:2f4290590e51 | 738 | if ( file_cbx_detach_mode ) fclose ( file_cbx_detach_mode ); |
klauss | 135:2f4290590e51 | 739 | int tmp = atoi ( get_cbx_detach_mode_buffer ); |
klauss | 135:2f4290590e51 | 740 | |
klauss | 135:2f4290590e51 | 741 | return ( ( tmp == 1 ) ? true : false ); |
klauss | 135:2f4290590e51 | 742 | } else { |
klauss | 135:2f4290590e51 | 743 | if ( file_cbx_detach_mode ) fclose ( file_cbx_detach_mode ); |
klauss | 135:2f4290590e51 | 744 | *err = -3; |
klauss | 135:2f4290590e51 | 745 | } |
klauss | 135:2f4290590e51 | 746 | } |
klauss | 135:2f4290590e51 | 747 | |
klauss | 135:2f4290590e51 | 748 | return false; |
klauss | 135:2f4290590e51 | 749 | } |
klauss | 135:2f4290590e51 | 750 | |
klauss | 135:2f4290590e51 | 751 | int fset_cbx_wake_mode ( const bool new_cbx_wake_mode ) |
klauss | 135:2f4290590e51 | 752 | { |
klauss | 135:2f4290590e51 | 753 | FILE * file_cbx_wake_mode = fopen ("/qspi/cbx_wake_mode.txt", "w" ); |
klauss | 135:2f4290590e51 | 754 | if ( file_cbx_wake_mode ) |
klauss | 135:2f4290590e51 | 755 | { |
klauss | 135:2f4290590e51 | 756 | fprintf ( file_cbx_wake_mode,"%i\n\r", ( new_cbx_wake_mode ) ? 1 : 0 ); |
klauss | 135:2f4290590e51 | 757 | fclose ( file_cbx_wake_mode ); |
klauss | 135:2f4290590e51 | 758 | return ( 0 ); |
klauss | 135:2f4290590e51 | 759 | } |
klauss | 135:2f4290590e51 | 760 | else |
klauss | 135:2f4290590e51 | 761 | { |
klauss | 135:2f4290590e51 | 762 | return ( -1 ); |
klauss | 135:2f4290590e51 | 763 | } |
klauss | 135:2f4290590e51 | 764 | } |
klauss | 135:2f4290590e51 | 765 | |
klauss | 135:2f4290590e51 | 766 | bool fget_cbx_wake_mode ( int * err ) |
klauss | 135:2f4290590e51 | 767 | { |
klauss | 135:2f4290590e51 | 768 | char get_cbx_wake_mode_buffer [ 32 ] = ""; |
klauss | 135:2f4290590e51 | 769 | |
klauss | 135:2f4290590e51 | 770 | FILE * file_cbx_wake_mode = fopen ( "/qspi/cbx_wake_mode.txt", "r" ); |
klauss | 135:2f4290590e51 | 771 | if ( file_cbx_wake_mode == NULL ) |
klauss | 135:2f4290590e51 | 772 | { |
klauss | 135:2f4290590e51 | 773 | *err = -1; |
klauss | 135:2f4290590e51 | 774 | } else { |
klauss | 135:2f4290590e51 | 775 | if( fread ( ( void * ) get_cbx_wake_mode_buffer, 1, sizeof ( get_cbx_wake_mode_buffer ) - 1, file_cbx_wake_mode ) > 0 ) |
klauss | 135:2f4290590e51 | 776 | { |
klauss | 135:2f4290590e51 | 777 | if ( file_cbx_wake_mode ) fclose ( file_cbx_wake_mode ); |
klauss | 135:2f4290590e51 | 778 | int tmp = atoi ( get_cbx_wake_mode_buffer ); |
klauss | 135:2f4290590e51 | 779 | |
klauss | 135:2f4290590e51 | 780 | return ( ( tmp == 1 ) ? true : false ); |
klauss | 135:2f4290590e51 | 781 | } else { |
klauss | 135:2f4290590e51 | 782 | if ( file_cbx_wake_mode ) fclose ( file_cbx_wake_mode ); |
klauss | 135:2f4290590e51 | 783 | *err = -3; |
klauss | 135:2f4290590e51 | 784 | } |
klauss | 135:2f4290590e51 | 785 | } |
klauss | 135:2f4290590e51 | 786 | |
klauss | 135:2f4290590e51 | 787 | return false; |
klauss | 135:2f4290590e51 | 788 | } |
klauss | 135:2f4290590e51 | 789 | |
klauss | 135:2f4290590e51 | 790 | int fset_cbx_mode ( const uint8_t new_cbx_mode ) |
klauss | 135:2f4290590e51 | 791 | { |
klauss | 135:2f4290590e51 | 792 | FILE * file_cbx_mode = fopen ("/qspi/cbx_mode.txt", "w" ); |
klauss | 135:2f4290590e51 | 793 | if ( file_cbx_mode ) |
klauss | 135:2f4290590e51 | 794 | { |
klauss | 135:2f4290590e51 | 795 | fprintf ( file_cbx_mode,"%i\n\r", new_cbx_mode ); |
klauss | 135:2f4290590e51 | 796 | fclose ( file_cbx_mode ); |
klauss | 135:2f4290590e51 | 797 | return ( 0 ); |
klauss | 135:2f4290590e51 | 798 | } |
klauss | 135:2f4290590e51 | 799 | else |
klauss | 135:2f4290590e51 | 800 | { |
klauss | 135:2f4290590e51 | 801 | return ( -1 ); |
klauss | 135:2f4290590e51 | 802 | } |
klauss | 135:2f4290590e51 | 803 | } |
klauss | 135:2f4290590e51 | 804 | |
klauss | 135:2f4290590e51 | 805 | int fget_cbx_mode ( void ) |
klauss | 135:2f4290590e51 | 806 | { |
klauss | 135:2f4290590e51 | 807 | char get_cbx_mode_buffer [ 32 ] = ""; |
klauss | 135:2f4290590e51 | 808 | |
klauss | 135:2f4290590e51 | 809 | FILE * file_cbx_mode = fopen ( "/qspi/cbx_mode.txt", "r" ); |
klauss | 135:2f4290590e51 | 810 | if ( file_cbx_mode == NULL ) |
klauss | 135:2f4290590e51 | 811 | { |
klauss | 135:2f4290590e51 | 812 | return ( -1 ); |
klauss | 135:2f4290590e51 | 813 | } else { |
klauss | 135:2f4290590e51 | 814 | if( fread ( ( void * ) get_cbx_mode_buffer, 1, sizeof ( get_cbx_mode_buffer ) - 1, file_cbx_mode ) > 0 ) |
klauss | 135:2f4290590e51 | 815 | { |
klauss | 135:2f4290590e51 | 816 | if ( file_cbx_mode ) fclose ( file_cbx_mode ); |
klauss | 135:2f4290590e51 | 817 | return ( atoi ( get_cbx_mode_buffer ) ); |
klauss | 135:2f4290590e51 | 818 | } else { |
klauss | 135:2f4290590e51 | 819 | if ( file_cbx_mode ) fclose ( file_cbx_mode ); |
klauss | 135:2f4290590e51 | 820 | return ( -3 ); |
klauss | 135:2f4290590e51 | 821 | } |
klauss | 135:2f4290590e51 | 822 | } |
klauss | 119:ee6a53069455 | 823 | } |