Modularizando o src

Dependencies:   EALib EthernetInterface_vz mbed-rtos mbed

Fork of header_main_colinas_V0-20-09-14 by VZTECH

Committer:
klauss
Date:
Wed Mar 18 13:33:54 2015 +0000
Revision:
108:18a3702650f3
Parent:
107:cf1e43414adb
Child:
109:a5b8264ffbbc
wip - bug udp porta, corrompendo v_cb->size () em ultima analise

Who changed what in which revision?

UserRevisionLine numberNew contents of line
klauss 44:cc4996469404 1 #include "prompt.h"
klauss 45:c80574f24dc3 2
klauss 60:b4ec6beb3be3 3 bool flood_silence = false;
klauss 65:0b653cfe95db 4 bool delayed_flood = false;
klauss 63:0d95da692bb4 5
klauss 78:1353744f01e1 6 Timer tcp_timer;
klauss 105:a930035b6556 7
klauss 78:1353744f01e1 8 bool tcp_alive = false;
klauss 105:a930035b6556 9 bool serial_pc_pending = false;
klauss 19:ab2088e0dec6 10
klauss 58:af7e8788f106 11 char __debug_buf__[ DEBUGBUFSIZE ];
klauss 35:96885a7931f0 12 char * debug_buf = __debug_buf__;
klauss 58:af7e8788f106 13 char last_cmd[ DEBUGBUFSIZE ];
klauss 58:af7e8788f106 14 char tmp_cmd[ DEBUGBUFSIZE ] = "help";
klauss 30:8dfb6d8de53d 15 char last_debug_buf[ DEBUGBUFSIZE ] = "help";
klauss 105:a930035b6556 16 char eth_buffer[ __PROMPT_ETH_BUFFER_SIZE__ ];
klauss 108:18a3702650f3 17 char eth_udp_buffer[ __PROMPT_ETH_BUFFER_SIZE__ ];
klauss 105:a930035b6556 18 char gp_buff[ DEBUGBUFSIZE ];
klauss 60:b4ec6beb3be3 19
klauss 106:a34fcf9f0e02 20 FILE *fip, *fmask, *fgate, *fport, *fsip, *fsport, *fext, *fserext, *fudpport, *ftcpport, *ffwip, *ffwport, *fmax, *fmin, *fshift_port;
klauss 81:3656f00ab3db 21
klauss 19:ab2088e0dec6 22 uint8_t bufptr = 0;
klauss 35:96885a7931f0 23 uint8_t last_bufptr = 0;
klauss 19:ab2088e0dec6 24
klauss 105:a930035b6556 25 void init_prompt_eth()
klauss 105:a930035b6556 26 {
klauss 105:a930035b6556 27 int udp_bind = udp_client.bind( UDP_PORT_LISTENER );
klauss 105:a930035b6556 28 udp_client.set_blocking( false, 0 );
klauss 106:a34fcf9f0e02 29 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\n******* Prompt eth UDP Ready [ %d ] *******\r\n", udp_bind );
klauss 19:ab2088e0dec6 30
klauss 105:a930035b6556 31 int tcp_bind = tcp_server.bind( TCP_PORT_LISTENER );
klauss 89:0fe315117b00 32 tcp_server.set_blocking( false, 0 );
klauss 105:a930035b6556 33 int tcp_listen = tcp_server.listen();
klauss 106:a34fcf9f0e02 34 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\n******* Prompt eth TCP Ready [ %d, %d ] *******\r\n", tcp_bind, tcp_listen );
klauss 19:ab2088e0dec6 35 }
klauss 19:ab2088e0dec6 36
klauss 28:94aec56c6329 37 // main prompt process
klauss 105:a930035b6556 38 char * prompt_process( char * msg_from_cb, int length )
klauss 103:e3cabfc2f533 39 {
klauss 28:94aec56c6329 40 //FIXME dar flush na serial
klauss 19:ab2088e0dec6 41 volatile char b = 0;
klauss 19:ab2088e0dec6 42 static uint8_t bufret = 0;
klauss 30:8dfb6d8de53d 43 static Timer flood_timeout;
klauss 60:b4ec6beb3be3 44 static Timer flood_silence_timer;
klauss 60:b4ec6beb3be3 45 static uint8_t id_msg = 0x10;
klauss 60:b4ec6beb3be3 46 static int start_ext, end_ext, ext_count;
klauss 36:728498a78e1e 47 bool miss_match = true;
klauss 105:a930035b6556 48 uint8_t write_buffer[ CB_BUFFER_SIZE ];
klauss 103:e3cabfc2f533 49
klauss 103:e3cabfc2f533 50 if( flood_timeout.read() > 60 ) {
klauss 45:c80574f24dc3 51 pflood = 0;
klauss 45:c80574f24dc3 52 flood_timeout.stop();
klauss 45:c80574f24dc3 53 flood_timeout.reset();
klauss 45:c80574f24dc3 54 }
klauss 103:e3cabfc2f533 55
klauss 103:e3cabfc2f533 56 if( tcp_timer.read() >= TCP_IDLE_MAX_TIME ) {
klauss 103:e3cabfc2f533 57 tcp_alive = false;
klauss 103:e3cabfc2f533 58 tcp_timer.stop();
klauss 103:e3cabfc2f533 59 tcp_timer.reset();
klauss 103:e3cabfc2f533 60 tcp_session = false;
klauss 103:e3cabfc2f533 61 debug_buf = __debug_buf__;
klauss 103:e3cabfc2f533 62 bufptr = last_bufptr;
klauss 103:e3cabfc2f533 63 bufret = 0;
klauss 103:e3cabfc2f533 64 from_eth = false;
klauss 103:e3cabfc2f533 65 tcp_client.close();
klauss 103:e3cabfc2f533 66 return( NULL );
klauss 105:a930035b6556 67 }
klauss 105:a930035b6556 68
klauss 105:a930035b6556 69 if( udp_query )
klauss 105:a930035b6556 70 {
klauss 105:a930035b6556 71 if( msg_from_cb != NULL )
klauss 105:a930035b6556 72 {
klauss 105:a930035b6556 73 last_bufptr = bufptr;
klauss 105:a930035b6556 74 if( ( length > 2 ) && ( msg_from_cb[ length - 2 ] == '\r' ) ) msg_from_cb[ length - 2 ] = 0;
klauss 105:a930035b6556 75
klauss 105:a930035b6556 76 if( ( length > 1 ) && ( msg_from_cb[ length - 1 ] == '\n' ) ) msg_from_cb[ length - 1 ] = 0;
klauss 103:e3cabfc2f533 77
klauss 105:a930035b6556 78 if( ( length == 1 ) && msg_from_cb[ 0 ] == 0x0A ) strcpy( msg_from_cb, "\r" );
klauss 105:a930035b6556 79
klauss 105:a930035b6556 80 bufptr = strlen( msg_from_cb );
klauss 105:a930035b6556 81 debug_buf = msg_from_cb;
klauss 103:e3cabfc2f533 82 from_eth = true;
klauss 103:e3cabfc2f533 83 bufret = 1;
klauss 105:a930035b6556 84 }
klauss 105:a930035b6556 85 }
klauss 105:a930035b6556 86 else
klauss 105:a930035b6556 87 {
klauss 105:a930035b6556 88 if( !tcp_server.accept( tcp_client ) )
klauss 105:a930035b6556 89 {
klauss 105:a930035b6556 90 tcp_session = true;
klauss 105:a930035b6556 91 tcp_timer.start();
klauss 105:a930035b6556 92 last_bufptr = bufptr;
klauss 105:a930035b6556 93 for( register int i = 0; i < __PROMPT_ETH_BUFFER_SIZE__; i++ ) eth_buffer[ i ] = 0;
klauss 105:a930035b6556 94 }
klauss 105:a930035b6556 95 if( tcp_session && !udp_query )
klauss 105:a930035b6556 96 {
klauss 105:a930035b6556 97 tcp_client.set_blocking( false, 0 );
klauss 105:a930035b6556 98 //for( register int i = 0; i < __PROMPT_ETH_BUFFER_SIZE__; i++ ) eth_buffer[ i ] = 0;
klauss 105:a930035b6556 99 int n = tcp_client.receive( eth_buffer, sizeof( eth_buffer ) - 1 );
klauss 105:a930035b6556 100 if( n > 0 ) {
klauss 103:e3cabfc2f533 101 tcp_timer.reset();
klauss 105:a930035b6556 102
klauss 105:a930035b6556 103 if( ( n > 2 ) && ( eth_buffer[ n - 2 ] == '\r' ) ) eth_buffer[ n - 2 ] = 0;
klauss 105:a930035b6556 104
klauss 105:a930035b6556 105 if( ( n > 1 ) && ( eth_buffer[ n - 1 ] == '\n' ) ) eth_buffer[ n - 1 ] = 0;
klauss 105:a930035b6556 106
klauss 105:a930035b6556 107 if( ( n == 1 ) && eth_buffer[ 0 ] == 0x0A ) strcpy( eth_buffer, "\r" );
klauss 105:a930035b6556 108
klauss 105:a930035b6556 109 bufptr = strlen( eth_buffer );
klauss 105:a930035b6556 110 debug_buf = eth_buffer;
klauss 105:a930035b6556 111 from_eth = true;
klauss 105:a930035b6556 112 bufret = 1;
klauss 105:a930035b6556 113
klauss 108:18a3702650f3 114 if( !( strcmp( eth_buffer, "quit" ) ) )
klauss 108:18a3702650f3 115 {
klauss 108:18a3702650f3 116 tcp_timer.stop();
klauss 105:a930035b6556 117 tcp_timer.reset();
klauss 105:a930035b6556 118 debug_buf = __debug_buf__;
klauss 105:a930035b6556 119 bufptr = last_bufptr;
klauss 105:a930035b6556 120 from_eth = false;
klauss 105:a930035b6556 121 tcp_session = false;
klauss 105:a930035b6556 122 tcp_client.close();
klauss 105:a930035b6556 123 bufret = 0;
klauss 105:a930035b6556 124 return( NULL );
klauss 105:a930035b6556 125 }
klauss 105:a930035b6556 126 } else {
klauss 48:195c97f12e8e 127 debug_buf = __debug_buf__;
klauss 48:195c97f12e8e 128 bufptr = last_bufptr;
klauss 57:78f7191a8b69 129 from_eth = false;
klauss 45:c80574f24dc3 130 }
klauss 103:e3cabfc2f533 131 }
klauss 53:bb492a8f115a 132 }
klauss 105:a930035b6556 133
klauss 105:a930035b6556 134 if( ( !from_eth ) && ( !udp_query ) )
klauss 105:a930035b6556 135 {
klauss 105:a930035b6556 136 if( pc.readable() ) {
klauss 53:bb492a8f115a 137 b = pc.getc();
klauss 105:a930035b6556 138 if( b == 0x0D ) {
klauss 105:a930035b6556 139 // enter
klauss 53:bb492a8f115a 140 bufret = 1;
klauss 105:a930035b6556 141 if( from_eth ) serial_pc_pending = true;
klauss 105:a930035b6556 142 } else {
klauss 53:bb492a8f115a 143 pc.putc( b );
klauss 105:a930035b6556 144 if( b == 0x08 || b == 0x7F ) {
klauss 105:a930035b6556 145 // BS | DEL
klauss 105:a930035b6556 146 if( bufptr > 0 ) {
klauss 105:a930035b6556 147 __debug_buf__[ --bufptr ] = 0;
klauss 105:a930035b6556 148 }
klauss 105:a930035b6556 149 } else if( b == 0x09 ) {
klauss 53:bb492a8f115a 150 // ignore tab
klauss 105:a930035b6556 151 } else {
klauss 105:a930035b6556 152 //debug_msg("--%c,%d--%d--", b, bufptr, last_bufptr );
klauss 105:a930035b6556 153 __debug_buf__[ bufptr ] = b;
klauss 53:bb492a8f115a 154 bufptr++;
klauss 42:480335bdde12 155 }
klauss 104:62646ef786a3 156 last_bufptr = bufptr;
klauss 31:bb5fb28a77df 157 }
klauss 53:bb492a8f115a 158 }
klauss 48:195c97f12e8e 159 }
klauss 105:a930035b6556 160
klauss 105:a930035b6556 161 if( flood_silence ) {
klauss 105:a930035b6556 162 if( flood_silence_timer.read_ms() > 250 ) {
klauss 60:b4ec6beb3be3 163 char cmd[ 16 ] = "flood off";
klauss 60:b4ec6beb3be3 164 int str_end = strlen( cmd );
klauss 60:b4ec6beb3be3 165 cmd[ str_end ] = 0x0D;
klauss 60:b4ec6beb3be3 166 cmd[ str_end + 1 ] = 0x00;
klauss 105:a930035b6556 167
klauss 60:b4ec6beb3be3 168 int port = convert_ext_to_port( ext_count );
klauss 105:a930035b6556 169 send2callboxes( build_cb_package( ext_count, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 170 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nSilence sent to ext=%d port=%d", ext_count, port );
klauss 105:a930035b6556 171
klauss 105:a930035b6556 172 if( tcp_session && !udp_query ) {
klauss 60:b4ec6beb3be3 173 snprintf( eth_buffer, __PROMPT_ETH_BUFFER_SIZE__, "\r\nSilence sent to ext=%d port=%d", ext_count, port );
klauss 60:b4ec6beb3be3 174 tcp_client.send_all( eth_buffer, strlen( eth_buffer ) );
klauss 105:a930035b6556 175 } else if( udp_query ) {
klauss 60:b4ec6beb3be3 176 snprintf( eth_buffer, __PROMPT_ETH_BUFFER_SIZE__, "\r\nSilence sent to ext=%d port=%d", ext_count, port );
klauss 105:a930035b6556 177 udp_query_send_msg( eth_buffer );
klauss 60:b4ec6beb3be3 178 }
klauss 60:b4ec6beb3be3 179 flood_silence_timer.reset();
klauss 105:a930035b6556 180
klauss 103:e3cabfc2f533 181 // importante para o uso da funçao silence
klauss 105:a930035b6556 182 if( ++ext_count > end_ext ) {
klauss 60:b4ec6beb3be3 183 flood_silence = false;
klauss 60:b4ec6beb3be3 184 flood_silence_timer.stop();
klauss 60:b4ec6beb3be3 185 flood_silence_timer.reset();
klauss 105:a930035b6556 186
klauss 104:62646ef786a3 187 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\n> " );
klauss 105:a930035b6556 188 if( tcp_session && !udp_query ) {
klauss 60:b4ec6beb3be3 189 snprintf( eth_buffer, __PROMPT_ETH_BUFFER_SIZE__, "\r\n> " );
klauss 60:b4ec6beb3be3 190 tcp_client.send_all( eth_buffer, strlen( eth_buffer ) );
klauss 105:a930035b6556 191 } else if( udp_query ) {
klauss 60:b4ec6beb3be3 192 snprintf( eth_buffer, __PROMPT_ETH_BUFFER_SIZE__, "\r\n> " );
klauss 105:a930035b6556 193 udp_query_send_msg( eth_buffer );
klauss 60:b4ec6beb3be3 194 }
klauss 60:b4ec6beb3be3 195 }
klauss 60:b4ec6beb3be3 196 }
klauss 60:b4ec6beb3be3 197 }
klauss 105:a930035b6556 198
klauss 105:a930035b6556 199 if( delayed_flood ) {
klauss 65:0b653cfe95db 200 tflood.start();
klauss 65:0b653cfe95db 201 tflood.reset();
klauss 65:0b653cfe95db 202 floodcount =0;
klauss 65:0b653cfe95db 203 pflood = 1;
klauss 65:0b653cfe95db 204 flood_timeout.start();
klauss 65:0b653cfe95db 205 delayed_flood = false;
klauss 104:62646ef786a3 206 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFlood ON\n\r");
klauss 105:a930035b6556 207 //FIXME avaliar melhor essa expressao
klauss 105:a930035b6556 208 if( from_eth ) {
klauss 65:0b653cfe95db 209 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Flood On\n\r" );
klauss 65:0b653cfe95db 210 }
klauss 65:0b653cfe95db 211 }
klauss 105:a930035b6556 212
klauss 105:a930035b6556 213 if( serial_pc_pending && !from_eth ) {
klauss 105:a930035b6556 214 bufret = 1;
klauss 105:a930035b6556 215 }
klauss 45:c80574f24dc3 216 // Prompt commands here
klauss 58:af7e8788f106 217 if ( bufret == 1 ) {
klauss 105:a930035b6556 218 static unsigned int promptcb_last_ext = 0;
klauss 105:a930035b6556 219 static unsigned int promptcb_last_port = 0;
klauss 55:2f5e7374af9d 220 static char promptcb_last_cmd[ 300 ];
klauss 60:b4ec6beb3be3 221
klauss 58:af7e8788f106 222 strcpy( tmp_cmd, debug_buf );
klauss 105:a930035b6556 223 if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "." ) ) {
klauss 45:c80574f24dc3 224 miss_match = false;
klauss 58:af7e8788f106 225 strcpy( debug_buf, last_cmd );
klauss 58:af7e8788f106 226 strcpy( tmp_cmd, debug_buf );
klauss 105:a930035b6556 227 } else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "+" ) ) {
klauss 59:e1e300880d2d 228 miss_match = false;
klauss 59:e1e300880d2d 229 strcpy( debug_buf, "flood on" );
klauss 59:e1e300880d2d 230 strcpy( tmp_cmd, debug_buf );
klauss 105:a930035b6556 231 } else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "-" ) ) {
klauss 59:e1e300880d2d 232 miss_match = false;
klauss 59:e1e300880d2d 233 strcpy( debug_buf, "flood off" );
klauss 59:e1e300880d2d 234 strcpy( tmp_cmd, debug_buf );
klauss 105:a930035b6556 235 } else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "++ ", 3 ) ) {
klauss 59:e1e300880d2d 236 miss_match = false;
klauss 65:0b653cfe95db 237 delayed_flood = true;
klauss 59:e1e300880d2d 238 int ext = atoi( debug_buf + 3 );
klauss 59:e1e300880d2d 239 sprintf( debug_buf, "pcb %i flood on", ext );
klauss 105:a930035b6556 240 } else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "-- ", 3 ) ) {
klauss 59:e1e300880d2d 241 miss_match = false;
klauss 59:e1e300880d2d 242 int ext = atoi( debug_buf + 3 );
klauss 104:62646ef786a3 243 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFlood OFF\n\r");
klauss 105:a930035b6556 244 if( from_eth ) {
klauss 59:e1e300880d2d 245 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Flood OFF\n\r" );
klauss 59:e1e300880d2d 246 }
klauss 59:e1e300880d2d 247 pflood = 0;
klauss 59:e1e300880d2d 248 tflood.stop();
klauss 59:e1e300880d2d 249 flood_timeout.reset();
klauss 105:a930035b6556 250 sprintf( debug_buf, "pcb %i flood off", ext );
klauss 45:c80574f24dc3 251 }
klauss 105:a930035b6556 252
klauss 48:195c97f12e8e 253 //tratamento dos enters
klauss 105:a930035b6556 254 if( !bufptr ) {
klauss 45:c80574f24dc3 255 miss_match = false;
klauss 105:a930035b6556 256 } else if( bufptr == 1 ) {
klauss 48:195c97f12e8e 257 if( debug_buf[ 0 ] == 0x0D || debug_buf[ 0 ] == 0x0D ) miss_match = false;
klauss 48:195c97f12e8e 258 }
klauss 105:a930035b6556 259
klauss 105:a930035b6556 260 if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "ifconfig" ) ) {
klauss 45:c80574f24dc3 261 miss_match = false;
klauss 104:62646ef786a3 262 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r");
klauss 45:c80574f24dc3 263 files('s');
klauss 106:a34fcf9f0e02 264 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 106:a34fcf9f0e02 265 bufptr = 0;
klauss 45:c80574f24dc3 266 }
klauss 105:a930035b6556 267
klauss 105:a930035b6556 268 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "rx" ) ) {
klauss 62:07e5bdc9f8f7 269 miss_match = false;
klauss 62:07e5bdc9f8f7 270 rx = true;
klauss 62:07e5bdc9f8f7 271 }
klauss 105:a930035b6556 272
klauss 105:a930035b6556 273 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "tx" ) ) {
klauss 63:0d95da692bb4 274 miss_match = false;
klauss 63:0d95da692bb4 275 tx = true;
klauss 63:0d95da692bb4 276 }
klauss 105:a930035b6556 277
klauss 105:a930035b6556 278 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "stats" ) ) {
klauss 63:0d95da692bb4 279 miss_match = false;
klauss 63:0d95da692bb4 280 stats = true;
klauss 105:a930035b6556 281 } else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "reset_stats" ) ) {
klauss 63:0d95da692bb4 282 miss_match = false;
klauss 63:0d95da692bb4 283 r_stats = true;
klauss 63:0d95da692bb4 284 }
klauss 105:a930035b6556 285
klauss 105:a930035b6556 286 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "format" ) ) {
klauss 45:c80574f24dc3 287 miss_match = false;
klauss 104:62646ef786a3 288 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFormatando o sistema de arquivos... espere o sistema reiniciar\n\r");
klauss 105:a930035b6556 289
klauss 105:a930035b6556 290 if( from_eth )
klauss 105:a930035b6556 291 {
klauss 105:a930035b6556 292 char msg[ 32 ];
klauss 105:a930035b6556 293 snprintf( msg, 32, "Not Allowed\n\r");
klauss 105:a930035b6556 294
klauss 105:a930035b6556 295 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 296 tcp_client.send_all( msg, strlen( msg ) );
klauss 105:a930035b6556 297 } else if( udp_query ) {
klauss 105:a930035b6556 298 udp_query_send_msg( msg );
klauss 105:a930035b6556 299 }
klauss 105:a930035b6556 300 } else {
klauss 62:07e5bdc9f8f7 301 files('e');
klauss 62:07e5bdc9f8f7 302 files('w');
klauss 62:07e5bdc9f8f7 303 __disable_irq();
klauss 62:07e5bdc9f8f7 304 NVIC_SystemReset();
klauss 42:480335bdde12 305 }
klauss 45:c80574f24dc3 306 }
klauss 45:c80574f24dc3 307
klauss 59:e1e300880d2d 308 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "ipset ", 6 )) {
klauss 45:c80574f24dc3 309 miss_match = false;
klauss 54:448d57291be6 310 set_ip( debug_buf + 6 );
klauss 45:c80574f24dc3 311 files('s');
klauss 45:c80574f24dc3 312 }
klauss 105:a930035b6556 313
klauss 105:a930035b6556 314 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "extset ", 7 ) ) {
klauss 45:c80574f24dc3 315 miss_match = false;
klauss 55:2f5e7374af9d 316 set_header_ext( atoi( debug_buf + 7 ) );
klauss 45:c80574f24dc3 317 files('s');
klauss 45:c80574f24dc3 318 }
klauss 105:a930035b6556 319
klauss 105:a930035b6556 320 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "serextset ", 10 ) ) {
klauss 45:c80574f24dc3 321 miss_match = false;
klauss 55:2f5e7374af9d 322 set_server_ext( atoi( debug_buf + 10 ) );
klauss 45:c80574f24dc3 323 files('s');
klauss 45:c80574f24dc3 324 }
klauss 45:c80574f24dc3 325
klauss 105:a930035b6556 326 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "maskset ",8 ) ) {
klauss 45:c80574f24dc3 327 miss_match = false;
klauss 55:2f5e7374af9d 328 set_mask( debug_buf + 8 );
klauss 45:c80574f24dc3 329 files('s');
klauss 45:c80574f24dc3 330 }
klauss 45:c80574f24dc3 331
klauss 105:a930035b6556 332 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "gatewayset ",11 ) ) {
klauss 45:c80574f24dc3 333 miss_match = false;
klauss 55:2f5e7374af9d 334 set_gateway( debug_buf + 11 );
klauss 45:c80574f24dc3 335 files('s');
klauss 45:c80574f24dc3 336 }
klauss 45:c80574f24dc3 337
klauss 105:a930035b6556 338 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "msipport ",9 ) ) {
klauss 45:c80574f24dc3 339 miss_match = false;
klauss 55:2f5e7374af9d 340 set_header_sip_port( atoi( debug_buf + 9 ) );
klauss 45:c80574f24dc3 341 files('s');
klauss 45:c80574f24dc3 342 }
klauss 45:c80574f24dc3 343
klauss 105:a930035b6556 344 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "serverip ",9 ) ) {
klauss 45:c80574f24dc3 345 miss_match = false;
klauss 55:2f5e7374af9d 346 set_server_ip( debug_buf + 9 );
klauss 45:c80574f24dc3 347 files('s');
klauss 45:c80574f24dc3 348 }
klauss 105:a930035b6556 349
klauss 105:a930035b6556 350 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "maxext ", 7 ) ) {
klauss 81:3656f00ab3db 351 miss_match = false;
klauss 81:3656f00ab3db 352 set_max_ext( atoi( debug_buf + 7 ) );
klauss 81:3656f00ab3db 353 files('s');
klauss 81:3656f00ab3db 354 }
klauss 105:a930035b6556 355
klauss 105:a930035b6556 356 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "minext ", 7 ) ) {
klauss 81:3656f00ab3db 357 miss_match = false;
klauss 81:3656f00ab3db 358 set_min_ext( atoi( debug_buf + 7 ) );
klauss 81:3656f00ab3db 359 files('s');
klauss 81:3656f00ab3db 360 }
klauss 45:c80574f24dc3 361
klauss 105:a930035b6556 362 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "ssport ", 7 ) ) {
klauss 45:c80574f24dc3 363 miss_match = false;
klauss 55:2f5e7374af9d 364 set_server_port( atoi( debug_buf + 7 ) );
klauss 45:c80574f24dc3 365 files('s');
klauss 45:c80574f24dc3 366 }
klauss 105:a930035b6556 367
klauss 105:a930035b6556 368 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "fw_ip ", 6 ) ) {
klauss 99:e80850c51106 369 miss_match = false;
klauss 99:e80850c51106 370 set_fw_ip( debug_buf + 6 );
klauss 99:e80850c51106 371 files('s');
klauss 99:e80850c51106 372 }
klauss 105:a930035b6556 373
klauss 105:a930035b6556 374 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "fw_port ", 8 ) ) {
klauss 99:e80850c51106 375 miss_match = false;
klauss 99:e80850c51106 376 set_fw_port( atoi( debug_buf + 8 ) );
klauss 99:e80850c51106 377 files('s');
klauss 99:e80850c51106 378 }
klauss 106:a34fcf9f0e02 379
klauss 106:a34fcf9f0e02 380 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "shift_port ", 11 ) ) {
klauss 106:a34fcf9f0e02 381 miss_match = false;
klauss 106:a34fcf9f0e02 382 set_shift_port( atoi( debug_buf + 11 ) );
klauss 106:a34fcf9f0e02 383 files('s');
klauss 106:a34fcf9f0e02 384 }
klauss 45:c80574f24dc3 385
klauss 105:a930035b6556 386 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "dconfig" ) ) {
klauss 45:c80574f24dc3 387 miss_match = false;
klauss 50:d9b6577a70f5 388 files('e');
klauss 45:c80574f24dc3 389 files('w');
klauss 45:c80574f24dc3 390 files('s');
klauss 45:c80574f24dc3 391 }
klauss 45:c80574f24dc3 392
klauss 105:a930035b6556 393 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "reset" ) ) {
klauss 45:c80574f24dc3 394 miss_match = false;
klauss 104:62646ef786a3 395 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rJob is done\n\r");
klauss 105:a930035b6556 396 if( from_eth ) {
klauss 45:c80574f24dc3 397 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Job is done\n\r");
klauss 45:c80574f24dc3 398 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 399 if( tcp_session && !udp_query ) {
klauss 45:c80574f24dc3 400 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 45:c80574f24dc3 401 tcp_client.close();
klauss 105:a930035b6556 402 } else if( udp_query ) {
klauss 105:a930035b6556 403 udp_query_send_msg( debug_buf );
klauss 42:480335bdde12 404 }
klauss 45:c80574f24dc3 405 }
klauss 48:195c97f12e8e 406 __disable_irq();
klauss 45:c80574f24dc3 407 NVIC_SystemReset();
klauss 45:c80574f24dc3 408 }
klauss 45:c80574f24dc3 409
klauss 105:a930035b6556 410 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "dog" ) ) {
klauss 45:c80574f24dc3 411 miss_match = false;
klauss 104:62646ef786a3 412 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r MUUUUUUUuuuuUUUUUU - I'm not a dog!!!! \n\r");
klauss 105:a930035b6556 413 if( from_eth ) {
klauss 45:c80574f24dc3 414 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "MUUUUUUUuuuuUUUUUU - I'm not a dog!!!!\n\r");
klauss 105:a930035b6556 415 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 416 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 417 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 418 } else if( udp_query ) {
klauss 105:a930035b6556 419 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 420 }
klauss 45:c80574f24dc3 421 }
klauss 45:c80574f24dc3 422 }
klauss 108:18a3702650f3 423
klauss 108:18a3702650f3 424 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "rtp" ) ) {
klauss 108:18a3702650f3 425 miss_match = false;
klauss 108:18a3702650f3 426 dshow_rtp = true;
klauss 108:18a3702650f3 427 }
klauss 108:18a3702650f3 428
klauss 108:18a3702650f3 429 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "callrtp" ) ) {
klauss 108:18a3702650f3 430 miss_match = false;
klauss 108:18a3702650f3 431 dcallshow_rtp = true;
klauss 108:18a3702650f3 432 }
klauss 105:a930035b6556 433
klauss 105:a930035b6556 434 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "test" ) ) {
klauss 105:a930035b6556 435 miss_match = false;
klauss 105:a930035b6556 436 debug_msg("Test something");
klauss 105:a930035b6556 437 }
klauss 48:195c97f12e8e 438
klauss 106:a34fcf9f0e02 439 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "deleted" ) ) {
klauss 106:a34fcf9f0e02 440 miss_match = false;
klauss 106:a34fcf9f0e02 441 send_msg("::%d::", deleted_sip );
klauss 106:a34fcf9f0e02 442 }
klauss 106:a34fcf9f0e02 443
klauss 105:a930035b6556 444 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "missed" ) ) {
klauss 105:a930035b6556 445 miss_match = false;
klauss 105:a930035b6556 446 missed_send_udp_pkg = true;
klauss 105:a930035b6556 447 }
klauss 105:a930035b6556 448
klauss 105:a930035b6556 449 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "reset_missed" ) ) {
klauss 105:a930035b6556 450 miss_match = false;
klauss 105:a930035b6556 451 reset_missed_send_udp_pkg = true;
klauss 105:a930035b6556 452 }
klauss 105:a930035b6556 453
klauss 105:a930035b6556 454 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "ftq" ) ) {
klauss 100:09a23fcd3bdf 455 miss_match = false;
klauss 104:62646ef786a3 456 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rFTQ ON\n\r" );
klauss 105:a930035b6556 457 send_msg("FTQ On");
klauss 105:a930035b6556 458 /*
klauss 105:a930035b6556 459 if( from_eth ) {
klauss 105:a930035b6556 460 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FTQ On\n\r" );
klauss 105:a930035b6556 461 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 462 }
klauss 105:a930035b6556 463 */
klauss 105:a930035b6556 464 big_bug_pkg = true;
klauss 100:09a23fcd3bdf 465 }
klauss 105:a930035b6556 466
klauss 105:a930035b6556 467 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "ktq" ) ) {
klauss 100:09a23fcd3bdf 468 miss_match = false;
klauss 104:62646ef786a3 469 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rFTQ!!!\n\r" );
klauss 105:a930035b6556 470 send_msg("FTQ");
klauss 105:a930035b6556 471 /*
klauss 105:a930035b6556 472 if( from_eth ) {
klauss 105:a930035b6556 473 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FTQ!!!\n\r" );
klauss 105:a930035b6556 474 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 475 }
klauss 105:a930035b6556 476 */
klauss 105:a930035b6556 477 flood_bug_pkg = !flood_bug_pkg;
klauss 100:09a23fcd3bdf 478 }
klauss 105:a930035b6556 479
klauss 105:a930035b6556 480 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "ls" ) ) {
klauss 62:07e5bdc9f8f7 481 miss_match = false;
klauss 62:07e5bdc9f8f7 482 list = true;
klauss 62:07e5bdc9f8f7 483 }
klauss 105:a930035b6556 484
klauss 105:a930035b6556 485 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "ls -l" ) ) {
klauss 81:3656f00ab3db 486 miss_match = false;
klauss 81:3656f00ab3db 487 long_list = true;
klauss 81:3656f00ab3db 488 }
klauss 105:a930035b6556 489
klauss 105:a930035b6556 490 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "tt" ) ) {
klauss 53:bb492a8f115a 491 miss_match = false;
klauss 62:07e5bdc9f8f7 492 main_test = !main_test;
klauss 53:bb492a8f115a 493 }
klauss 105:a930035b6556 494
klauss 105:a930035b6556 495 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "size" ) ) {
klauss 104:62646ef786a3 496 miss_match = false;
klauss 104:62646ef786a3 497 sizes = !sizes;
klauss 104:62646ef786a3 498 }
klauss 105:a930035b6556 499
klauss 105:a930035b6556 500 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "show_sip" ) ) {
klauss 97:8985817e8847 501 miss_match = false;
klauss 97:8985817e8847 502 show_sip = true;
klauss 97:8985817e8847 503 }
klauss 105:a930035b6556 504
klauss 105:a930035b6556 505 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "reset_cks" ) ) {
klauss 52:12930cef17c4 506 miss_match = false;
klauss 52:12930cef17c4 507 reset_cks = true;
klauss 52:12930cef17c4 508 }
klauss 105:a930035b6556 509
klauss 64:5b011d5707d2 510 //replaced by ls
klauss 105:a930035b6556 511 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "status" ) ) {
klauss 48:195c97f12e8e 512 miss_match = false;
klauss 64:5b011d5707d2 513 list = true;
klauss 64:5b011d5707d2 514 }
klauss 105:a930035b6556 515
klauss 105:a930035b6556 516 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "wdt" ) ) {
klauss 81:3656f00ab3db 517 miss_match = false;
klauss 81:3656f00ab3db 518 debug_wdt = true;
klauss 81:3656f00ab3db 519 }
klauss 105:a930035b6556 520
klauss 105:a930035b6556 521 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "eth" ) ) {
klauss 81:3656f00ab3db 522 miss_match = false;
klauss 81:3656f00ab3db 523 debug_eth = true;
klauss 81:3656f00ab3db 524 }
klauss 105:a930035b6556 525
klauss 105:a930035b6556 526 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "types" ) ) {
klauss 104:62646ef786a3 527 miss_match = false;
klauss 105:a930035b6556 528
klauss 105:a930035b6556 529 //send_msg("hex :: dec :: Type \n\r0x00 :: 0 :: boot \n\r0x02 :: 2 :: registry \n\r0x04 :: 4 :: invite \n\r0x08 :: 8 :: audio \n\r0x10 :: 16 :: telemetry \n\r0x20 :: 32 :: cb_bye \n\r0x01 :: 1 :: prompt \n\r0x40 :: 64 :: flood" );
klauss 105:a930035b6556 530
klauss 104:62646ef786a3 531 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rhex :: dec :: Type \n\r0x00 :: 0 :: boot \n\r0x02 :: 2 :: registry \n\r0x04 :: 4 :: invite \n\r0x08 :: 8 :: audio \n\r0x10 :: 16 :: telemetry \n\r0x20 :: 32 :: cb_bye \n\r0x01 :: 1 :: prompt \n\r0x40 :: 64 :: flood \n\r" );
klauss 105:a930035b6556 532
klauss 105:a930035b6556 533 if( from_eth ) {
klauss 105:a930035b6556 534 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "hex :: dec :: Type \n\r0x00 :: 0 :: boot \n\r0x02 :: 2 :: registry \n\r0x04 :: 4 :: invite \n\r0x08 :: 8 :: audio \n\r0x10 :: 16 :: telemetry \n\r0x20 :: 32 :: cb_bye \n\r0x01 :: 1 :: prompt \n\r0x40 :: 64 :: flood\n\r");
klauss 105:a930035b6556 535 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 536 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 537 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 538 } else if( udp_query ) {
klauss 105:a930035b6556 539 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 540 }
klauss 64:5b011d5707d2 541 }
klauss 48:195c97f12e8e 542 }
klauss 105:a930035b6556 543
klauss 105:a930035b6556 544 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "protocol" ) ) {
klauss 64:5b011d5707d2 545 miss_match = false;
klauss 105:a930035b6556 546
klauss 105:a930035b6556 547 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\r| E | E | P | P | C | C | T | [ Seq_num | Audio ] | 14[ Clock | Audio ] | [ TS | Audio ] | ... |\n\r \n\rE = Ext = Ramal\n\r \n\rP = Port = Porta\n\r \n\rC = Checksum\n\r \n\rT = Type = Tipo\n\r \n\rSeq_num = Sequence Number = Numero de sequencia\n\r \n\rClock = 14 bytes to sync\n\r \n\r... = demais CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__ bytes\n\r" );
klauss 105:a930035b6556 548
klauss 105:a930035b6556 549 if( from_eth ) {
klauss 105:a930035b6556 550 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "| E | E | P | P | C | C | T | [ Seq_num | Audio ] | 14[ Clock | Audio ] | [ TS | Audio ] | ... |\n\r \n\rE = Ext = Ramal\n\r \n\rP = Port = Porta\n\r \n\rC = Checksum\n\r \n\rT = Type = Tipo\n\r \n\rSeq_num = Sequence Number = Numero de sequencia\n\r \n\rClock = 14 bytes to sync\n\r \n\r... = demais CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__ bytes\n\r");
klauss 105:a930035b6556 551 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 552 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 553 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 554 } else if( udp_query ) {
klauss 105:a930035b6556 555 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 556 }
klauss 64:5b011d5707d2 557 }
klauss 64:5b011d5707d2 558 }
klauss 105:a930035b6556 559
klauss 105:a930035b6556 560 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "flood ", 6 ) ) {
klauss 105:a930035b6556 561 if (xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "on", 2 ) ) {
klauss 45:c80574f24dc3 562 miss_match = false;
klauss 104:62646ef786a3 563 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFlood ON\n\r");
klauss 105:a930035b6556 564
klauss 105:a930035b6556 565 if( from_eth ) {
klauss 105:a930035b6556 566 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Flood On\n\r");
klauss 45:c80574f24dc3 567 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 568 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 569 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 570 } else if( udp_query ) {
klauss 105:a930035b6556 571 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 572 }
klauss 105:a930035b6556 573 }
klauss 45:c80574f24dc3 574 tflood.start();
klauss 45:c80574f24dc3 575 tflood.reset();
klauss 45:c80574f24dc3 576 floodcount =0;
klauss 45:c80574f24dc3 577 pflood = 1;
klauss 45:c80574f24dc3 578 flood_timeout.start();
klauss 45:c80574f24dc3 579 }
klauss 105:a930035b6556 580
klauss 105:a930035b6556 581 if (xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "more", 4 ) ) {
klauss 61:06e77dff6f00 582 miss_match = false;
klauss 104:62646ef786a3 583 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFlood ON\n\r");
klauss 105:a930035b6556 584 if( from_eth ) {
klauss 105:a930035b6556 585 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Flood On\n\r");
klauss 105:a930035b6556 586 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 587 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 588 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 589 } else if( udp_query ) {
klauss 105:a930035b6556 590 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 591 }
klauss 61:06e77dff6f00 592 }
klauss 105:a930035b6556 593
klauss 61:06e77dff6f00 594 tflood.start();
klauss 61:06e77dff6f00 595 tflood.reset();
klauss 61:06e77dff6f00 596 floodcount = 0;
klauss 61:06e77dff6f00 597 pflood = 1;
klauss 61:06e77dff6f00 598 }
klauss 105:a930035b6556 599
klauss 60:b4ec6beb3be3 600 if (xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "off", 3 )) {
klauss 45:c80574f24dc3 601 miss_match = false;
klauss 104:62646ef786a3 602 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rFlood OFF\n\r");
klauss 105:a930035b6556 603
klauss 105:a930035b6556 604 if( from_eth ) {
klauss 105:a930035b6556 605 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Flood Off\n\r");
klauss 45:c80574f24dc3 606 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 607 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 608 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 609 } else if( udp_query ) {
klauss 105:a930035b6556 610 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 611 }
klauss 42:480335bdde12 612 }
klauss 45:c80574f24dc3 613 pflood = 0;
klauss 45:c80574f24dc3 614 tflood.stop();
klauss 45:c80574f24dc3 615 flood_timeout.reset();
klauss 31:bb5fb28a77df 616 }
klauss 105:a930035b6556 617 } else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "silence ", 8 ) ) {
klauss 60:b4ec6beb3be3 618 miss_match = false;
klauss 60:b4ec6beb3be3 619 char *ref, *split;
klauss 105:a930035b6556 620
klauss 60:b4ec6beb3be3 621 strcpy( promptcb_last_cmd, debug_buf );
klauss 105:a930035b6556 622
klauss 105:a930035b6556 623 if( !( strcmp( debug_buf + 8, "-h" ) && strcmp( debug_buf + 8, "--help" ) ) ) {
klauss 104:62646ef786a3 624 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rUsage :: silence start_ext end_ext | start_ext must be greater than end_ext\n\rObs : ( end_ext - start_ext ) < 50 ");
klauss 105:a930035b6556 625
klauss 105:a930035b6556 626 if( from_eth ) {
klauss 105:a930035b6556 627 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Usage :: silence start_ext end_ext | start_ext must be greater than end_ext\n\rObs : ( end_ext - start_ext ) < 50 ");
klauss 105:a930035b6556 628 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 629 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 630 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 631 } else if( udp_query ) {
klauss 105:a930035b6556 632 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 633 }
klauss 65:0b653cfe95db 634 }
klauss 105:a930035b6556 635 } else {
klauss 65:0b653cfe95db 636 ref = debug_buf;
klauss 105:a930035b6556 637
klauss 65:0b653cfe95db 638 split = strtok( debug_buf + 8, " " );
klauss 105:a930035b6556 639
klauss 65:0b653cfe95db 640 start_ext = atoi( split );
klauss 105:a930035b6556 641
klauss 65:0b653cfe95db 642 split += strlen( split ) + 1;
klauss 105:a930035b6556 643
klauss 65:0b653cfe95db 644 end_ext = atoi( split );
klauss 105:a930035b6556 645
klauss 65:0b653cfe95db 646 debug_buf = ref;
klauss 105:a930035b6556 647
klauss 105:a930035b6556 648 if( start_ext < end_ext && ( end_ext - start_ext ) < 50 ) {
klauss 65:0b653cfe95db 649 if( start_ext % 2 ) start_ext--;
klauss 65:0b653cfe95db 650 if( !( end_ext % 2 ) ) end_ext++;
klauss 105:a930035b6556 651
klauss 65:0b653cfe95db 652 ext_count = start_ext;
klauss 65:0b653cfe95db 653 flood_silence_timer.start();
klauss 105:a930035b6556 654 } else {
klauss 104:62646ef786a3 655 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rUsage Error :: silence start_ext end_ext | start_ext must be greater than end_ext\n\rObs : ( end_ext - start_ext ) < 50 ");
klauss 105:a930035b6556 656
klauss 105:a930035b6556 657 if( from_eth ) {
klauss 105:a930035b6556 658 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Usage Error :: silence start_ext end_ext | start_ext must be greater than end_ext\n\rObs : ( end_ext - start_ext ) < 50 ");
klauss 105:a930035b6556 659 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 660 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 661 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 662 } else if( udp_query ) {
klauss 105:a930035b6556 663 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 664 }
klauss 65:0b653cfe95db 665 }
klauss 48:195c97f12e8e 666 }
klauss 65:0b653cfe95db 667 flood_silence = true;
klauss 48:195c97f12e8e 668 }
klauss 45:c80574f24dc3 669 }
klauss 105:a930035b6556 670
klauss 105:a930035b6556 671 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "debug ",6 ) ) {
klauss 45:c80574f24dc3 672 if( xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "on",2 )) {
klauss 45:c80574f24dc3 673 miss_match = false;
klauss 104:62646ef786a3 674 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rDebug ON\n\r");
klauss 105:a930035b6556 675 if( from_eth ) {
klauss 105:a930035b6556 676 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug On\n\r");
klauss 45:c80574f24dc3 677 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 678 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 679 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 680 } else if( udp_query ) {
klauss 105:a930035b6556 681 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 682 }
klauss 45:c80574f24dc3 683 }
klauss 78:1353744f01e1 684 debug_alive = true;
klauss 45:c80574f24dc3 685 }
klauss 45:c80574f24dc3 686 if( xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "off",3 )) {
klauss 45:c80574f24dc3 687 miss_match = false;
klauss 104:62646ef786a3 688 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rDebug OFF\n\r");
klauss 105:a930035b6556 689 if( from_eth ) {
klauss 105:a930035b6556 690 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug Off\n\r");
klauss 45:c80574f24dc3 691 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 692 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 693 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 694 } else if( udp_query ) {
klauss 105:a930035b6556 695 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 696 }
klauss 42:480335bdde12 697 }
klauss 78:1353744f01e1 698 debug_alive = false;
klauss 31:bb5fb28a77df 699 }
klauss 105:a930035b6556 700 if( xmemmatch( (uint8_t*)(debug_buf+6), (uint8_t*) "show",4 ) ) {
klauss 45:c80574f24dc3 701 miss_match = false;
klauss 104:62646ef786a3 702 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdsip");
klauss 104:62646ef786a3 703 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_alive");
klauss 104:62646ef786a3 704 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_prompt");
klauss 104:62646ef786a3 705 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_vector");
klauss 104:62646ef786a3 706 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_cb");
klauss 104:62646ef786a3 707 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_main");
klauss 104:62646ef786a3 708 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdcks");
klauss 104:62646ef786a3 709 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_cb_rx");
klauss 104:62646ef786a3 710 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_cb_tx*");
klauss 104:62646ef786a3 711 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_eth_rx*");
klauss 104:62646ef786a3 712 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_eth_tx*");
klauss 104:62646ef786a3 713 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rdebug_file");
klauss 45:c80574f24dc3 714
klauss 105:a930035b6556 715 if( from_eth ) {
klauss 105:a930035b6556 716 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rdsip \n\rdebug_alive \n\rdebug_prompt \n\rdebug_vector \n\rdebug_cb \n\rdebug_main \n\rdcks \n\rdebug_cb_rx \n\rdebug_cb_tx* \n\rdebug_eth_rx* \n\rdebug_eth_tx* \n\rdebug_file\n\r");
klauss 42:480335bdde12 717 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 718 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 719 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 720 } else if( udp_query ) {
klauss 105:a930035b6556 721 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 722 }
klauss 42:480335bdde12 723 }
klauss 42:480335bdde12 724 }
klauss 45:c80574f24dc3 725 }
klauss 105:a930035b6556 726
klauss 105:a930035b6556 727 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dsip ", 5 ) ) {
klauss 105:a930035b6556 728 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "on", 2 ) ) {
klauss 45:c80574f24dc3 729 miss_match = false;
klauss 104:62646ef786a3 730 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rSip Debug ON\n\r" );
klauss 105:a930035b6556 731 if( from_eth ) {
klauss 105:a930035b6556 732 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Sip Debug On\n\r");
klauss 45:c80574f24dc3 733 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 734 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 735 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 736 } else if( udp_query ) {
klauss 105:a930035b6556 737 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 738 }
klauss 45:c80574f24dc3 739 }
klauss 78:1353744f01e1 740 debug_sip = true;
klauss 45:c80574f24dc3 741 }
klauss 50:d9b6577a70f5 742 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "off",3 )) {
klauss 45:c80574f24dc3 743 miss_match = false;
klauss 104:62646ef786a3 744 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rSip Debug OFF\n\r" );
klauss 105:a930035b6556 745 if( from_eth ) {
klauss 105:a930035b6556 746 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Sip Debug Off\n\r");
klauss 45:c80574f24dc3 747 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 748 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 749 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 750 } else if( udp_query ) {
klauss 105:a930035b6556 751 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 752 }
klauss 45:c80574f24dc3 753 }
klauss 78:1353744f01e1 754 debug_sip = false;
klauss 78:1353744f01e1 755 }
klauss 78:1353744f01e1 756 }
klauss 78:1353744f01e1 757
klauss 108:18a3702650f3 758 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dresetrtp ", 10 ) ) {
klauss 108:18a3702650f3 759 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "on", 2 ) ) {
klauss 108:18a3702650f3 760 miss_match = false;
klauss 108:18a3702650f3 761 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rReset RTP Debug ON\n\r" );
klauss 108:18a3702650f3 762 if( from_eth ) {
klauss 108:18a3702650f3 763 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Reset RTP Debug On\n\r");
klauss 108:18a3702650f3 764 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 108:18a3702650f3 765 if( tcp_session && !udp_query ) {
klauss 108:18a3702650f3 766 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 108:18a3702650f3 767 } else if( udp_query ) {
klauss 108:18a3702650f3 768 udp_query_send_msg( debug_buf );
klauss 108:18a3702650f3 769 }
klauss 108:18a3702650f3 770 }
klauss 108:18a3702650f3 771 debug_reset_rtp = true;
klauss 108:18a3702650f3 772 }
klauss 108:18a3702650f3 773 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "off",3 )) {
klauss 108:18a3702650f3 774 miss_match = false;
klauss 108:18a3702650f3 775 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rReset RTP Debug OFF\n\r" );
klauss 108:18a3702650f3 776 if( from_eth ) {
klauss 108:18a3702650f3 777 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Reset RTP Debug Off\n\r");
klauss 108:18a3702650f3 778 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 108:18a3702650f3 779 if( tcp_session && !udp_query ) {
klauss 108:18a3702650f3 780 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 108:18a3702650f3 781 } else if( udp_query ) {
klauss 108:18a3702650f3 782 udp_query_send_msg( debug_buf );
klauss 108:18a3702650f3 783 }
klauss 108:18a3702650f3 784 }
klauss 108:18a3702650f3 785 debug_reset_rtp = false;
klauss 108:18a3702650f3 786 }
klauss 108:18a3702650f3 787 }
klauss 108:18a3702650f3 788
klauss 107:cf1e43414adb 789
klauss 107:cf1e43414adb 790 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "drtp ", 5 ) ) {
klauss 107:cf1e43414adb 791 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "on", 2 ) ) {
klauss 107:cf1e43414adb 792 miss_match = false;
klauss 107:cf1e43414adb 793 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rRtp Debug ON\n\r" );
klauss 107:cf1e43414adb 794 if( from_eth ) {
klauss 107:cf1e43414adb 795 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Rtp Debug On\n\r");
klauss 107:cf1e43414adb 796 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 107:cf1e43414adb 797 if( tcp_session && !udp_query ) {
klauss 107:cf1e43414adb 798 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 107:cf1e43414adb 799 } else if( udp_query ) {
klauss 107:cf1e43414adb 800 udp_query_send_msg( debug_buf );
klauss 107:cf1e43414adb 801 }
klauss 107:cf1e43414adb 802 }
klauss 107:cf1e43414adb 803 debug_rtp = true;
klauss 107:cf1e43414adb 804 }
klauss 107:cf1e43414adb 805 if (xmemmatch( (uint8_t*)( debug_buf + 5 ), (uint8_t*) "off", 3 ) ){
klauss 107:cf1e43414adb 806 miss_match = false;
klauss 107:cf1e43414adb 807 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rRtp Debug OFF\n\r" );
klauss 107:cf1e43414adb 808 if( from_eth ) {
klauss 107:cf1e43414adb 809 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Rtp Debug Off\n\r");
klauss 107:cf1e43414adb 810 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 107:cf1e43414adb 811 if( tcp_session && !udp_query ) {
klauss 107:cf1e43414adb 812 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 107:cf1e43414adb 813 } else if( udp_query ) {
klauss 107:cf1e43414adb 814 udp_query_send_msg( debug_buf );
klauss 107:cf1e43414adb 815 }
klauss 107:cf1e43414adb 816 }
klauss 107:cf1e43414adb 817 debug_rtp = false;
klauss 107:cf1e43414adb 818 }
klauss 107:cf1e43414adb 819 }
klauss 107:cf1e43414adb 820
klauss 105:a930035b6556 821 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dmissed ", 8 ) ) {
klauss 105:a930035b6556 822 if (xmemmatch( (uint8_t*)(debug_buf + 8 ), (uint8_t*) "on", 2 ) ) {
klauss 105:a930035b6556 823 miss_match = false;
klauss 105:a930035b6556 824 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDebug Missed ON\n\r" );
klauss 105:a930035b6556 825 if( from_eth ) {
klauss 105:a930035b6556 826 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug Missed ON\n\r");
klauss 105:a930035b6556 827 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 828 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 829 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 830 } else if( udp_query ) {
klauss 105:a930035b6556 831 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 832 }
klauss 105:a930035b6556 833 }
klauss 105:a930035b6556 834 debug_missed = true;
klauss 105:a930035b6556 835 }
klauss 105:a930035b6556 836 if (xmemmatch( (uint8_t*)(debug_buf + 8 ), (uint8_t*) "off", 3 )) {
klauss 105:a930035b6556 837 miss_match = false;
klauss 105:a930035b6556 838 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDebug Missed Off\n\r" );
klauss 105:a930035b6556 839 if( from_eth ) {
klauss 105:a930035b6556 840 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug Missed Off\n\r");
klauss 105:a930035b6556 841 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 842 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 843 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 844 } else if( udp_query ) {
klauss 105:a930035b6556 845 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 846 }
klauss 105:a930035b6556 847 }
klauss 105:a930035b6556 848 debug_missed = false;
klauss 105:a930035b6556 849 }
klauss 105:a930035b6556 850 }
klauss 105:a930035b6556 851
klauss 105:a930035b6556 852 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dreconnect ", 11 ) ) {
klauss 105:a930035b6556 853 if (xmemmatch( (uint8_t*)(debug_buf + 11 ), (uint8_t*) "on", 2 ) ) {
klauss 104:62646ef786a3 854 miss_match = false;
klauss 104:62646ef786a3 855 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rReconnecet Debug ON\n\r" );
klauss 105:a930035b6556 856 if( from_eth ) {
klauss 105:a930035b6556 857 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Reconnecet Debug On\n\r");
klauss 104:62646ef786a3 858 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 859 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 860 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 861 } else if( udp_query ) {
klauss 105:a930035b6556 862 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 863 }
klauss 104:62646ef786a3 864 }
klauss 104:62646ef786a3 865 debug_reconnect = true;
klauss 104:62646ef786a3 866 }
klauss 104:62646ef786a3 867 if (xmemmatch( (uint8_t*)(debug_buf + 11 ), (uint8_t*) "off", 3 )) {
klauss 104:62646ef786a3 868 miss_match = false;
klauss 104:62646ef786a3 869 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rReconnecet Debug OFF\n\r" );
klauss 105:a930035b6556 870 if( from_eth ) {
klauss 105:a930035b6556 871 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Reconnecet Debug Off\n\r");
klauss 104:62646ef786a3 872 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 873 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 874 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 875 } else if( udp_query ) {
klauss 105:a930035b6556 876 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 877 }
klauss 104:62646ef786a3 878 }
klauss 104:62646ef786a3 879 debug_reconnect = false;
klauss 104:62646ef786a3 880 }
klauss 104:62646ef786a3 881 }
klauss 105:a930035b6556 882
klauss 105:a930035b6556 883 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "duart ", 6 ) ) {
klauss 105:a930035b6556 884 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "on", 2 ) ) {
klauss 100:09a23fcd3bdf 885 miss_match = false;
klauss 104:62646ef786a3 886 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rEnable UART3 usage\n\r" );
klauss 105:a930035b6556 887 if( from_eth ) {
klauss 105:a930035b6556 888 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Enable UART3 usage\n\r");
klauss 100:09a23fcd3bdf 889 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 890 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 891 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 892 } else if( udp_query ) {
klauss 105:a930035b6556 893 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 894 }
klauss 100:09a23fcd3bdf 895 }
klauss 100:09a23fcd3bdf 896 debug_uart3 = true;
klauss 100:09a23fcd3bdf 897 }
klauss 100:09a23fcd3bdf 898 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "off",3 )) {
klauss 100:09a23fcd3bdf 899 miss_match = false;
klauss 104:62646ef786a3 900 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDisable UART3 usage\n\r" );
klauss 105:a930035b6556 901 if( from_eth ) {
klauss 105:a930035b6556 902 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Disable UART3 usage\n\r");
klauss 100:09a23fcd3bdf 903 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 904 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 905 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 906 } else if( udp_query ) {
klauss 105:a930035b6556 907 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 908 }
klauss 100:09a23fcd3bdf 909 }
klauss 100:09a23fcd3bdf 910 debug_uart3 = false;
klauss 100:09a23fcd3bdf 911 }
klauss 100:09a23fcd3bdf 912 }
klauss 105:a930035b6556 913
klauss 105:a930035b6556 914 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dmatch ", 7 ) ) {
klauss 105:a930035b6556 915 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "on", 2 ) ) {
klauss 98:43b45f26b430 916 miss_match = false;
klauss 104:62646ef786a3 917 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rPort Match Debug ON\n\r" );
klauss 105:a930035b6556 918 if( from_eth ) {
klauss 105:a930035b6556 919 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Port Match Debug On\n\r");
klauss 98:43b45f26b430 920 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 921 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 922 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 923 } else if( udp_query ) {
klauss 105:a930035b6556 924 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 925 }
klauss 98:43b45f26b430 926 }
klauss 98:43b45f26b430 927 debug_port_match = true;
klauss 98:43b45f26b430 928 }
klauss 98:43b45f26b430 929 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "off",3 )) {
klauss 98:43b45f26b430 930 miss_match = false;
klauss 104:62646ef786a3 931 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rPort Match Debug OFF\n\r" );
klauss 105:a930035b6556 932 if( from_eth ) {
klauss 105:a930035b6556 933 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Port Match Debug Off\n\r");
klauss 98:43b45f26b430 934 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 935 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 936 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 937 } else if( udp_query ) {
klauss 105:a930035b6556 938 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 939 }
klauss 98:43b45f26b430 940 }
klauss 98:43b45f26b430 941 debug_port_match = false;
klauss 98:43b45f26b430 942 }
klauss 98:43b45f26b430 943 }
klauss 105:a930035b6556 944
klauss 105:a930035b6556 945 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dmuted ", 7 ) ) {
klauss 105:a930035b6556 946 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "on", 2 ) ) {
klauss 81:3656f00ab3db 947 miss_match = false;
klauss 104:62646ef786a3 948 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rMuted Debug ON\n\r" );
klauss 105:a930035b6556 949 if( from_eth ) {
klauss 105:a930035b6556 950 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Muted Debug On\n\r");
klauss 81:3656f00ab3db 951 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 952 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 953 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 954 } else if( udp_query ) {
klauss 105:a930035b6556 955 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 956 }
klauss 81:3656f00ab3db 957 }
klauss 81:3656f00ab3db 958 debug_muted = true;
klauss 81:3656f00ab3db 959 }
klauss 81:3656f00ab3db 960 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "off",3 )) {
klauss 81:3656f00ab3db 961 miss_match = false;
klauss 104:62646ef786a3 962 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rMuted Debug OFF\n\r" );
klauss 105:a930035b6556 963 if( from_eth ) {
klauss 105:a930035b6556 964 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Muted Debug Off\n\r");
klauss 81:3656f00ab3db 965 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 966 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 967 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 968 } else if( udp_query ) {
klauss 105:a930035b6556 969 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 970 }
klauss 81:3656f00ab3db 971 }
klauss 81:3656f00ab3db 972 debug_muted = false;
klauss 81:3656f00ab3db 973 }
klauss 81:3656f00ab3db 974 }
klauss 105:a930035b6556 975
klauss 105:a930035b6556 976 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dwdt ", 5 ) ) {
klauss 105:a930035b6556 977 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "on", 2 ) ) {
klauss 81:3656f00ab3db 978 miss_match = false;
klauss 104:62646ef786a3 979 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rWdt Debug ON\n\r" );
klauss 105:a930035b6556 980 if( from_eth ) {
klauss 105:a930035b6556 981 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Wdt Debug On\n\r");
klauss 81:3656f00ab3db 982 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 983 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 984 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 985 } else if( udp_query ) {
klauss 105:a930035b6556 986 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 987 }
klauss 81:3656f00ab3db 988 }
klauss 81:3656f00ab3db 989 wdt_show = true;
klauss 81:3656f00ab3db 990 }
klauss 81:3656f00ab3db 991 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "off",3 )) {
klauss 81:3656f00ab3db 992 miss_match = false;
klauss 104:62646ef786a3 993 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rWdt Debug OFF\n\r" );
klauss 105:a930035b6556 994 if( from_eth ) {
klauss 105:a930035b6556 995 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Wdt Debug Off\n\r");
klauss 81:3656f00ab3db 996 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 997 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 998 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 999 } else if( udp_query ) {
klauss 105:a930035b6556 1000 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1001 }
klauss 81:3656f00ab3db 1002 }
klauss 81:3656f00ab3db 1003 wdt_show = false;
klauss 81:3656f00ab3db 1004 }
klauss 81:3656f00ab3db 1005 }
klauss 105:a930035b6556 1006
klauss 105:a930035b6556 1007 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "drefresh ", 9 ) ) {
klauss 105:a930035b6556 1008 if (xmemmatch( (uint8_t*)(debug_buf + 9 ), (uint8_t*) "on", 2 ) ) {
klauss 81:3656f00ab3db 1009 miss_match = false;
klauss 104:62646ef786a3 1010 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rRefresh Debug ON\n\r" );
klauss 105:a930035b6556 1011 if( from_eth ) {
klauss 105:a930035b6556 1012 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Refresh Debug On\n\r");
klauss 81:3656f00ab3db 1013 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1014 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1015 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1016 } else if( udp_query ) {
klauss 105:a930035b6556 1017 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1018 }
klauss 81:3656f00ab3db 1019 }
klauss 81:3656f00ab3db 1020 debug_refresh= true;
klauss 81:3656f00ab3db 1021 }
klauss 81:3656f00ab3db 1022 if (xmemmatch( (uint8_t*)(debug_buf + 9 ), (uint8_t*) "off",3 )) {
klauss 81:3656f00ab3db 1023 miss_match = false;
klauss 104:62646ef786a3 1024 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rRefresh Debug OFF\n\r" );
klauss 105:a930035b6556 1025 if( from_eth ) {
klauss 105:a930035b6556 1026 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Refresh Debug Off\n\r");
klauss 81:3656f00ab3db 1027 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1028 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1029 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1030 } else if( udp_query ) {
klauss 105:a930035b6556 1031 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1032 }
klauss 81:3656f00ab3db 1033 }
klauss 81:3656f00ab3db 1034 debug_refresh = false;
klauss 81:3656f00ab3db 1035 }
klauss 81:3656f00ab3db 1036 }
klauss 105:a930035b6556 1037
klauss 105:a930035b6556 1038 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dping ", 6 ) ) {
klauss 105:a930035b6556 1039 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1040 miss_match = false;
klauss 104:62646ef786a3 1041 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rPing Debug ON\n\r" );
klauss 105:a930035b6556 1042 if( from_eth ) {
klauss 105:a930035b6556 1043 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Ping Debug On\n\r");
klauss 78:1353744f01e1 1044 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1045 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1046 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1047 } else if( udp_query ) {
klauss 105:a930035b6556 1048 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1049 }
klauss 78:1353744f01e1 1050 }
klauss 78:1353744f01e1 1051 debug_ping = true;
klauss 78:1353744f01e1 1052 }
klauss 78:1353744f01e1 1053 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "off",3 )) {
klauss 78:1353744f01e1 1054 miss_match = false;
klauss 104:62646ef786a3 1055 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rPing Debug OFF\n\r" );
klauss 105:a930035b6556 1056 if( from_eth ) {
klauss 105:a930035b6556 1057 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Ping Debug Off\n\r");
klauss 78:1353744f01e1 1058 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1059 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1060 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1061 } else if( udp_query ) {
klauss 105:a930035b6556 1062 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1063 }
klauss 78:1353744f01e1 1064 }
klauss 78:1353744f01e1 1065 debug_ping= false;
klauss 78:1353744f01e1 1066 }
klauss 78:1353744f01e1 1067 }
klauss 105:a930035b6556 1068
klauss 105:a930035b6556 1069 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dwu ", 4 ) ) {
klauss 105:a930035b6556 1070 if (xmemmatch( (uint8_t*)(debug_buf + 4 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1071 miss_match = false;
klauss 104:62646ef786a3 1072 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rWake Up Debug ON\n\r" );
klauss 105:a930035b6556 1073 if( from_eth ) {
klauss 105:a930035b6556 1074 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Wake Up Debug On\n\r");
klauss 78:1353744f01e1 1075 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1076 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1077 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1078 } else if( udp_query ) {
klauss 105:a930035b6556 1079 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1080 }
klauss 78:1353744f01e1 1081 }
klauss 78:1353744f01e1 1082 debug_wake = true;
klauss 78:1353744f01e1 1083 }
klauss 78:1353744f01e1 1084 if (xmemmatch( (uint8_t*)(debug_buf + 4 ), (uint8_t*) "off",3 )) {
klauss 78:1353744f01e1 1085 miss_match = false;
klauss 104:62646ef786a3 1086 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rWake Up Debug OFF\n\r" );
klauss 105:a930035b6556 1087 if( from_eth ) {
klauss 105:a930035b6556 1088 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Wake Up Debug Off\n\r");
klauss 78:1353744f01e1 1089 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1090 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1091 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1092 } else if( udp_query ) {
klauss 105:a930035b6556 1093 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1094 }
klauss 78:1353744f01e1 1095 }
klauss 78:1353744f01e1 1096 debug_wake = false;
klauss 78:1353744f01e1 1097 }
klauss 78:1353744f01e1 1098 }
klauss 105:a930035b6556 1099
klauss 105:a930035b6556 1100 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "tcp_alive ", 10 ) ) {
klauss 105:a930035b6556 1101 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1102 miss_match = false;
klauss 104:62646ef786a3 1103 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rTCP don't drop mode on\n\r" );
klauss 105:a930035b6556 1104 if( from_eth ) {
klauss 105:a930035b6556 1105 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "TCP don't drop mode on\n\r");
klauss 78:1353744f01e1 1106 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1107 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1108 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1109 } else if( udp_query ) {
klauss 105:a930035b6556 1110 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1111 }
klauss 78:1353744f01e1 1112 }
klauss 78:1353744f01e1 1113 tcp_alive = true;
klauss 78:1353744f01e1 1114 }
klauss 78:1353744f01e1 1115 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "off",3 )) {
klauss 78:1353744f01e1 1116 miss_match = false;
klauss 104:62646ef786a3 1117 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rTCP don't drop mode off\n\r" );
klauss 105:a930035b6556 1118 if( from_eth ) {
klauss 105:a930035b6556 1119 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "TCP don't drop mode off\n\r");
klauss 78:1353744f01e1 1120 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1121 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1122 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1123 } else if( udp_query ) {
klauss 105:a930035b6556 1124 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1125 }
klauss 78:1353744f01e1 1126 }
klauss 78:1353744f01e1 1127 tcp_alive = false;
klauss 78:1353744f01e1 1128 }
klauss 78:1353744f01e1 1129 }
klauss 105:a930035b6556 1130
klauss 105:a930035b6556 1131 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "daging ",7 ) ) {
klauss 105:a930035b6556 1132 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1133 miss_match = false;
klauss 104:62646ef786a3 1134 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rAging Debug ON\n\r" );
klauss 105:a930035b6556 1135 if( from_eth ) {
klauss 105:a930035b6556 1136 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Aging Debug On\n\r");
klauss 78:1353744f01e1 1137 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1138 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1139 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1140 } else if( udp_query ) {
klauss 105:a930035b6556 1141 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1142 }
klauss 78:1353744f01e1 1143 }
klauss 78:1353744f01e1 1144 debug_aging = true;
klauss 78:1353744f01e1 1145 }
klauss 78:1353744f01e1 1146 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "off",3 )) {
klauss 78:1353744f01e1 1147 miss_match = false;
klauss 104:62646ef786a3 1148 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rAging Debug OFF\n\r" );
klauss 105:a930035b6556 1149 if( from_eth ) {
klauss 105:a930035b6556 1150 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Aging Debug Off\n\r");
klauss 78:1353744f01e1 1151 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1152 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1153 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1154 } else if( udp_query ) {
klauss 105:a930035b6556 1155 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1156 }
klauss 78:1353744f01e1 1157 }
klauss 78:1353744f01e1 1158 debug_aging = false;
klauss 78:1353744f01e1 1159 }
klauss 78:1353744f01e1 1160 }
klauss 105:a930035b6556 1161
klauss 105:a930035b6556 1162 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dcpld ", 6 ) ) {
klauss 105:a930035b6556 1163 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1164 miss_match = false;
klauss 104:62646ef786a3 1165 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDCPLD Debug ON\n\r" );
klauss 105:a930035b6556 1166 if( from_eth ) {
klauss 105:a930035b6556 1167 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "DCPLD Debug On\n\r");
klauss 78:1353744f01e1 1168 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1169 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1170 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1171 } else if( udp_query ) {
klauss 105:a930035b6556 1172 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1173 }
klauss 78:1353744f01e1 1174 }
klauss 78:1353744f01e1 1175 debug_cpld = true;
klauss 105:a930035b6556 1176 debug_cb_rx = true;
klauss 105:a930035b6556 1177 debug_cb_tx = true;
klauss 78:1353744f01e1 1178 }
klauss 105:a930035b6556 1179 if (xmemmatch( (uint8_t*)(debug_buf + 6 ), (uint8_t*) "off",3 ) ) {
klauss 78:1353744f01e1 1180 miss_match = false;
klauss 104:62646ef786a3 1181 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDCPLD Debug OFF\n\r" );
klauss 105:a930035b6556 1182 if( from_eth ) {
klauss 105:a930035b6556 1183 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "DCPLD Debug Off\n\r");
klauss 78:1353744f01e1 1184 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1185 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1186 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1187 } else if( udp_query ) {
klauss 105:a930035b6556 1188 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1189 }
klauss 78:1353744f01e1 1190 }
klauss 78:1353744f01e1 1191 debug_cpld = false;
klauss 105:a930035b6556 1192 debug_cb_rx = false;
klauss 105:a930035b6556 1193 debug_cb_tx = false;
klauss 78:1353744f01e1 1194 }
klauss 78:1353744f01e1 1195 }
klauss 78:1353744f01e1 1196
klauss 105:a930035b6556 1197 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dshowcpld ", 10 ) ) {
klauss 105:a930035b6556 1198 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "on", 2 ) ) {
klauss 105:a930035b6556 1199 miss_match = false;
klauss 105:a930035b6556 1200 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDCPLD Show Debug ON\n\r" );
klauss 105:a930035b6556 1201 if( from_eth ) {
klauss 105:a930035b6556 1202 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "DCPLD Show Debug On\n\r");
klauss 105:a930035b6556 1203 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1204 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1205 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1206 } else if( udp_query ) {
klauss 105:a930035b6556 1207 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1208 }
klauss 105:a930035b6556 1209 }
klauss 105:a930035b6556 1210 debug_show_cpld = true;
klauss 105:a930035b6556 1211 }
klauss 105:a930035b6556 1212 if (xmemmatch( (uint8_t*)(debug_buf + 10 ), (uint8_t*) "off",3 ) ) {
klauss 105:a930035b6556 1213 miss_match = false;
klauss 105:a930035b6556 1214 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rDCPLD Show Debug OFF\n\r" );
klauss 105:a930035b6556 1215 if( from_eth ) {
klauss 105:a930035b6556 1216 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "DCPLD Show Debug Off\n\r");
klauss 105:a930035b6556 1217 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1218 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1219 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1220 } else if( udp_query ) {
klauss 105:a930035b6556 1221 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1222 }
klauss 105:a930035b6556 1223 }
klauss 105:a930035b6556 1224 debug_show_cpld = false;
klauss 105:a930035b6556 1225 }
klauss 105:a930035b6556 1226 }
klauss 105:a930035b6556 1227
klauss 105:a930035b6556 1228 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dcks_err ", 9 ) ) {
klauss 105:a930035b6556 1229 if (xmemmatch( (uint8_t*)(debug_buf + 9 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1230 miss_match = false;
klauss 104:62646ef786a3 1231 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rCKS_ERR Debug ON\n\r" );
klauss 105:a930035b6556 1232 if( from_eth ) {
klauss 105:a930035b6556 1233 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "CKS_ERR Debug On\n\r");
klauss 78:1353744f01e1 1234 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1235 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1236 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1237 } else if( udp_query ) {
klauss 105:a930035b6556 1238 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1239 }
klauss 78:1353744f01e1 1240 }
klauss 78:1353744f01e1 1241 debug_cks_err = true;
klauss 78:1353744f01e1 1242 }
klauss 105:a930035b6556 1243 if (xmemmatch( (uint8_t*)(debug_buf + 9 ), (uint8_t*) "off", 3 ) ) {
klauss 78:1353744f01e1 1244 miss_match = false;
klauss 104:62646ef786a3 1245 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rCKS_ERR Debug OFF\n\r" );
klauss 105:a930035b6556 1246 if( from_eth ) {
klauss 105:a930035b6556 1247 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "CKS_ERR Debug off\n\r");
klauss 78:1353744f01e1 1248 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1249 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1250 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1251 } else if( udp_query ) {
klauss 105:a930035b6556 1252 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1253 }
klauss 78:1353744f01e1 1254 }
klauss 78:1353744f01e1 1255 debug_cks_err = false;
klauss 78:1353744f01e1 1256 }
klauss 78:1353744f01e1 1257 }
klauss 105:a930035b6556 1258
klauss 105:a930035b6556 1259 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dinvite ", 8 ) ) {
klauss 105:a930035b6556 1260 if( xmemmatch( (uint8_t*)(debug_buf + 8 ), (uint8_t*) "on", 2 ) ) {
klauss 78:1353744f01e1 1261 miss_match = false;
klauss 104:62646ef786a3 1262 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rInvite Debug ON\n\r" );
klauss 105:a930035b6556 1263 if( from_eth ) {
klauss 105:a930035b6556 1264 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Invite Debug On\n\r");
klauss 78:1353744f01e1 1265 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1266 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1267 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1268 } else if( udp_query ) {
klauss 105:a930035b6556 1269 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1270 }
klauss 78:1353744f01e1 1271 }
klauss 81:3656f00ab3db 1272 debug_invite = true;
klauss 78:1353744f01e1 1273 }
klauss 78:1353744f01e1 1274 if( xmemmatch( (uint8_t*)(debug_buf + 8 ), (uint8_t*) "off",3 )) {
klauss 78:1353744f01e1 1275 miss_match = false;
klauss 104:62646ef786a3 1276 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rInvite Debug OFF\n\r" );
klauss 105:a930035b6556 1277 if( from_eth ) {
klauss 105:a930035b6556 1278 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Invite Debug Off\n\r");
klauss 78:1353744f01e1 1279 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1280 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1281 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1282 } else if( udp_query ) {
klauss 105:a930035b6556 1283 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1284 }
klauss 78:1353744f01e1 1285 }
klauss 78:1353744f01e1 1286 debug_invite = 0;
klauss 45:c80574f24dc3 1287 }
klauss 45:c80574f24dc3 1288 }
klauss 105:a930035b6556 1289
klauss 105:a930035b6556 1290 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dparallel ", 10 ) ) {
klauss 105:a930035b6556 1291 if( xmemmatch( ( uint8_t * )( debug_buf + 10 ), ( uint8_t * )"on", 2 ) ) {
klauss 72:895ca792c647 1292 miss_match = false;
klauss 104:62646ef786a3 1293 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rParallel Write Debug ON\n\r" );
klauss 105:a930035b6556 1294 if( from_eth ) {
klauss 105:a930035b6556 1295 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rParallel Write Debug ON\n\r");
klauss 72:895ca792c647 1296 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1297 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1298 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1299 } else if( udp_query ) {
klauss 105:a930035b6556 1300 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1301 }
klauss 72:895ca792c647 1302 }
klauss 72:895ca792c647 1303 dparallel = true;
klauss 72:895ca792c647 1304 }
klauss 72:895ca792c647 1305 if( xmemmatch( ( uint8_t * )( debug_buf + 10 ), ( uint8_t *)"off", 3 )) {
klauss 72:895ca792c647 1306 miss_match = false;
klauss 104:62646ef786a3 1307 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rParallel Write Debug OFF\n\r" );
klauss 105:a930035b6556 1308 if( from_eth ) {
klauss 105:a930035b6556 1309 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rParallel Write Debug Off\n\r");
klauss 72:895ca792c647 1310 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1311 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1312 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1313 } else if( udp_query ) {
klauss 105:a930035b6556 1314 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1315 }
klauss 72:895ca792c647 1316 }
klauss 72:895ca792c647 1317 dparallel = false;
klauss 72:895ca792c647 1318 }
klauss 72:895ca792c647 1319 }
klauss 105:a930035b6556 1320
klauss 105:a930035b6556 1321 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dtelos ", 7 ) ) {
klauss 105:a930035b6556 1322 if (xmemmatch( (uint8_t*)( debug_buf + 7 ), (uint8_t*) "on", 2 ) ) {
klauss 53:bb492a8f115a 1323 miss_match = false;
klauss 104:62646ef786a3 1324 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rTelemetry Debug ON\n\r" );
klauss 105:a930035b6556 1325 if( from_eth ) {
klauss 105:a930035b6556 1326 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rTelemetry Debug On\n\r");
klauss 53:bb492a8f115a 1327 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1328 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1329 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1330 } else if( udp_query ) {
klauss 105:a930035b6556 1331 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1332 }
klauss 53:bb492a8f115a 1333 }
klauss 53:bb492a8f115a 1334 debug_telemetry = true;
klauss 53:bb492a8f115a 1335 }
klauss 78:1353744f01e1 1336 if (xmemmatch( (uint8_t*)(debug_buf + 7 ), (uint8_t*) "off", 3 )) {
klauss 53:bb492a8f115a 1337 miss_match = false;
klauss 104:62646ef786a3 1338 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rTelemetry Debug OFF\n\r" );
klauss 105:a930035b6556 1339 if( from_eth ) {
klauss 105:a930035b6556 1340 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rTelemetry Debug Off\n\r");
klauss 53:bb492a8f115a 1341 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1342 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1343 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1344 } else if( udp_query ) {
klauss 105:a930035b6556 1345 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1346 }
klauss 53:bb492a8f115a 1347 }
klauss 53:bb492a8f115a 1348 debug_telemetry = false;
klauss 53:bb492a8f115a 1349 }
klauss 53:bb492a8f115a 1350 }
klauss 105:a930035b6556 1351
klauss 105:a930035b6556 1352 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dcks ", 5 ) ) {
klauss 105:a930035b6556 1353 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "on",2 ) ) {
klauss 45:c80574f24dc3 1354 miss_match = false;
klauss 104:62646ef786a3 1355 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rCKS Debug ON\n\r" );
klauss 105:a930035b6556 1356 if( from_eth ) {
klauss 105:a930035b6556 1357 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "CKS Debug On\n\r");
klauss 45:c80574f24dc3 1358 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1359 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1360 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1361 } else if( udp_query ) {
klauss 105:a930035b6556 1362 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1363 }
klauss 45:c80574f24dc3 1364 }
klauss 78:1353744f01e1 1365 debug_cks = true;
klauss 45:c80574f24dc3 1366 }
klauss 50:d9b6577a70f5 1367 if (xmemmatch( (uint8_t*)(debug_buf + 5 ), (uint8_t*) "off",3 )) {
klauss 45:c80574f24dc3 1368 miss_match = false;
klauss 104:62646ef786a3 1369 if( debug_uart3 && !( from_eth ) ) pc.printf( "\n\rCKS Debug OFF\n\r" );
klauss 105:a930035b6556 1370 if( from_eth ) {
klauss 105:a930035b6556 1371 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "CKS Debug Off\n\r");
klauss 45:c80574f24dc3 1372 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1373 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1374 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1375 } else if( udp_query ) {
klauss 105:a930035b6556 1376 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1377 }
klauss 45:c80574f24dc3 1378 }
klauss 78:1353744f01e1 1379 debug_cks = false;
klauss 45:c80574f24dc3 1380 }
klauss 45:c80574f24dc3 1381 }
klauss 105:a930035b6556 1382
klauss 105:a930035b6556 1383 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "promptcb ", 9 ) ) {
klauss 78:1353744f01e1 1384 miss_match = false;
klauss 105:a930035b6556 1385 uint8_t write_buffer[ CB_BUFFER_SIZE ];
klauss 78:1353744f01e1 1386 int ext,port;
klauss 78:1353744f01e1 1387 char *split, *ref, *cmd;
klauss 105:a930035b6556 1388
klauss 78:1353744f01e1 1389 ref = debug_buf;
klauss 105:a930035b6556 1390
klauss 78:1353744f01e1 1391 strcat( debug_buf, "\r" );
klauss 105:a930035b6556 1392
klauss 78:1353744f01e1 1393 split = strtok( debug_buf + 9, " " );
klauss 78:1353744f01e1 1394 ext = atoi( split );
klauss 78:1353744f01e1 1395 split = strtok( NULL, " " );
klauss 78:1353744f01e1 1396 port = atoi( split );
klauss 78:1353744f01e1 1397 split += strlen( split ) + 1;
klauss 78:1353744f01e1 1398 cmd = split;
klauss 105:a930035b6556 1399
klauss 78:1353744f01e1 1400 promptcb_last_ext = ext;
klauss 78:1353744f01e1 1401 promptcb_last_port = port;
klauss 105:a930035b6556 1402
klauss 78:1353744f01e1 1403 strcpy( promptcb_last_cmd, cmd );
klauss 78:1353744f01e1 1404 strcat( cmd, "\r\r\r\n" );
klauss 105:a930035b6556 1405
klauss 104:62646ef786a3 1406 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d cmd=%s", ext, port, cmd );
klauss 105:a930035b6556 1407 send2callboxes( build_cb_package( ext, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1408 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado");
klauss 105:a930035b6556 1409
klauss 105:a930035b6556 1410 if( from_eth ) {
klauss 78:1353744f01e1 1411 char eth_msg[ 512 ];
klauss 78:1353744f01e1 1412 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d cmd=%s\r\nComando enviado\n\r", ext, port, cmd );
klauss 105:a930035b6556 1413 if( tcp_session && !udp_query ) {
klauss 78:1353744f01e1 1414 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 1415 } else if( udp_query ) {
klauss 105:a930035b6556 1416 udp_query_send_msg( eth_msg );
klauss 78:1353744f01e1 1417 }
klauss 78:1353744f01e1 1418 }
klauss 105:a930035b6556 1419
klauss 78:1353744f01e1 1420 debug_buf = ref;
klauss 78:1353744f01e1 1421 bufptr = 0;
klauss 104:62646ef786a3 1422 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 78:1353744f01e1 1423 }
klauss 105:a930035b6556 1424
klauss 105:a930035b6556 1425 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "bye ", 4 ) ) {
klauss 92:92df17f538a8 1426 miss_match = false;
klauss 92:92df17f538a8 1427 int ext,port;
klauss 92:92df17f538a8 1428 char *split, *ref;
klauss 105:a930035b6556 1429 uint8_t write_buffer[ CB_BUFFER_SIZE ], data[ CB_BUFFER_SIZE ];
klauss 105:a930035b6556 1430
klauss 92:92df17f538a8 1431 ref = debug_buf;
klauss 105:a930035b6556 1432
klauss 92:92df17f538a8 1433 strcat( debug_buf, "\r\r\r\n" );
klauss 105:a930035b6556 1434
klauss 92:92df17f538a8 1435 split = strtok( debug_buf + 4, " " );
klauss 92:92df17f538a8 1436 ext = atoi( split );
klauss 92:92df17f538a8 1437 port = convert_ext_to_port( ext );
klauss 105:a930035b6556 1438
klauss 104:62646ef786a3 1439 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d request bye", ext, port );
klauss 105:a930035b6556 1440 send2callboxes( build_cb_package( ext, port, __CB_BYE__, (char * )data, 0x20, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1441 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rBye enviado");
klauss 105:a930035b6556 1442
klauss 105:a930035b6556 1443 if( from_eth ) {
klauss 92:92df17f538a8 1444 char eth_msg[ 512 ];
klauss 92:92df17f538a8 1445 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d request bye\n\r", ext, port );
klauss 105:a930035b6556 1446 if( tcp_session && !udp_query ) {
klauss 92:92df17f538a8 1447 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 1448 } else if( udp_query ) {
klauss 105:a930035b6556 1449 udp_query_send_msg( eth_msg );
klauss 92:92df17f538a8 1450 }
klauss 92:92df17f538a8 1451 }
klauss 105:a930035b6556 1452
klauss 92:92df17f538a8 1453 debug_buf = ref;
klauss 92:92df17f538a8 1454 bufptr = 0;
klauss 104:62646ef786a3 1455 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 92:92df17f538a8 1456 }
klauss 105:a930035b6556 1457
klauss 45:c80574f24dc3 1458 //promptcb ramal porta comando
klauss 50:d9b6577a70f5 1459 //FIXME colocar a parte eth de novo
klauss 59:e1e300880d2d 1460 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "pcb ", 4 )) {
klauss 45:c80574f24dc3 1461 miss_match = false;
klauss 48:195c97f12e8e 1462 int ext,port;
klauss 54:448d57291be6 1463 char *split, *ref, *cmd;
klauss 105:a930035b6556 1464
klauss 62:07e5bdc9f8f7 1465 ref = debug_buf;
klauss 105:a930035b6556 1466
klauss 74:81c47fff88a5 1467 strcat( debug_buf, "\r" );
klauss 105:a930035b6556 1468
klauss 48:195c97f12e8e 1469 split = strtok( debug_buf + 4, " " );
klauss 48:195c97f12e8e 1470 ext = atoi( split );
klauss 105:a930035b6556 1471
klauss 50:d9b6577a70f5 1472 port = convert_ext_to_port( ext );
klauss 48:195c97f12e8e 1473 split += strlen( split ) + 1;
klauss 54:448d57291be6 1474 cmd = split;
klauss 105:a930035b6556 1475
klauss 48:195c97f12e8e 1476 promptcb_last_ext = ext;
klauss 48:195c97f12e8e 1477 promptcb_last_port = port;
klauss 105:a930035b6556 1478
klauss 55:2f5e7374af9d 1479 strcpy( promptcb_last_cmd, cmd );
klauss 105:a930035b6556 1480
klauss 104:62646ef786a3 1481 for( register int i = strlen( cmd ); i < DEBUGBUFSIZE; i++ ) cmd[ i ] = 0;
klauss 105:a930035b6556 1482
klauss 104:62646ef786a3 1483 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d cmd=%s", ext, port, cmd );
klauss 105:a930035b6556 1484 send2callboxes( build_cb_package( ext, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1485 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado");
klauss 105:a930035b6556 1486
klauss 105:a930035b6556 1487 if( from_eth ) {
klauss 62:07e5bdc9f8f7 1488 char eth_msg[ 512 ];
klauss 78:1353744f01e1 1489 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d cmd=%s\r\nComando enviado\n\r", ext, port, cmd );
klauss 105:a930035b6556 1490 if( tcp_session && !udp_query ) {
klauss 62:07e5bdc9f8f7 1491 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 1492 } else if( udp_query ) {
klauss 105:a930035b6556 1493 udp_query_send_msg( eth_msg );
klauss 62:07e5bdc9f8f7 1494 }
klauss 54:448d57291be6 1495 }
klauss 105:a930035b6556 1496
klauss 48:195c97f12e8e 1497 debug_buf = ref;
klauss 62:07e5bdc9f8f7 1498 bufptr = 0;
klauss 104:62646ef786a3 1499 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 45:c80574f24dc3 1500 }
klauss 105:a930035b6556 1501
klauss 98:43b45f26b430 1502 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "pcc ", 4 )) {
klauss 98:43b45f26b430 1503 miss_match = false;
klauss 98:43b45f26b430 1504 int ext,port;
klauss 98:43b45f26b430 1505 char *split, *ref, *cmd;
klauss 105:a930035b6556 1506
klauss 98:43b45f26b430 1507 ref = debug_buf;
klauss 105:a930035b6556 1508
klauss 98:43b45f26b430 1509 strcat( debug_buf, "\r" );
klauss 105:a930035b6556 1510
klauss 98:43b45f26b430 1511 split = strtok( debug_buf + 4, " " );
klauss 98:43b45f26b430 1512 ext = atoi( split );
klauss 105:a930035b6556 1513
klauss 98:43b45f26b430 1514 split += strlen( split ) + 1;
klauss 98:43b45f26b430 1515 split = strtok( NULL, " " );
klauss 98:43b45f26b430 1516 port = atoi( split );
klauss 105:a930035b6556 1517
klauss 98:43b45f26b430 1518 split += strlen( split ) + 1;
klauss 98:43b45f26b430 1519 cmd = split;
klauss 105:a930035b6556 1520
klauss 98:43b45f26b430 1521 promptcb_last_ext = ext;
klauss 98:43b45f26b430 1522 promptcb_last_port = port;
klauss 105:a930035b6556 1523
klauss 98:43b45f26b430 1524 strcpy( promptcb_last_cmd, cmd );
klauss 105:a930035b6556 1525
klauss 104:62646ef786a3 1526 for( register int i = strlen( cmd ); i < DEBUGBUFSIZE; i++ ) cmd[ i ] = 0;
klauss 105:a930035b6556 1527
klauss 104:62646ef786a3 1528 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d cmd=%s", ext, port, cmd );
klauss 105:a930035b6556 1529 send2callboxes( build_cb_package( ext, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1530 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado");
klauss 105:a930035b6556 1531
klauss 105:a930035b6556 1532 if( from_eth ) {
klauss 98:43b45f26b430 1533 char eth_msg[ 512 ];
klauss 98:43b45f26b430 1534 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d cmd=%s\r\nComando enviado\n\r", ext, port, cmd );
klauss 105:a930035b6556 1535 if( tcp_session && !udp_query ) {
klauss 98:43b45f26b430 1536 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 1537 } else if( udp_query ) {
klauss 105:a930035b6556 1538 udp_query_send_msg( eth_msg );
klauss 98:43b45f26b430 1539 }
klauss 98:43b45f26b430 1540 }
klauss 105:a930035b6556 1541
klauss 98:43b45f26b430 1542 debug_buf = ref;
klauss 98:43b45f26b430 1543 bufptr = 0;
klauss 104:62646ef786a3 1544 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 98:43b45f26b430 1545 }
klauss 105:a930035b6556 1546
klauss 99:e80850c51106 1547 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "rush ", 5 )) {
klauss 99:e80850c51106 1548 miss_match = false;
klauss 99:e80850c51106 1549 int ext,port;
klauss 99:e80850c51106 1550 char *split, *ref, cmd[ 32 ];
klauss 105:a930035b6556 1551
klauss 99:e80850c51106 1552 ref = debug_buf;
klauss 105:a930035b6556 1553
klauss 99:e80850c51106 1554 strcat( debug_buf, "\r" );
klauss 105:a930035b6556 1555
klauss 99:e80850c51106 1556 split = strtok( debug_buf + 5, " " );
klauss 99:e80850c51106 1557 ext = atoi( split );
klauss 105:a930035b6556 1558
klauss 99:e80850c51106 1559 split += strlen( split ) + 1;
klauss 99:e80850c51106 1560 split = strtok( NULL, " " );
klauss 99:e80850c51106 1561 port = atoi( split );
klauss 105:a930035b6556 1562
klauss 99:e80850c51106 1563 strcpy( cmd, "ping\r\n" );
klauss 105:a930035b6556 1564
klauss 99:e80850c51106 1565 promptcb_last_ext = ext;
klauss 99:e80850c51106 1566 promptcb_last_port = port;
klauss 105:a930035b6556 1567
klauss 99:e80850c51106 1568 strcpy( promptcb_last_cmd, cmd );
klauss 99:e80850c51106 1569 strcat( cmd, "\r\r\r\n" );
klauss 105:a930035b6556 1570
klauss 105:a930035b6556 1571 for( register uint8_t i = 0; i < 3; i++ ) {
klauss 104:62646ef786a3 1572 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d cmd=%s", ext, port, cmd );
klauss 105:a930035b6556 1573 send2callboxes( build_cb_package( ext, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1574 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado");
klauss 105:a930035b6556 1575
klauss 105:a930035b6556 1576 if( from_eth ) {
klauss 99:e80850c51106 1577 char eth_msg[ 512 ];
klauss 99:e80850c51106 1578 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d cmd=%s\r\nComando enviado\n\r", ext, port, cmd );
klauss 105:a930035b6556 1579 if( tcp_session && !udp_query ) {
klauss 99:e80850c51106 1580 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 1581 } else if( udp_query ) {
klauss 105:a930035b6556 1582 udp_query_send_msg( eth_msg );
klauss 99:e80850c51106 1583 }
klauss 99:e80850c51106 1584 }
klauss 99:e80850c51106 1585 }
klauss 105:a930035b6556 1586
klauss 99:e80850c51106 1587 debug_buf = ref;
klauss 99:e80850c51106 1588 bufptr = 0;
klauss 104:62646ef786a3 1589 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 99:e80850c51106 1590 }
klauss 105:a930035b6556 1591
klauss 105:a930035b6556 1592
klauss 105:a930035b6556 1593
klauss 59:e1e300880d2d 1594 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "_pcb",4 )) {
klauss 45:c80574f24dc3 1595 miss_match = false;
klauss 48:195c97f12e8e 1596 debug_buf[ bufptr++ ] = 0x0D;
klauss 48:195c97f12e8e 1597 debug_buf[ bufptr++ ] = 0x00;
klauss 45:c80574f24dc3 1598
klauss 104:62646ef786a3 1599 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d\r\ncmd=%s\r\n",promptcb_last_ext, promptcb_last_port, debug_buf + 4 );
klauss 105:a930035b6556 1600 send2callboxes( build_cb_package( promptcb_last_ext, promptcb_last_port, __PROMPT__, debug_buf + 4, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 104:62646ef786a3 1601 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado\n\r");
klauss 45:c80574f24dc3 1602 }
klauss 62:07e5bdc9f8f7 1603
klauss 58:af7e8788f106 1604 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "cks",3 )) {
klauss 45:c80574f24dc3 1605 miss_match = false;
klauss 81:3656f00ab3db 1606 pcks_s = true;
klauss 45:c80574f24dc3 1607 }
klauss 45:c80574f24dc3 1608
klauss 58:af7e8788f106 1609 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "showcb",6 )) {
klauss 45:c80574f24dc3 1610 miss_match = false;
klauss 81:3656f00ab3db 1611 pshowcb = true;
klauss 45:c80574f24dc3 1612 }
klauss 105:a930035b6556 1613
klauss 58:af7e8788f106 1614 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "debug_main ", 11 )) {
klauss 81:3656f00ab3db 1615 if (xmemmatch( (uint8_t*)( debug_buf + 11 ), (uint8_t*) "on", 2 )) {
klauss 45:c80574f24dc3 1616 miss_match = false;
klauss 104:62646ef786a3 1617 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nDebug Main ON");
klauss 105:a930035b6556 1618 if( from_eth ) {
klauss 105:a930035b6556 1619 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug Main On\n\r");
klauss 45:c80574f24dc3 1620 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1621 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1622 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1623 } else if( udp_query ) {
klauss 105:a930035b6556 1624 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1625 }
klauss 45:c80574f24dc3 1626 }
klauss 81:3656f00ab3db 1627 debug_main = true;
klauss 45:c80574f24dc3 1628 }
klauss 81:3656f00ab3db 1629 if (xmemmatch( (uint8_t*)( debug_buf + 11 ), (uint8_t*) "off", 3 )) {
klauss 45:c80574f24dc3 1630 miss_match = false;
klauss 104:62646ef786a3 1631 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nDebug Main OFF");
klauss 105:a930035b6556 1632 if( from_eth ) {
klauss 105:a930035b6556 1633 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug Main Off\n\r");
klauss 45:c80574f24dc3 1634 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1635 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1636 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1637 } else if( udp_query ) {
klauss 105:a930035b6556 1638 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1639 }
klauss 45:c80574f24dc3 1640 }
klauss 45:c80574f24dc3 1641 debug_main = 0;
klauss 45:c80574f24dc3 1642 }
klauss 45:c80574f24dc3 1643 }
klauss 105:a930035b6556 1644
klauss 105:a930035b6556 1645 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dout ", 5 ) ) {
klauss 105:a930035b6556 1646 if (xmemmatch( (uint8_t*)( debug_buf + 5 ), (uint8_t*) "on", 2 ) ) {
klauss 81:3656f00ab3db 1647 miss_match = false;
klauss 104:62646ef786a3 1648 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nOut Debug ON");
klauss 105:a930035b6556 1649 if( from_eth ) {
klauss 105:a930035b6556 1650 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Out Debug On\n\r");
klauss 81:3656f00ab3db 1651 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1652 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1653 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1654 } else if( udp_query ) {
klauss 105:a930035b6556 1655 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1656 }
klauss 81:3656f00ab3db 1657 }
klauss 81:3656f00ab3db 1658 debug_out_of_range = true;
klauss 81:3656f00ab3db 1659 }
klauss 105:a930035b6556 1660 if (xmemmatch( (uint8_t*)( debug_buf + 5 ), (uint8_t*) "off", 3 ) ) {
klauss 81:3656f00ab3db 1661 miss_match = false;
klauss 104:62646ef786a3 1662 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nOut Debug OFF");
klauss 105:a930035b6556 1663 if( from_eth ) {
klauss 105:a930035b6556 1664 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Out Debug Off\n\r");
klauss 81:3656f00ab3db 1665 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1666 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1667 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1668 } else if( udp_query ) {
klauss 105:a930035b6556 1669 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1670 }
klauss 81:3656f00ab3db 1671 }
klauss 81:3656f00ab3db 1672 debug_out_of_range = false;
klauss 81:3656f00ab3db 1673 }
klauss 81:3656f00ab3db 1674 }
klauss 105:a930035b6556 1675
klauss 105:a930035b6556 1676 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dboot ", 6 ) ) {
klauss 105:a930035b6556 1677 if (xmemmatch( (uint8_t*)( debug_buf + 6 ), (uint8_t*) "on", 2 ) ) {
klauss 99:e80850c51106 1678 miss_match = false;
klauss 104:62646ef786a3 1679 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nBoot Debug ON");
klauss 105:a930035b6556 1680 if( from_eth ) {
klauss 105:a930035b6556 1681 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Boot Debug On\n\r");
klauss 99:e80850c51106 1682 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1683 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1684 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1685 } else if( udp_query ) {
klauss 105:a930035b6556 1686 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1687 }
klauss 99:e80850c51106 1688 }
klauss 99:e80850c51106 1689 debug_boot = true;
klauss 99:e80850c51106 1690 }
klauss 105:a930035b6556 1691 if (xmemmatch( (uint8_t*)( debug_buf + 6 ), (uint8_t*) "off", 3 ) ) {
klauss 99:e80850c51106 1692 miss_match = false;
klauss 104:62646ef786a3 1693 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nBoot Debug OFF");
klauss 105:a930035b6556 1694 if( from_eth ) {
klauss 105:a930035b6556 1695 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Boot Debug Off\n\r");
klauss 99:e80850c51106 1696 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1697 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1698 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1699 } else if( udp_query ) {
klauss 105:a930035b6556 1700 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1701 }
klauss 99:e80850c51106 1702 }
klauss 99:e80850c51106 1703 debug_boot = false;
klauss 99:e80850c51106 1704 }
klauss 99:e80850c51106 1705 }
klauss 105:a930035b6556 1706
klauss 105:a930035b6556 1707 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dfw ", 4 ) ) {
klauss 105:a930035b6556 1708 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "on", 2 ) ) {
klauss 99:e80850c51106 1709 miss_match = false;
klauss 104:62646ef786a3 1710 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nFW Debug ON");
klauss 105:a930035b6556 1711 if( from_eth ) {
klauss 105:a930035b6556 1712 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FW Debug On\n\r");
klauss 99:e80850c51106 1713 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1714 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1715 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1716 } else if( udp_query ) {
klauss 105:a930035b6556 1717 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1718 }
klauss 99:e80850c51106 1719 }
klauss 99:e80850c51106 1720 debug_fw = true;
klauss 99:e80850c51106 1721 }
klauss 105:a930035b6556 1722 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "off", 3 ) ) {
klauss 99:e80850c51106 1723 miss_match = false;
klauss 104:62646ef786a3 1724 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nFW Debug OFF");
klauss 105:a930035b6556 1725 if( from_eth ) {
klauss 105:a930035b6556 1726 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FW Debug Off\n\r");
klauss 99:e80850c51106 1727 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1728 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1729 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1730 } else if( udp_query ) {
klauss 105:a930035b6556 1731 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1732 }
klauss 99:e80850c51106 1733 }
klauss 99:e80850c51106 1734 debug_fw = false;
klauss 99:e80850c51106 1735 }
klauss 99:e80850c51106 1736 }
klauss 105:a930035b6556 1737
klauss 105:a930035b6556 1738 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dfwp ", 5 ) ) {
klauss 105:a930035b6556 1739 if (xmemmatch( (uint8_t*)( debug_buf + 5 ), (uint8_t*) "on", 2 ) ) {
klauss 99:e80850c51106 1740 miss_match = false;
klauss 104:62646ef786a3 1741 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nFWPrint Debug ON");
klauss 105:a930035b6556 1742 if( from_eth ) {
klauss 105:a930035b6556 1743 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FWPrint Debug On\n\r");
klauss 99:e80850c51106 1744 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1745 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1746 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1747 } else if( udp_query ) {
klauss 105:a930035b6556 1748 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1749 }
klauss 99:e80850c51106 1750 }
klauss 99:e80850c51106 1751 debug_fw_print = true;
klauss 99:e80850c51106 1752 }
klauss 105:a930035b6556 1753 if (xmemmatch( (uint8_t*)( debug_buf + 5 ), (uint8_t*) "off", 3 ) ) {
klauss 99:e80850c51106 1754 miss_match = false;
klauss 104:62646ef786a3 1755 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\nFWPrint Debug OFF");
klauss 105:a930035b6556 1756 if( from_eth ) {
klauss 105:a930035b6556 1757 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FWPrint Debug Off\n\r");
klauss 99:e80850c51106 1758 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1759 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1760 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1761 } else if( udp_query ) {
klauss 105:a930035b6556 1762 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1763 }
klauss 99:e80850c51106 1764 }
klauss 99:e80850c51106 1765 debug_fw_print = false;
klauss 99:e80850c51106 1766 }
klauss 99:e80850c51106 1767 }
klauss 105:a930035b6556 1768
klauss 99:e80850c51106 1769 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "drx ", 4 )) {
klauss 99:e80850c51106 1770 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "on",2 )) {
klauss 45:c80574f24dc3 1771 miss_match = false;
klauss 104:62646ef786a3 1772 if( debug_uart3 && !( from_eth ) ) pc.printf("\tDebug Cbx Rx ON");
klauss 105:a930035b6556 1773 if( from_eth ) {
klauss 105:a930035b6556 1774 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\tDebug Cbx On Rx on\n\r");
klauss 45:c80574f24dc3 1775 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1776 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1777 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1778 } else if( udp_query ) {
klauss 105:a930035b6556 1779 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1780 }
klauss 45:c80574f24dc3 1781 }
klauss 81:3656f00ab3db 1782 debug_cb_rx = true;
klauss 45:c80574f24dc3 1783 }
klauss 99:e80850c51106 1784 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "off",3 )) {
klauss 45:c80574f24dc3 1785 miss_match = false;
klauss 104:62646ef786a3 1786 if( debug_uart3 && !( from_eth ) ) pc.printf("\tDebug Cbx Rx OFF");
klauss 105:a930035b6556 1787 if( from_eth ) {
klauss 105:a930035b6556 1788 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\tDebug Cbx On Rx off\n\r");
klauss 45:c80574f24dc3 1789 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1790 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1791 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1792 } else if( udp_query ) {
klauss 105:a930035b6556 1793 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1794 }
klauss 45:c80574f24dc3 1795 }
klauss 99:e80850c51106 1796 debug_cb_rx = false;
klauss 99:e80850c51106 1797 }
klauss 99:e80850c51106 1798 }
klauss 105:a930035b6556 1799
klauss 99:e80850c51106 1800 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "dtx ", 4 )) {
klauss 99:e80850c51106 1801 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "on",2 )) {
klauss 99:e80850c51106 1802 miss_match = false;
klauss 104:62646ef786a3 1803 if( debug_uart3 && !( from_eth ) ) pc.printf("\tDebug Cbx Tx ON");
klauss 105:a930035b6556 1804 if( from_eth ) {
klauss 105:a930035b6556 1805 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\tDebug Cbx Tx on\n\r");
klauss 99:e80850c51106 1806 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1807 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1808 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1809 } else if( udp_query ) {
klauss 105:a930035b6556 1810 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1811 }
klauss 99:e80850c51106 1812 }
klauss 99:e80850c51106 1813 debug_cb_tx = true;
klauss 99:e80850c51106 1814 }
klauss 99:e80850c51106 1815 if (xmemmatch( (uint8_t*)( debug_buf + 4 ), (uint8_t*) "off",3 )) {
klauss 99:e80850c51106 1816 miss_match = false;
klauss 104:62646ef786a3 1817 if( debug_uart3 && !( from_eth ) ) pc.printf("\tDebug Cbx Tx OFF");
klauss 105:a930035b6556 1818 if( from_eth ) {
klauss 105:a930035b6556 1819 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\tDebug Cbx Tx off\n\r");
klauss 99:e80850c51106 1820 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1821 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1822 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1823 } else if( udp_query ) {
klauss 105:a930035b6556 1824 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1825 }
klauss 99:e80850c51106 1826 }
klauss 99:e80850c51106 1827 debug_cb_tx = false;
klauss 45:c80574f24dc3 1828 }
klauss 45:c80574f24dc3 1829 }
klauss 105:a930035b6556 1830
klauss 58:af7e8788f106 1831 else if (xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "debug_file ", 11 )) {
klauss 45:c80574f24dc3 1832 if (xmemmatch( (uint8_t*)( debug_buf + 11 ), (uint8_t*) "on",2 )) {
klauss 45:c80574f24dc3 1833 miss_match = false;
klauss 104:62646ef786a3 1834 if( debug_uart3 && !( from_eth ) ) pc.printf("\tDebug File ON");
klauss 105:a930035b6556 1835 if( from_eth ) {
klauss 105:a930035b6556 1836 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\tDebug File On\n\r");
klauss 45:c80574f24dc3 1837 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1838 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1839 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1840 } else if( udp_query ) {
klauss 105:a930035b6556 1841 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1842 }
klauss 45:c80574f24dc3 1843 }
klauss 105:a930035b6556 1844 debug_file = true;
klauss 45:c80574f24dc3 1845 }
klauss 45:c80574f24dc3 1846 if (xmemmatch( (uint8_t*)( debug_buf + 11 ), (uint8_t*) "off",3 )) {
klauss 45:c80574f24dc3 1847 miss_match = false;
klauss 104:62646ef786a3 1848 if( debug_uart3 && !( from_eth ) ) pc.printf("Debug File OFF");
klauss 105:a930035b6556 1849 if( from_eth ) {
klauss 105:a930035b6556 1850 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Debug File Off\n\r");
klauss 45:c80574f24dc3 1851 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 1852 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 1853 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1854 } else if( udp_query ) {
klauss 105:a930035b6556 1855 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1856 }
klauss 45:c80574f24dc3 1857 }
klauss 105:a930035b6556 1858 debug_file = false;
klauss 45:c80574f24dc3 1859 }
klauss 45:c80574f24dc3 1860 }
klauss 45:c80574f24dc3 1861
klauss 105:a930035b6556 1862 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "uptime" ) )
klauss 105:a930035b6556 1863 {
klauss 105:a930035b6556 1864 miss_match = false;
klauss 105:a930035b6556 1865 show_uptime = true;
klauss 105:a930035b6556 1866 }
klauss 105:a930035b6556 1867
klauss 58:af7e8788f106 1868 else if( xstrmatch( (uint8_t*)debug_buf, (uint8_t*) "help" )) {
klauss 45:c80574f24dc3 1869 miss_match = false;
klauss 104:62646ef786a3 1870 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r****************************PROMPT HELP******************\n\r");
klauss 105:a930035b6556 1871 if( from_eth ) {
klauss 45:c80574f24dc3 1872 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "\n\r****************************PROMPT HELP******************\n\r" );
klauss 105:a930035b6556 1873 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1874
klauss 105:a930035b6556 1875 else if( udp_query ) {
klauss 105:a930035b6556 1876 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 1877 /*
klauss 105:a930035b6556 1878 int send = udp_client.sendTo( udp_server, debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 1879
klauss 105:a930035b6556 1880 if( send != strlen( debug_buf ) ) {
klauss 105:a930035b6556 1881 if( debug_reconnect ) send_msg("Reconnect udp_query client");
klauss 104:62646ef786a3 1882 reconnect_prompt_udp_socket();
klauss 104:62646ef786a3 1883 miss_prompt_udp_send_pkg++;
klauss 104:62646ef786a3 1884 }
klauss 105:a930035b6556 1885 */
klauss 45:c80574f24dc3 1886 }
klauss 44:cc4996469404 1887 }
klauss 105:a930035b6556 1888
klauss 104:62646ef786a3 1889 if( debug_uart3 && !( from_eth ) ) pc.printf("ifconfig - mostra o arquivo de configuracao do sistema\n\r");
klauss 105:a930035b6556 1890 if( from_eth ) {
klauss 45:c80574f24dc3 1891 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "ifconfig - mostra o arquivo de configuracao do sistema\n\r" );
klauss 105:a930035b6556 1892 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1893
klauss 105:a930035b6556 1894 else if( udp_query ) {
klauss 105:a930035b6556 1895 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1896 }
klauss 45:c80574f24dc3 1897 }
klauss 104:62646ef786a3 1898 if( debug_uart3 && !( from_eth ) ) pc.printf("dconfig - volta as configuracoes do sistema para o padrao de fabrica\n\r");
klauss 105:a930035b6556 1899 if( from_eth ) {
klauss 45:c80574f24dc3 1900 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "dconfig - volta as configuracoes do sistema para o padrao de fabrica\n\r" );
klauss 105:a930035b6556 1901 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1902
klauss 105:a930035b6556 1903 else if( udp_query ) {
klauss 105:a930035b6556 1904 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1905 }
klauss 45:c80574f24dc3 1906 }
klauss 104:62646ef786a3 1907 if( debug_uart3 && !( from_eth ) ) pc.printf("callme [ramal porta] - envia o pedido de ligacao para o callbox com o ramal e porta indicada\n\r");
klauss 105:a930035b6556 1908 if( from_eth ) {
klauss 45:c80574f24dc3 1909 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "callme [ramal porta] - envia o pedido de ligacao para o callbox com o ramal e porta indicada\n\r" );
klauss 105:a930035b6556 1910 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1911
klauss 105:a930035b6556 1912 else if( udp_query ) {
klauss 105:a930035b6556 1913 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1914 }
klauss 45:c80574f24dc3 1915 }
klauss 104:62646ef786a3 1916 if( debug_uart3 && !( from_eth ) ) pc.printf("pcb porta comando - envia o <comando> para o cbx <ramal> e <porta> executar\n\r");
klauss 105:a930035b6556 1917 if( from_eth ) {
klauss 45:c80574f24dc3 1918 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "promptcb ramal porta comando - envia o <comando> para o cbx <ramal> e <porta> executar\n\r" );
klauss 105:a930035b6556 1919 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1920
klauss 105:a930035b6556 1921 else if( udp_query ) {
klauss 105:a930035b6556 1922 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1923 }
klauss 45:c80574f24dc3 1924 }
klauss 104:62646ef786a3 1925 if( debug_uart3 && !( from_eth ) ) pc.printf("format - formata o sistema de arquivos\n\r");
klauss 104:62646ef786a3 1926 if( debug_uart3 && !( from_eth ) ) pc.printf("reset - resta o sistema\n\r");
klauss 105:a930035b6556 1927 if( from_eth ) {
klauss 45:c80574f24dc3 1928 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "reset - resta o sistema\n\r" );
klauss 105:a930035b6556 1929 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1930
klauss 105:a930035b6556 1931 else if( udp_query ) {
klauss 105:a930035b6556 1932 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1933 }
klauss 45:c80574f24dc3 1934 }
klauss 104:62646ef786a3 1935 if( debug_uart3 && !( from_eth ) ) pc.printf("ipset [ip] - Configura o IP da cabeceira\n\r");
klauss 105:a930035b6556 1936 if( from_eth ) {
klauss 45:c80574f24dc3 1937 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "ipset [ip] - Configura o IP da cabeceira\n\r" );
klauss 105:a930035b6556 1938 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1939
klauss 105:a930035b6556 1940 else if( udp_query ) {
klauss 105:a930035b6556 1941 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1942 }
klauss 45:c80574f24dc3 1943 }
klauss 104:62646ef786a3 1944 if( debug_uart3 && !( from_eth ) ) pc.printf("extset [ext] - Configura a ext da cabeceira\n\r");
klauss 105:a930035b6556 1945 if( from_eth ) {
klauss 45:c80574f24dc3 1946 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "extset [ext] - Configura a ext da cabeceira\n\r" );
klauss 105:a930035b6556 1947 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1948
klauss 105:a930035b6556 1949 else if( udp_query ) {
klauss 105:a930035b6556 1950 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1951 }
klauss 45:c80574f24dc3 1952 }
klauss 104:62646ef786a3 1953 if( debug_uart3 && !( from_eth ) ) pc.printf("msipport [port] - Configura a porta SIP da cabeceira\n\r");
klauss 105:a930035b6556 1954 if( from_eth ) {
klauss 45:c80574f24dc3 1955 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "msipport [port] - Configura a porta SIP da cabeceira\n\r" );
klauss 105:a930035b6556 1956 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1957
klauss 105:a930035b6556 1958 else if( udp_query ) {
klauss 105:a930035b6556 1959 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1960 }
klauss 45:c80574f24dc3 1961 }
klauss 104:62646ef786a3 1962 if( debug_uart3 && !( from_eth ) ) pc.printf("serverip [ip] - Configura o ip do servidor asterisk\n\r");
klauss 105:a930035b6556 1963 if( from_eth ) {
klauss 45:c80574f24dc3 1964 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "serverip [ip] - Configura o ip do servidor asterisk\n\r" );
klauss 105:a930035b6556 1965 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1966
klauss 105:a930035b6556 1967 else if( udp_query ) {
klauss 105:a930035b6556 1968 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1969 }
klauss 45:c80574f24dc3 1970 }
klauss 104:62646ef786a3 1971 if( debug_uart3 && !( from_eth ) ) pc.printf("serextset [ext] - Configura a server ext da cabeceira\n\r");
klauss 105:a930035b6556 1972 if( from_eth ) {
klauss 45:c80574f24dc3 1973 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "serextset [ext] - Configura a server ext da cabeceira\n\r" );
klauss 105:a930035b6556 1974 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1975
klauss 105:a930035b6556 1976 else if( udp_query ) {
klauss 105:a930035b6556 1977 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1978 }
klauss 45:c80574f24dc3 1979 }
klauss 104:62646ef786a3 1980 if( debug_uart3 && !( from_eth ) ) pc.printf("ssport [port] - Configura a porta SIP do servidor asterisk\n\r");
klauss 105:a930035b6556 1981 if( from_eth ) {
klauss 45:c80574f24dc3 1982 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "ssport [port] - Configura a porta SIP do servidor asterisk\n\r" );
klauss 105:a930035b6556 1983 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1984
klauss 105:a930035b6556 1985 else if( udp_query ) {
klauss 105:a930035b6556 1986 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1987 }
klauss 45:c80574f24dc3 1988 }
klauss 104:62646ef786a3 1989 if( debug_uart3 && !( from_eth ) ) pc.printf("maskset [mask] - Configura a mascara da cabeceira\n\r");
klauss 105:a930035b6556 1990 if( from_eth ) {
klauss 45:c80574f24dc3 1991 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "maskset [mask] - Configura a mascara da cabeceira\n\r" );
klauss 105:a930035b6556 1992 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 1993
klauss 105:a930035b6556 1994 else if( udp_query ) {
klauss 105:a930035b6556 1995 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 1996 }
klauss 45:c80574f24dc3 1997 }
klauss 104:62646ef786a3 1998 if( debug_uart3 && !( from_eth ) ) pc.printf("gatewayset [gateway] - Configura o gateway da cabeceira\n\r");
klauss 105:a930035b6556 1999 if( from_eth ) {
klauss 45:c80574f24dc3 2000 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "gatewayset [gateway] - Configura o gateway da cabeceira\n\r" );
klauss 105:a930035b6556 2001 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2002
klauss 105:a930035b6556 2003 else if( udp_query ) {
klauss 105:a930035b6556 2004 udp_query_send_msg( debug_buf );
klauss 56:c64bcbaa621a 2005 }
klauss 56:c64bcbaa621a 2006 }
klauss 105:a930035b6556 2007
klauss 104:62646ef786a3 2008 if( debug_uart3 && !( from_eth ) ) pc.printf("fw_ip - Configura o IP do servidor de fw\n\r");
klauss 105:a930035b6556 2009 if( from_eth ) {
klauss 99:e80850c51106 2010 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "fw_ip - Configura o IP do servidor de fw\n\r" );
klauss 105:a930035b6556 2011 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2012
klauss 105:a930035b6556 2013 else if( udp_query ) {
klauss 105:a930035b6556 2014 udp_query_send_msg( debug_buf );
klauss 99:e80850c51106 2015 }
klauss 99:e80850c51106 2016 }
klauss 104:62646ef786a3 2017 if( debug_uart3 && !( from_eth ) ) pc.printf("fw_port - Configura a porta do servidor de fw\n\r");
klauss 105:a930035b6556 2018 if( from_eth ) {
klauss 99:e80850c51106 2019 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "fw_port - Configura a porta do servidor de fw\n\r" );
klauss 105:a930035b6556 2020 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2021
klauss 105:a930035b6556 2022 else if( udp_query ) {
klauss 105:a930035b6556 2023 udp_query_send_msg( debug_buf );
klauss 99:e80850c51106 2024 }
klauss 99:e80850c51106 2025 }
klauss 105:a930035b6556 2026
klauss 104:62646ef786a3 2027 if( debug_uart3 && !( from_eth ) ) pc.printf("maxext - Configura o maior ramal possivel de ser registrado nesse ramo\n\r");
klauss 105:a930035b6556 2028 if( from_eth ) {
klauss 81:3656f00ab3db 2029 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "maxext - Configura o maior ramal possivel de ser registrado nesse ramo\n\r" );
klauss 105:a930035b6556 2030 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2031
klauss 105:a930035b6556 2032 else if( udp_query ) {
klauss 105:a930035b6556 2033 udp_query_send_msg( debug_buf );
klauss 81:3656f00ab3db 2034 }
klauss 81:3656f00ab3db 2035 }
klauss 105:a930035b6556 2036
klauss 104:62646ef786a3 2037 if( debug_uart3 && !( from_eth ) ) pc.printf("minext - Configura o menor ramal possivel de ser registrado nesse ramo\n\r");
klauss 105:a930035b6556 2038 if( from_eth ) {
klauss 81:3656f00ab3db 2039 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "minext - Configura o menor ramal possivel de ser registrado nesse ramo\n\r" );
klauss 105:a930035b6556 2040 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2041
klauss 105:a930035b6556 2042 else if( udp_query ) {
klauss 105:a930035b6556 2043 udp_query_send_msg( debug_buf );
klauss 81:3656f00ab3db 2044 }
klauss 81:3656f00ab3db 2045 }
klauss 105:a930035b6556 2046
klauss 104:62646ef786a3 2047 if( debug_uart3 && !( from_eth ) ) pc.printf("showcb - lista os Cbx registrados na header\n\r");
klauss 105:a930035b6556 2048 if( from_eth ) {
klauss 45:c80574f24dc3 2049 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "showcb - lista os Cbx registrados na header\n\r" );
klauss 105:a930035b6556 2050 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2051
klauss 105:a930035b6556 2052 else if( udp_query ) {
klauss 105:a930035b6556 2053 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2054 }
klauss 45:c80574f24dc3 2055 }
klauss 104:62646ef786a3 2056 if( debug_uart3 && !( from_eth ) ) pc.printf("cks - exibe estatisticas de check sum\n\r");
klauss 105:a930035b6556 2057 if( from_eth ) {
klauss 45:c80574f24dc3 2058 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "cks - exibe estatisticas de check sum\n\r" );
klauss 105:a930035b6556 2059 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2060
klauss 105:a930035b6556 2061 else if( udp_query ) {
klauss 105:a930035b6556 2062 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2063 }
klauss 45:c80574f24dc3 2064 }
klauss 104:62646ef786a3 2065 if( debug_uart3 && !( from_eth ) ) pc.printf("reset_cks - reseta estatisticas de check sum\n\r");
klauss 105:a930035b6556 2066 if( from_eth ) {
klauss 52:12930cef17c4 2067 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "reset_cks - reseta estatisticas de check sum\n\r" );
klauss 105:a930035b6556 2068 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2069
klauss 105:a930035b6556 2070 else if( udp_query ) {
klauss 105:a930035b6556 2071 udp_query_send_msg( debug_buf );
klauss 52:12930cef17c4 2072 }
klauss 52:12930cef17c4 2073 }
klauss 105:a930035b6556 2074
klauss 104:62646ef786a3 2075 if( debug_uart3 && !( from_eth ) ) pc.printf(". - executa o comando anterior novamente\n\r");
klauss 105:a930035b6556 2076 if( from_eth ) {
klauss 45:c80574f24dc3 2077 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, ". - executa o comando anterior novamente\n\r" );
klauss 105:a930035b6556 2078 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2079
klauss 105:a930035b6556 2080 else if( udp_query ) {
klauss 105:a930035b6556 2081 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2082 }
klauss 45:c80574f24dc3 2083 }
klauss 104:62646ef786a3 2084 if( debug_uart3 && !( from_eth ) ) pc.printf("debug [on|off|show] - seleciona debugs gerais | lista de debugs \n\r");
klauss 105:a930035b6556 2085 if( from_eth ) {
klauss 45:c80574f24dc3 2086 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "debug [on|off|show] - seleciona debugs gerais | lista de debugs \n\r" );
klauss 105:a930035b6556 2087 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2088
klauss 105:a930035b6556 2089 else if( udp_query ) {
klauss 105:a930035b6556 2090 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2091 }
klauss 45:c80574f24dc3 2092 }
klauss 104:62646ef786a3 2093 if( debug_uart3 && !( from_eth ) ) pc.printf("{ flood [ on | off ] | [+|-] } - simula envio de pacotes de audio\n\r");
klauss 105:a930035b6556 2094 if( from_eth ) {
klauss 62:07e5bdc9f8f7 2095 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "{ flood [ on | off ] | [+|-] } - simula envio de pacotes de audio\n\r");
klauss 105:a930035b6556 2096 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2097
klauss 105:a930035b6556 2098 else if( udp_query ) {
klauss 105:a930035b6556 2099 udp_query_send_msg( debug_buf );
klauss 62:07e5bdc9f8f7 2100 }
klauss 62:07e5bdc9f8f7 2101 }
klauss 105:a930035b6556 2102
klauss 104:62646ef786a3 2103 if( debug_uart3 && !( from_eth ) ) pc.printf("silence <start_ext end_ext> - envia comando de flood off para os ramais no intervalo end_ext - start_ext\n\r");
klauss 105:a930035b6556 2104 if( from_eth ) {
klauss 65:0b653cfe95db 2105 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "silence <start_ext end_ext> - envia comando de flood off para os ramais no intervalo end_ext - start_ext\n\r");
klauss 105:a930035b6556 2106 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2107
klauss 105:a930035b6556 2108 else if( udp_query ) {
klauss 105:a930035b6556 2109 udp_query_send_msg( debug_buf );
klauss 65:0b653cfe95db 2110 }
klauss 65:0b653cfe95db 2111 }
klauss 105:a930035b6556 2112
klauss 104:62646ef786a3 2113 if( debug_uart3 && !( from_eth ) ) pc.printf("++ ext - Header flood on, ext flood on\n\r");
klauss 105:a930035b6556 2114 if( from_eth ) {
klauss 62:07e5bdc9f8f7 2115 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "++ ext - Header flood on, ext flood on\n\r");
klauss 105:a930035b6556 2116 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2117
klauss 105:a930035b6556 2118 else if( udp_query ) {
klauss 105:a930035b6556 2119 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2120 }
klauss 45:c80574f24dc3 2121 }
klauss 105:a930035b6556 2122
klauss 104:62646ef786a3 2123 if( debug_uart3 && !( from_eth ) ) pc.printf("-- ext - Header flood off, ext flood off\n\r");
klauss 105:a930035b6556 2124 if( from_eth ) {
klauss 66:3f1d22e69e7b 2125 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "++ ext - Header flood on, ext flood on\n\r");
klauss 105:a930035b6556 2126 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2127
klauss 105:a930035b6556 2128 else if( udp_query ) {
klauss 105:a930035b6556 2129 udp_query_send_msg( debug_buf );
klauss 66:3f1d22e69e7b 2130 }
klauss 66:3f1d22e69e7b 2131 }
klauss 105:a930035b6556 2132
klauss 104:62646ef786a3 2133 if( debug_uart3 && !( from_eth ) ) pc.printf("rx - Exibe ultimo pacote recebido dos CBx\n\r");
klauss 105:a930035b6556 2134 if( from_eth ) {
klauss 64:5b011d5707d2 2135 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "rx - Exibe ultimo pacote recebido dos CBx\n\r");
klauss 105:a930035b6556 2136 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2137
klauss 105:a930035b6556 2138 else if( udp_query ) {
klauss 105:a930035b6556 2139 udp_query_send_msg( debug_buf );
klauss 64:5b011d5707d2 2140 }
klauss 64:5b011d5707d2 2141 }
klauss 104:62646ef786a3 2142 if( debug_uart3 && !( from_eth ) ) pc.printf("tx - Exibe ultimo pacote enviado para os CBx\n\r");
klauss 105:a930035b6556 2143 if( from_eth ) {
klauss 64:5b011d5707d2 2144 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "tx - Exibe ultimo pacote enviado para os CBx\n\r");
klauss 105:a930035b6556 2145 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2146
klauss 105:a930035b6556 2147 else if( udp_query ) {
klauss 105:a930035b6556 2148 udp_query_send_msg( debug_buf );
klauss 64:5b011d5707d2 2149 }
klauss 64:5b011d5707d2 2150 }
klauss 104:62646ef786a3 2151 if( debug_uart3 && !( from_eth ) ) pc.printf("ls | status - Exibe uma lista ordenada por ext do CBx registrados na Header\n\r");
klauss 105:a930035b6556 2152 if( from_eth ) {
klauss 64:5b011d5707d2 2153 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "ls | status - Exibe uma lista ordenada por ext do CBx registrados na Header\n\r");
klauss 105:a930035b6556 2154 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2155
klauss 105:a930035b6556 2156 else if( udp_query ) {
klauss 105:a930035b6556 2157 udp_query_send_msg( debug_buf );
klauss 64:5b011d5707d2 2158 }
klauss 64:5b011d5707d2 2159 }
klauss 104:62646ef786a3 2160 if( debug_uart3 && !( from_eth ) ) pc.printf("types - Lista os types usados no protocolo de comunicacao Header -- CBx\n\r");
klauss 105:a930035b6556 2161 if( from_eth ) {
klauss 64:5b011d5707d2 2162 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "types - Lista os types usados no protocolo de comunicacao Header -- CBx\n\r");
klauss 105:a930035b6556 2163 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2164
klauss 105:a930035b6556 2165 else if( udp_query ) {
klauss 105:a930035b6556 2166 udp_query_send_msg( debug_buf );
klauss 64:5b011d5707d2 2167 }
klauss 64:5b011d5707d2 2168 }
klauss 104:62646ef786a3 2169 if( debug_uart3 && !( from_eth ) ) pc.printf("protocol - Exibe formato do pacote seguindo o protocolo de comunicacao Header -- CBx\n\r");
klauss 105:a930035b6556 2170 if( from_eth ) {
klauss 64:5b011d5707d2 2171 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "protocol - Exibe formato do pacote seguindo o protocolo de comunicacao Header -- CBx\n\r");
klauss 105:a930035b6556 2172 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2173
klauss 105:a930035b6556 2174 else if( udp_query ) {
klauss 105:a930035b6556 2175 udp_query_send_msg( debug_buf );
klauss 64:5b011d5707d2 2176 }
klauss 64:5b011d5707d2 2177 }
klauss 105:a930035b6556 2178
klauss 104:62646ef786a3 2179 if( debug_uart3 && !( from_eth ) ) pc.printf("PROMPT VERSION: V%d\n\r", PVERSION);
klauss 105:a930035b6556 2180 if( from_eth ) {
klauss 104:62646ef786a3 2181 snprintf( debug_buf,__PROMPT_ETH_BUFFER_SIZE__, "PROMPT VERSION: V%d\n\r", PVERSION);
klauss 105:a930035b6556 2182 if( tcp_session && !udp_query ) {
klauss 104:62646ef786a3 2183 while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2184 } else if( udp_query ) {
klauss 105:a930035b6556 2185 udp_query_send_msg( debug_buf );
klauss 104:62646ef786a3 2186 }
klauss 104:62646ef786a3 2187 }
klauss 104:62646ef786a3 2188 //*------------ formatando a saida ----------------*//
klauss 105:a930035b6556 2189 strcpy( last_cmd, tmp_cmd );
klauss 105:a930035b6556 2190 bufptr = 0;
klauss 105:a930035b6556 2191 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 105:a930035b6556 2192
klauss 105:a930035b6556 2193 if( from_eth ) {
klauss 105:a930035b6556 2194 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2195 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "> " );
klauss 105:a930035b6556 2196 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2197 } else if( udp_query ) {
klauss 105:a930035b6556 2198 udp_query_send_msg( "> " );
klauss 104:62646ef786a3 2199 }
klauss 104:62646ef786a3 2200 }
klauss 105:a930035b6556 2201 }
klauss 105:a930035b6556 2202
klauss 105:a930035b6556 2203 else if( xmemmatch( (uint8_t*)debug_buf, (uint8_t*) "callme ", 7 )) {
klauss 105:a930035b6556 2204 miss_match = false;
klauss 105:a930035b6556 2205 int ext,port;
klauss 105:a930035b6556 2206 char cmd[ 16 ];
klauss 105:a930035b6556 2207
klauss 105:a930035b6556 2208 ext = atoi( debug_buf + 7 );
klauss 105:a930035b6556 2209 port = convert_ext_to_port( ext );
klauss 105:a930035b6556 2210
klauss 105:a930035b6556 2211 strcpy( cmd, ( ext % 2 ) ? "call init B" : "call init A" );
klauss 105:a930035b6556 2212
klauss 105:a930035b6556 2213 if( ext % 2 ) ext--;
klauss 105:a930035b6556 2214
klauss 105:a930035b6556 2215 promptcb_last_ext = ext;
klauss 105:a930035b6556 2216 promptcb_last_port = port;
klauss 105:a930035b6556 2217
klauss 105:a930035b6556 2218 int tmp = strlen( cmd );
klauss 105:a930035b6556 2219 cmd[ tmp ] = 0x0D;
klauss 105:a930035b6556 2220 cmd[ tmp + 1 ] = 0x00;
klauss 105:a930035b6556 2221 strcpy( promptcb_last_cmd, cmd );
klauss 105:a930035b6556 2222
klauss 105:a930035b6556 2223 if( debug_uart3 && !( from_eth ) ) pc.printf("\r\next=%d port=%d\r\ncmd=%s\r\n", ext, port, cmd );
klauss 105:a930035b6556 2224
klauss 105:a930035b6556 2225 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r--------------------------------------------------------\n\r");
klauss 105:a930035b6556 2226 for( uint16_t i = 0; i < strlen( cmd ) ; i++ ) if( debug_uart3 && !( from_eth ) ) pc.printf( "%02x ", cmd[ i ] );
klauss 105:a930035b6556 2227
klauss 105:a930035b6556 2228 send2callboxes( build_cb_package( ext, port, __PROMPT__, cmd, id_msg++, CB_BUFFER_SIZE - __VZ_HEADER_OFFSET__, write_buffer ) );
klauss 105:a930035b6556 2229 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r--------------------------------------------------------\n\r");
klauss 105:a930035b6556 2230 for( uint16_t i = 0; i < 300 ; i++ ) {
klauss 105:a930035b6556 2231 if( debug_uart3 && !( from_eth ) ) pc.printf( "%02x ", write_buffer[ i ] );
klauss 105:a930035b6556 2232 if( i != 0 && !( ( i + 1 ) % 30 ) ) if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r");
klauss 105:a930035b6556 2233 }
klauss 105:a930035b6556 2234
klauss 105:a930035b6556 2235
klauss 105:a930035b6556 2236 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rComando enviado\n\r");
klauss 105:a930035b6556 2237
klauss 105:a930035b6556 2238 if( from_eth ) {
klauss 105:a930035b6556 2239 char eth_msg[ 512 ];
klauss 105:a930035b6556 2240 snprintf( eth_msg, 512 - 1, "\r\next=%d port=%d\r\ncmd=%s\r\n\n\rComando enviado\n\r", ext, port, cmd );
klauss 105:a930035b6556 2241 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2242 tcp_client.send_all( eth_msg, strlen( eth_msg ) );
klauss 105:a930035b6556 2243 } else if( udp_query ) {
klauss 105:a930035b6556 2244 udp_query_send_msg( eth_msg );
klauss 105:a930035b6556 2245 }
klauss 105:a930035b6556 2246 }
klauss 105:a930035b6556 2247
klauss 105:a930035b6556 2248 bufptr = 0;
klauss 105:a930035b6556 2249 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 105:a930035b6556 2250 }
klauss 105:a930035b6556 2251
klauss 105:a930035b6556 2252 if( miss_match ) {
klauss 105:a930035b6556 2253 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r> %s: command not found\n\r", debug_buf );
klauss 105:a930035b6556 2254 if( from_eth ) {
klauss 105:a930035b6556 2255 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "> %s: command not found\n ", debug_buf );
klauss 105:a930035b6556 2256 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2257 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 2258 } else if( udp_query ) {
klauss 105:a930035b6556 2259 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2260 }
klauss 105:a930035b6556 2261 }
klauss 105:a930035b6556 2262 } else {
klauss 105:a930035b6556 2263 if( from_eth && strlen( debug_buf ) > 2 ) strcpy( last_cmd, tmp_cmd );
klauss 105:a930035b6556 2264
klauss 105:a930035b6556 2265 else if( strlen( debug_buf ) > 2 ) strcpy( last_cmd, tmp_cmd );
klauss 105:a930035b6556 2266 }
klauss 105:a930035b6556 2267 }
klauss 105:a930035b6556 2268 if( b == 0x0D || bufret == 1 || bufptr > DEBUGBUFSIZE ) {
klauss 105:a930035b6556 2269 bufret = 0;
klauss 105:a930035b6556 2270
klauss 105:a930035b6556 2271 if( debug_uart3 && !( from_eth ) ) pc.putc(0x0A);
klauss 105:a930035b6556 2272 if( debug_uart3 && !( from_eth ) ) pc.putc(0x0D);
klauss 105:a930035b6556 2273 if( debug_uart3 && !( from_eth ) ) pc.printf("> ");
klauss 105:a930035b6556 2274
klauss 105:a930035b6556 2275 if( from_eth )
klauss 105:a930035b6556 2276 {
klauss 106:a34fcf9f0e02 2277 if( strlen( debug_buf ) > 0 )
klauss 105:a930035b6556 2278 {
klauss 106:a34fcf9f0e02 2279
klauss 106:a34fcf9f0e02 2280 if( debug_buf[ strlen( debug_buf ) - 1 ] == '\r' || debug_buf[ strlen( debug_buf ) - 1 ] == '\n' )
klauss 106:a34fcf9f0e02 2281 {
klauss 106:a34fcf9f0e02 2282 //strcat( debug_buf, "> " );
klauss 106:a34fcf9f0e02 2283 strcpy( debug_buf, "> " );
klauss 106:a34fcf9f0e02 2284 } else {
klauss 106:a34fcf9f0e02 2285 //strcat( debug_buf, "\n\r> " );
klauss 106:a34fcf9f0e02 2286 strcpy( debug_buf, "\n\r> " );
klauss 106:a34fcf9f0e02 2287 }
klauss 106:a34fcf9f0e02 2288 }else{
klauss 106:a34fcf9f0e02 2289
klauss 105:a930035b6556 2290 }
klauss 104:62646ef786a3 2291
klauss 105:a930035b6556 2292 if( tcp_session && !udp_query )
klauss 105:a930035b6556 2293 {
klauss 105:a930035b6556 2294 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 2295 } else if( udp_query ) {
klauss 106:a34fcf9f0e02 2296
klauss 106:a34fcf9f0e02 2297 udp_query_send_msg( debug_buf );
klauss 106:a34fcf9f0e02 2298
klauss 105:a930035b6556 2299 }
klauss 105:a930035b6556 2300 for( register uint16_t i = 0; i < __PROMPT_ETH_BUFFER_SIZE__; i++ ) eth_buffer[ i ] = 0;
klauss 106:a34fcf9f0e02 2301
klauss 105:a930035b6556 2302 debug_buf = __debug_buf__;
klauss 106:a34fcf9f0e02 2303
klauss 105:a930035b6556 2304 bufptr = last_bufptr;
klauss 106:a34fcf9f0e02 2305
klauss 105:a930035b6556 2306 }
klauss 105:a930035b6556 2307 else
klauss 105:a930035b6556 2308 {
klauss 104:62646ef786a3 2309 bufptr = 0;
klauss 104:62646ef786a3 2310 last_bufptr = 0;
klauss 104:62646ef786a3 2311 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 27:98f824719d1c 2312 }
klauss 105:a930035b6556 2313 }
klauss 105:a930035b6556 2314 return( NULL );
klauss 105:a930035b6556 2315 }//fim prompt_process
klauss 105:a930035b6556 2316
klauss 105:a930035b6556 2317
klauss 105:a930035b6556 2318 // operantion with the system config files
klauss 105:a930035b6556 2319 void files( const char type )
klauss 105:a930035b6556 2320 {
klauss 105:a930035b6556 2321 // show files
klauss 105:a930035b6556 2322 if (type == 's' ) {
klauss 106:a34fcf9f0e02 2323
klauss 105:a930035b6556 2324 if( debug_uart3 && !( from_eth ) ) pc.printf("Header IP " );
klauss 105:a930035b6556 2325 if( from_eth ) {
klauss 105:a930035b6556 2326 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Header IP " );
klauss 105:a930035b6556 2327 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2328
klauss 105:a930035b6556 2329 else if( udp_query ) {
klauss 105:a930035b6556 2330 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2331 }
klauss 105:a930035b6556 2332 }
klauss 105:a930035b6556 2333
klauss 105:a930035b6556 2334 cat("/qspi/myip.txt");
klauss 105:a930035b6556 2335
klauss 105:a930035b6556 2336 if( debug_uart3 && !( from_eth ) ) pc.printf("Header ext ");
klauss 105:a930035b6556 2337 if( from_eth ) {
klauss 105:a930035b6556 2338 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Header ext " );
klauss 105:a930035b6556 2339 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2340
klauss 105:a930035b6556 2341 else if( udp_query ) {
klauss 105:a930035b6556 2342 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2343 }
klauss 105:a930035b6556 2344 }
klauss 105:a930035b6556 2345
klauss 105:a930035b6556 2346 cat("/qspi/myext.txt");
klauss 105:a930035b6556 2347
klauss 105:a930035b6556 2348 if( debug_uart3 && !( from_eth ) ) pc.printf("Header port ");
klauss 105:a930035b6556 2349 if( from_eth ) {
klauss 105:a930035b6556 2350 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Header port " );
klauss 105:a930035b6556 2351 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2352
klauss 105:a930035b6556 2353 else if( udp_query ) {
klauss 105:a930035b6556 2354 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2355 }
klauss 105:a930035b6556 2356 }
klauss 105:a930035b6556 2357
klauss 105:a930035b6556 2358 cat("/qspi/mysipport.txt");
klauss 105:a930035b6556 2359
klauss 105:a930035b6556 2360 if( debug_uart3 && !( from_eth ) ) pc.printf("Server IP ");
klauss 105:a930035b6556 2361 if( from_eth ) {
klauss 105:a930035b6556 2362 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Server IP " );
klauss 105:a930035b6556 2363 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2364
klauss 105:a930035b6556 2365 else if( udp_query ) {
klauss 105:a930035b6556 2366 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2367 }
klauss 105:a930035b6556 2368 }
klauss 105:a930035b6556 2369
klauss 105:a930035b6556 2370 cat("/qspi/serverip.txt");
klauss 105:a930035b6556 2371
klauss 105:a930035b6556 2372 if( debug_uart3 && !( from_eth ) ) pc.printf("Server ext ");
klauss 105:a930035b6556 2373 if( from_eth ) {
klauss 105:a930035b6556 2374 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Server ext " );
klauss 105:a930035b6556 2375 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2376
klauss 105:a930035b6556 2377 else if( udp_query ) {
klauss 105:a930035b6556 2378 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2379 }
klauss 105:a930035b6556 2380 }
klauss 105:a930035b6556 2381
klauss 105:a930035b6556 2382 cat("/qspi/peerext.txt");
klauss 105:a930035b6556 2383
klauss 105:a930035b6556 2384 if( debug_uart3 && !( from_eth ) ) pc.printf("Server port ");
klauss 105:a930035b6556 2385 if( from_eth ) {
klauss 105:a930035b6556 2386 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Server port " );
klauss 105:a930035b6556 2387 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2388
klauss 105:a930035b6556 2389 else if( udp_query ) {
klauss 105:a930035b6556 2390 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2391 }
klauss 105:a930035b6556 2392 }
klauss 105:a930035b6556 2393 cat("/qspi/serverport.txt");
klauss 105:a930035b6556 2394
klauss 105:a930035b6556 2395 if( debug_uart3 && !( from_eth ) ) pc.printf("Mascara de rede ");
klauss 105:a930035b6556 2396 if( from_eth ) {
klauss 105:a930035b6556 2397 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Mascara de rede " );
klauss 105:a930035b6556 2398 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2399
klauss 105:a930035b6556 2400 else if( udp_query ) {
klauss 105:a930035b6556 2401 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2402 }
klauss 105:a930035b6556 2403 }
klauss 105:a930035b6556 2404 cat("/qspi/mymask.txt");
klauss 105:a930035b6556 2405
klauss 105:a930035b6556 2406 if( debug_uart3 && !( from_eth ) ) pc.printf("Gateway IP ");
klauss 105:a930035b6556 2407 if( from_eth ) {
klauss 105:a930035b6556 2408 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Gateway IP " );
klauss 105:a930035b6556 2409 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2410
klauss 105:a930035b6556 2411 else if( udp_query ) {
klauss 105:a930035b6556 2412 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2413 }
klauss 105:a930035b6556 2414 }
klauss 105:a930035b6556 2415 cat("/qspi/mygateway.txt");
klauss 105:a930035b6556 2416
klauss 105:a930035b6556 2417 if( debug_uart3 && !( from_eth ) ) pc.printf("UDP Port ");
klauss 105:a930035b6556 2418 if( from_eth ) {
klauss 105:a930035b6556 2419 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "UDP Port " );
klauss 105:a930035b6556 2420 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2421
klauss 105:a930035b6556 2422 else if( udp_query ) {
klauss 105:a930035b6556 2423 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2424 }
klauss 105:a930035b6556 2425 }
klauss 105:a930035b6556 2426
klauss 105:a930035b6556 2427 cat("/qspi/udpport.txt");
klauss 105:a930035b6556 2428
klauss 105:a930035b6556 2429 if( debug_uart3 && !( from_eth ) ) pc.printf("TCP Port ");
klauss 105:a930035b6556 2430 if( from_eth ) {
klauss 105:a930035b6556 2431 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "TCP Port " );
klauss 105:a930035b6556 2432 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2433
klauss 105:a930035b6556 2434 else if( udp_query ) {
klauss 105:a930035b6556 2435 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2436 }
klauss 105:a930035b6556 2437 }
klauss 105:a930035b6556 2438
klauss 105:a930035b6556 2439 cat("/qspi/tcpport.txt");
klauss 105:a930035b6556 2440
klauss 105:a930035b6556 2441 if( debug_uart3 && !( from_eth ) ) pc.printf("FW Server IP ");
klauss 105:a930035b6556 2442 if( from_eth ) {
klauss 105:a930035b6556 2443 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FW Server IP " );
klauss 105:a930035b6556 2444 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2445
klauss 105:a930035b6556 2446 else if( udp_query ) {
klauss 105:a930035b6556 2447 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2448 }
klauss 105:a930035b6556 2449 }
klauss 105:a930035b6556 2450
klauss 105:a930035b6556 2451 cat("/qspi/fw_ip.txt");
klauss 105:a930035b6556 2452
klauss 105:a930035b6556 2453 if( debug_uart3 && !( from_eth ) ) pc.printf("FW Server Port ");
klauss 105:a930035b6556 2454 if( from_eth ) {
klauss 105:a930035b6556 2455 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "FW Server Port " );
klauss 105:a930035b6556 2456 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2457
klauss 105:a930035b6556 2458 else if( udp_query ) {
klauss 105:a930035b6556 2459 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2460 }
klauss 105:a930035b6556 2461 }
klauss 105:a930035b6556 2462
klauss 105:a930035b6556 2463 cat("/qspi/fw_port.txt");
klauss 105:a930035b6556 2464
klauss 105:a930035b6556 2465 if( debug_uart3 && !( from_eth ) ) pc.printf("Max Ext ");
klauss 105:a930035b6556 2466 if( from_eth ) {
klauss 105:a930035b6556 2467 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Max Ext " );
klauss 105:a930035b6556 2468 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2469
klauss 105:a930035b6556 2470 else if( udp_query ) {
klauss 105:a930035b6556 2471 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2472 }
klauss 105:a930035b6556 2473 }
klauss 105:a930035b6556 2474
klauss 105:a930035b6556 2475 cat("/qspi/maxext.txt");
klauss 105:a930035b6556 2476
klauss 105:a930035b6556 2477 if( debug_uart3 && !( from_eth ) ) pc.printf("Min Ext ");
klauss 105:a930035b6556 2478 if( from_eth ) {
klauss 105:a930035b6556 2479 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Min Ext " );
klauss 105:a930035b6556 2480 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2481
klauss 105:a930035b6556 2482 else if( udp_query ) {
klauss 105:a930035b6556 2483 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2484 }
klauss 105:a930035b6556 2485 }
klauss 105:a930035b6556 2486
klauss 105:a930035b6556 2487 cat("/qspi/minext.txt");
klauss 106:a34fcf9f0e02 2488
klauss 106:a34fcf9f0e02 2489 if( debug_uart3 && !( from_eth ) ) pc.printf("Shift Port ");
klauss 106:a34fcf9f0e02 2490 if( from_eth ) {
klauss 106:a34fcf9f0e02 2491 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Shift Port " );
klauss 106:a34fcf9f0e02 2492 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2493
klauss 106:a34fcf9f0e02 2494 else if( udp_query ) {
klauss 106:a34fcf9f0e02 2495 udp_query_send_msg( debug_buf );
klauss 106:a34fcf9f0e02 2496 }
klauss 106:a34fcf9f0e02 2497 }
klauss 106:a34fcf9f0e02 2498
klauss 106:a34fcf9f0e02 2499 cat("/qspi/shift_port.txt");
klauss 106:a34fcf9f0e02 2500
klauss 106:a34fcf9f0e02 2501
klauss 105:a930035b6556 2502 //*------------ formatando a saida ----------------*//
klauss 105:a930035b6556 2503 strcpy( last_cmd, tmp_cmd );
klauss 105:a930035b6556 2504 bufptr = 0;
klauss 105:a930035b6556 2505 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 105:a930035b6556 2506
klauss 105:a930035b6556 2507 if( from_eth ) {
klauss 106:a34fcf9f0e02 2508
klauss 105:a930035b6556 2509 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2510 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "> " );
klauss 105:a930035b6556 2511 if( tcp_session && !udp_query ) while( !( tcp_client.send_all( debug_buf, strlen( debug_buf ) ) ) );
klauss 105:a930035b6556 2512 } else if( udp_query ) {
klauss 105:a930035b6556 2513 udp_query_send_msg( "> " );
klauss 106:a34fcf9f0e02 2514
klauss 105:a930035b6556 2515 }
klauss 105:a930035b6556 2516 }
klauss 105:a930035b6556 2517 }
klauss 105:a930035b6556 2518
klauss 105:a930035b6556 2519 if (type == 'c' ) {
klauss 105:a930035b6556 2520 // close all files
klauss 105:a930035b6556 2521 if( fip ) fclose( fip );
klauss 105:a930035b6556 2522 if( fmask ) fclose( fmask );
klauss 105:a930035b6556 2523 if( fgate ) fclose( fgate );
klauss 105:a930035b6556 2524 if( fport )fclose( fport );
klauss 105:a930035b6556 2525 if( fsip ) fclose( fsip );
klauss 105:a930035b6556 2526 if( fsport ) fclose( fsport );
klauss 105:a930035b6556 2527 if( fext ) fclose( fext );
klauss 105:a930035b6556 2528 if( fserext ) fclose( fserext );
klauss 105:a930035b6556 2529 if( fudpport ) fclose( fudpport );
klauss 105:a930035b6556 2530 if( ftcpport ) fclose( ftcpport );
klauss 105:a930035b6556 2531 if( fmax ) fclose( fmax );
klauss 105:a930035b6556 2532 if( fmin ) fclose( fmin );
klauss 105:a930035b6556 2533 if( ffwip ) fclose( ffwip );
klauss 105:a930035b6556 2534 if( ffwport) fclose( ffwport );
klauss 106:a34fcf9f0e02 2535 if( fshift_port ) fclose ( fshift_port );
klauss 105:a930035b6556 2536 }
klauss 105:a930035b6556 2537
klauss 105:a930035b6556 2538 if (type == 'i' ) {
klauss 106:a34fcf9f0e02 2539
klauss 105:a930035b6556 2540 // Check if files exist, if not create the files
klauss 105:a930035b6556 2541 //fixme criar um bool pra cada file
klauss 105:a930035b6556 2542 bool exists = true;
klauss 105:a930035b6556 2543
klauss 105:a930035b6556 2544 fip = fopen("/qspi/myip.txt", "r");
klauss 105:a930035b6556 2545 if( fip == NULL) {
klauss 105:a930035b6556 2546 set_ip( __MY_IP__ );
klauss 105:a930035b6556 2547 exists = false;
klauss 105:a930035b6556 2548 }
klauss 105:a930035b6556 2549
klauss 105:a930035b6556 2550 fserext = fopen("/qspi/myext.txt", "r");
klauss 105:a930035b6556 2551 if( fserext == NULL ) {
klauss 105:a930035b6556 2552 set_header_ext( __MY_EXT__ );
klauss 105:a930035b6556 2553 exists = false;
klauss 105:a930035b6556 2554 }
klauss 105:a930035b6556 2555
klauss 105:a930035b6556 2556 fport = fopen("/qspi/mysipport.txt", "r");
klauss 105:a930035b6556 2557 if (fport == NULL) {
klauss 105:a930035b6556 2558 set_header_sip_port( __MY_PORT__ );
klauss 105:a930035b6556 2559 exists = false;
klauss 105:a930035b6556 2560 }
klauss 105:a930035b6556 2561
klauss 105:a930035b6556 2562 fsip = fopen("/qspi/serverip.txt", "r");
klauss 105:a930035b6556 2563 if (fsip == NULL) {
klauss 105:a930035b6556 2564 set_server_ip( __SERVER_IP__ );
klauss 105:a930035b6556 2565 exists = false;
klauss 105:a930035b6556 2566 }
klauss 105:a930035b6556 2567
klauss 105:a930035b6556 2568 fext = fopen("/qspi/peerext.txt", "r");
klauss 105:a930035b6556 2569 if ( fext == NULL ) {
klauss 105:a930035b6556 2570 set_server_ext( __PEER_EXT__ );
klauss 105:a930035b6556 2571 exists = false;
klauss 105:a930035b6556 2572 }
klauss 105:a930035b6556 2573
klauss 105:a930035b6556 2574 fsport = fopen("/qspi/serverport.txt", "r");
klauss 105:a930035b6556 2575 if (fsport == NULL) {
klauss 105:a930035b6556 2576 set_server_port( __SERVER_PORT__ );
klauss 105:a930035b6556 2577 exists = false;
klauss 105:a930035b6556 2578 }
klauss 105:a930035b6556 2579
klauss 105:a930035b6556 2580 fmask = fopen("/qspi/mymask.txt", "r");
klauss 105:a930035b6556 2581 if (fmask == NULL) {
klauss 105:a930035b6556 2582 set_mask( __MY_MSK__ );
klauss 105:a930035b6556 2583 exists = false;
klauss 105:a930035b6556 2584 }
klauss 105:a930035b6556 2585
klauss 105:a930035b6556 2586 fgate = fopen("/qspi/mygateway.txt", "r");
klauss 105:a930035b6556 2587 if (fgate == NULL) {
klauss 105:a930035b6556 2588 set_gateway( __MY_GTW__ );
klauss 105:a930035b6556 2589 exists = false;
klauss 105:a930035b6556 2590 }
klauss 105:a930035b6556 2591
klauss 105:a930035b6556 2592 fudpport = fopen("/qspi/udpport.txt", "r" );
klauss 105:a930035b6556 2593 if( fudpport == NULL ) {
klauss 105:a930035b6556 2594 set_udp_port_listener( UDP_PORT_LISTENER );
klauss 105:a930035b6556 2595 exists = false;
klauss 105:a930035b6556 2596 }
klauss 105:a930035b6556 2597
klauss 105:a930035b6556 2598 ftcpport = fopen("/qspi/tcpport.txt", "r" );
klauss 105:a930035b6556 2599 if( ftcpport == NULL ) {
klauss 105:a930035b6556 2600 set_tcp_port_listener( TCP_PORT_LISTENER );
klauss 105:a930035b6556 2601 exists = false;
klauss 105:a930035b6556 2602 }
klauss 105:a930035b6556 2603
klauss 105:a930035b6556 2604 ffwip = fopen("/qspi/fw_ip.txt", "r" );
klauss 105:a930035b6556 2605 if( ffwip == NULL ) {
klauss 105:a930035b6556 2606 set_fw_ip( __FW_SERVER_IP__ );
klauss 105:a930035b6556 2607 exists = false;
klauss 105:a930035b6556 2608 }
klauss 105:a930035b6556 2609
klauss 105:a930035b6556 2610 ffwport = fopen("/qspi/fw_port.txt", "r" );
klauss 105:a930035b6556 2611 if( ffwport == NULL ) {
klauss 105:a930035b6556 2612 set_fw_port( __FW_SERVER_PORT__ );
klauss 105:a930035b6556 2613 exists = false;
klauss 105:a930035b6556 2614 }
klauss 105:a930035b6556 2615
klauss 105:a930035b6556 2616 fmax = fopen("/qspi/maxext.txt", "r" );
klauss 105:a930035b6556 2617 if( fmax == NULL ) {
klauss 105:a930035b6556 2618 set_max_ext( MAX_EXT );
klauss 105:a930035b6556 2619 exists = false;
klauss 105:a930035b6556 2620 }
klauss 105:a930035b6556 2621
klauss 105:a930035b6556 2622 fmin = fopen("/qspi/minext.txt", "r" );
klauss 105:a930035b6556 2623 if( fmin == NULL ) {
klauss 106:a34fcf9f0e02 2624 if( debug_file ) debug_msg("Don't exist /qspi/minext.txt");
klauss 105:a930035b6556 2625 set_min_ext( MIN_EXT );
klauss 105:a930035b6556 2626 exists = false;
klauss 105:a930035b6556 2627 }
klauss 106:a34fcf9f0e02 2628
klauss 106:a34fcf9f0e02 2629 fshift_port = fopen("/qspi/shift_port.txt", "r" );
klauss 106:a34fcf9f0e02 2630 if( fshift_port == NULL )
klauss 106:a34fcf9f0e02 2631 {
klauss 106:a34fcf9f0e02 2632 if( debug_file ) debug_msg("Don't exist /qspi/shift_port.txt");
klauss 106:a34fcf9f0e02 2633 set_shift_port( SHIFT_PORT );
klauss 106:a34fcf9f0e02 2634 exists = false;
klauss 106:a34fcf9f0e02 2635 }
klauss 106:a34fcf9f0e02 2636
klauss 105:a930035b6556 2637 if( !exists ) {
klauss 105:a930035b6556 2638 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rDefault configurations set!\n\r");
klauss 105:a930035b6556 2639 if( from_eth ) {
klauss 105:a930035b6556 2640 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "Default configurations set!\n\r");
klauss 105:a930035b6556 2641 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 2642 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2643 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 2644 bufptr = 0;
klauss 105:a930035b6556 2645 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 62:07e5bdc9f8f7 2646 }
klauss 19:ab2088e0dec6 2647 }
klauss 105:a930035b6556 2648 }
klauss 105:a930035b6556 2649 reset_leds();
klauss 105:a930035b6556 2650 }
klauss 105:a930035b6556 2651
klauss 105:a930035b6556 2652 if (type == 'r' ) {
klauss 105:a930035b6556 2653 // Just open for read
klauss 106:a34fcf9f0e02 2654
klauss 105:a930035b6556 2655 fip = fopen("/qspi/myip.txt", "r");
klauss 105:a930035b6556 2656 fmask = fopen("/qspi/mymask.txt", "r");
klauss 105:a930035b6556 2657 fgate = fopen("/qspi/mygateway.txt", "r");
klauss 105:a930035b6556 2658 fport = fopen("/qspi/mysipport.txt", "r");
klauss 105:a930035b6556 2659 fsip = fopen("/qspi/serverip.txt", "r");
klauss 105:a930035b6556 2660 fsport = fopen("/qspi/serverport.txt", "r");
klauss 105:a930035b6556 2661 fext = fopen( "/qspi/myext.txt", "r" );
klauss 105:a930035b6556 2662 fserext = fopen( "/qspi/peerext.txt", "r" );
klauss 105:a930035b6556 2663 fudpport = fopen( "/qspi/udpport.txt", "r" );
klauss 105:a930035b6556 2664 ftcpport = fopen( "/qspi/tcpport.txt", "r" );
klauss 105:a930035b6556 2665 ffwip = fopen("/qspi/fw_ip.txt", "r" );
klauss 105:a930035b6556 2666 ffwport = fopen("/qspi/fw_port.txt", "r" );
klauss 105:a930035b6556 2667 fmax = fopen("/qspi/maxext.txt", "r" );
klauss 105:a930035b6556 2668 fmin = fopen("/qspi/minext.txt", "r" );
klauss 106:a34fcf9f0e02 2669 fshift_port = fopen("/qspi/shift_port.txt", "r" );
klauss 106:a34fcf9f0e02 2670
klauss 105:a930035b6556 2671 }
klauss 105:a930035b6556 2672
klauss 105:a930035b6556 2673 if( type == 'w') {
klauss 106:a34fcf9f0e02 2674
klauss 105:a930035b6556 2675 // Create and write the default configs
klauss 105:a930035b6556 2676 set_ip( __MY_IP__ );
klauss 105:a930035b6556 2677
klauss 105:a930035b6556 2678 set_header_sip_port( __MY_PORT__ );
klauss 105:a930035b6556 2679
klauss 105:a930035b6556 2680 set_header_ext( __MY_EXT__ );
klauss 105:a930035b6556 2681
klauss 105:a930035b6556 2682 set_server_ip( __SERVER_IP__ );
klauss 105:a930035b6556 2683
klauss 105:a930035b6556 2684 set_server_ext( __PEER_EXT__ );
klauss 105:a930035b6556 2685
klauss 105:a930035b6556 2686 set_server_port( __SERVER_PORT__ );
klauss 105:a930035b6556 2687
klauss 105:a930035b6556 2688 set_mask( __MY_MSK__ );
klauss 105:a930035b6556 2689
klauss 105:a930035b6556 2690 set_gateway( __MY_GTW__ );
klauss 105:a930035b6556 2691
klauss 105:a930035b6556 2692 set_udp_port_listener( UDP_PORT_LISTENER );
klauss 105:a930035b6556 2693
klauss 105:a930035b6556 2694 set_tcp_port_listener( TCP_PORT_LISTENER );
klauss 105:a930035b6556 2695
klauss 105:a930035b6556 2696 set_fw_ip( __FW_SERVER_IP__ );
klauss 105:a930035b6556 2697
klauss 105:a930035b6556 2698 set_fw_port( __FW_SERVER_PORT__ );
klauss 105:a930035b6556 2699
klauss 105:a930035b6556 2700 set_max_ext( MAX_EXT );
klauss 105:a930035b6556 2701
klauss 105:a930035b6556 2702 set_min_ext( MIN_EXT );
klauss 106:a34fcf9f0e02 2703
klauss 106:a34fcf9f0e02 2704 set_shift_port( SHIFT_PORT );
klauss 105:a930035b6556 2705
klauss 105:a930035b6556 2706 strcpy( last_cmd, tmp_cmd );
klauss 105:a930035b6556 2707
klauss 105:a930035b6556 2708 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rDefault configurations set!\n\r");
klauss 105:a930035b6556 2709 if( from_eth ) {
klauss 105:a930035b6556 2710 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rDefault configurations set!\n\r");
klauss 105:a930035b6556 2711 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 2712 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2713 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 2714 } else if( udp_query ) {
klauss 105:a930035b6556 2715 udp_query_send_msg( debug_buf );
klauss 105:a930035b6556 2716 }
klauss 54:448d57291be6 2717 bufptr = 0;
klauss 104:62646ef786a3 2718 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 45:c80574f24dc3 2719 }
klauss 106:a34fcf9f0e02 2720
klauss 105:a930035b6556 2721 }
klauss 105:a930035b6556 2722
klauss 106:a34fcf9f0e02 2723 if (type == 'e')
klauss 106:a34fcf9f0e02 2724 {
klauss 106:a34fcf9f0e02 2725 //Erase configs
klauss 105:a930035b6556 2726 fip = fopen("/qspi/myip.txt", "w");
klauss 105:a930035b6556 2727 fmask = fopen("/qspi/mymask.txt", "w");
klauss 105:a930035b6556 2728 fgate = fopen("/qspi/mygateway.txt", "w");
klauss 105:a930035b6556 2729 fport = fopen("/qspi/mysipport.txt", "w");
klauss 105:a930035b6556 2730 fsip = fopen("/qspi/serverip.txt", "w");
klauss 105:a930035b6556 2731 fsport = fopen("/qspi/serverport.txt", "w");
klauss 105:a930035b6556 2732 fext = fopen( "/qspi/myext.txt", "w" );
klauss 105:a930035b6556 2733 fserext = fopen( "/qspi/peerext.txt", "w" );
klauss 105:a930035b6556 2734 fudpport = fopen( "/qspi/udpport.txt", "w" );
klauss 105:a930035b6556 2735 ftcpport = fopen( "/qspi/tcpport.txt", "w" );
klauss 105:a930035b6556 2736 ffwip = fopen("/qspi/fw_ip.txt", "w" );
klauss 105:a930035b6556 2737 ffwport = fopen("/qspi/fw_port.txt", "w" );
klauss 105:a930035b6556 2738 fmax = fopen("/qspi/maxext.txt", "w" );
klauss 105:a930035b6556 2739 fmin = fopen("/qspi/minext.txt", "w" );
klauss 106:a34fcf9f0e02 2740 fshift_port = fopen("/qspi/shift_port.txt", "w" );
klauss 105:a930035b6556 2741
klauss 106:a34fcf9f0e02 2742 if( fip ) fprintf( fip, "%s\n\r", "" );
klauss 106:a34fcf9f0e02 2743 if( fport ) fprintf( fport, "%i\n\r", 0 );
klauss 106:a34fcf9f0e02 2744 if( fext ) fprintf( fext, "%i\n\r", 0 );
klauss 105:a930035b6556 2745
klauss 106:a34fcf9f0e02 2746 if( fsip ) fprintf( fsip, "%s\n\r", "" );
klauss 106:a34fcf9f0e02 2747 if( fserext ) fprintf( fserext, "%i\n\r", 0 );
klauss 106:a34fcf9f0e02 2748 if( fsport ) fprintf( fsport, "%i\n\r", 0 );
klauss 105:a930035b6556 2749
klauss 106:a34fcf9f0e02 2750 if( fmask ) fprintf( fmask, "%s\n\r","" );
klauss 106:a34fcf9f0e02 2751 if( fgate ) fprintf( fgate, "%s\n\r", "" );
klauss 105:a930035b6556 2752
klauss 106:a34fcf9f0e02 2753 if( fudpport ) fprintf( fudpport, "%i\n\r", 0 );
klauss 106:a34fcf9f0e02 2754 if( ftcpport ) fprintf( ftcpport, "%i\n\r", 0 );
klauss 105:a930035b6556 2755
klauss 106:a34fcf9f0e02 2756 if( ffwip ) fprintf( ffwip, "%s\n\r","" );
klauss 106:a34fcf9f0e02 2757 if( ffwport ) fprintf( ffwport, "%i\n\r",0 );
klauss 105:a930035b6556 2758
klauss 106:a34fcf9f0e02 2759 if( fmax ) fprintf( fmax, "%i\n\r", 0 );
klauss 106:a34fcf9f0e02 2760 if( fmin ) fprintf( fmin, "%i\n\r", 0 );
klauss 106:a34fcf9f0e02 2761
klauss 106:a34fcf9f0e02 2762 if( fshift_port ) fprintf( fshift_port, "%i\n\r", 0 );
klauss 105:a930035b6556 2763
klauss 105:a930035b6556 2764 files('c');
klauss 105:a930035b6556 2765
klauss 105:a930035b6556 2766 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\rErased configurations set!\n\r");
klauss 105:a930035b6556 2767 if( from_eth ) {
klauss 105:a930035b6556 2768 snprintf( debug_buf, __PROMPT_ETH_BUFFER_SIZE__, "\n\rErased configurations set!\n\r");
klauss 105:a930035b6556 2769 debug_buf[ strlen( debug_buf ) - 1 ] = '\0';
klauss 105:a930035b6556 2770 if( tcp_session && !udp_query ) {
klauss 105:a930035b6556 2771 tcp_client.send_all( debug_buf, strlen( debug_buf ) );
klauss 105:a930035b6556 2772 } else if( udp_query ) {
klauss 105:a930035b6556 2773 udp_query_send_msg( debug_buf );
klauss 45:c80574f24dc3 2774 }
klauss 42:480335bdde12 2775 bufptr = 0;
klauss 104:62646ef786a3 2776 for( register int i = 0; i < DEBUGBUFSIZE; i++ ) debug_buf[ i ] = 0;
klauss 45:c80574f24dc3 2777 }
klauss 106:a34fcf9f0e02 2778
klauss 105:a930035b6556 2779 }
klauss 105:a930035b6556 2780 }
klauss 105:a930035b6556 2781
klauss 105:a930035b6556 2782 void init_fsystem()
klauss 105:a930035b6556 2783 {
klauss 105:a930035b6556 2784 // init file system and check if files exist
klauss 105:a930035b6556 2785 if (!qspifs.isformatted()) {
klauss 105:a930035b6556 2786 qspifs.format();
klauss 105:a930035b6556 2787 if( debug_uart3 && !( from_eth ) ) pc.printf("\n\r******* File system configured!!******* \n\r");
klauss 105:a930035b6556 2788 }
klauss 105:a930035b6556 2789 // check if the files are created
klauss 105:a930035b6556 2790 files('i');
klauss 105:a930035b6556 2791 files('c');
klauss 106:a34fcf9f0e02 2792 pc.printf("\r\n******* File System Ready *******\r\n");
klauss 106:a34fcf9f0e02 2793 debug_file = false;
klauss 105:a930035b6556 2794 }
klauss 105:a930035b6556 2795
klauss 105:a930035b6556 2796 int str2uint ( char * s, unsigned int * val )
klauss 105:a930035b6556 2797 {
klauss 105:a930035b6556 2798 int i = 0;
klauss 105:a930035b6556 2799 unsigned int ret = 0;
klauss 105:a930035b6556 2800 for (;;) {
klauss 105:a930035b6556 2801 if (s[i] < '0') {
klauss 105:a930035b6556 2802 *val = ret;
klauss 105:a930035b6556 2803 return i;
klauss 105:a930035b6556 2804 }
klauss 105:a930035b6556 2805 ret *= 10;
klauss 105:a930035b6556 2806 ret += s[i] - '0';
klauss 105:a930035b6556 2807 i++;
klauss 105:a930035b6556 2808 }
klauss 54:448d57291be6 2809 }