#ifndef HEXMODE
#define HEXMODE 0
#endif
-
+
static int hexMode = HEXMODE;
-static const char trbcmd_version[] = "$Revision: 2.60 $";
+static const char trbcmd_version[] = "$Revision: 2.61 $";
#define BACKLOG 10
static uint16_t tcp_port = 55555;
fprintf(stderr, "%d: empty package\n", myPid);
continue;
}
- msgLen -= 2;
+
+
+ msgLen -= 3;
command[msgLen] = '\0';
-
- start_argv[start_argc++] = argv[0];
- for (i = 0; i < (unsigned int)msgLen; i++) {
- if (isspace((int)command[i]) != 0) {
- command[i] = '\0';
- }
- if (command[i] != '\0') {
- if (start_arg == 0) {
- start_argv[start_argc++] = &command[i];
- start_arg = 1;
- } else {
- continue;
- }
- } else {
- command[i] = '\0';
- start_arg = 0;
- }
- }
-
- if (tcp_debug > 0) {
- fprintf(stderr, "%d: received: %i\n", myPid, msgLen);
- if (msgLen > 0) {
- fprintf(stderr, "%d: command: ", myPid);
- for (i = 1; i < (unsigned int)start_argc; i++) {
- fprintf(stderr, "%s ", start_argv[i]);
- }
- fprintf(stderr, "\n");
- }
- }
-
- /* Execute command */
- if (start_argc == 1) continue;
- if ((strcmp(start_argv[1], "exit") == 0) ||
- (strcmp(start_argv[1], "quit") == 0)) {
- if (tcp_debug > 0) {
- fprintf(stderr, "%d: client disconnected\n", myPid);
- }
- exit(EXIT_SUCCESS);
+
+ char *p;
+ p = strpbrk( command, "#");
+ if (p != NULL){
+ fprintf(stdout, ">ERROR: The client transfered 2 commands as one.");
+ fprintf(clientout, "\n----------------------------\n\n");
+ fflush(clientout);
+ if (tcp_debug > 0) {
+ fprintf(stderr, "%d: received: %i\n", myPid, msgLen);
+ if (msgLen > 0) {
+ fprintf(stderr, "%d: command: ", myPid);
+ for (i = 1; i < (unsigned int)start_argc; i++) {
+ fprintf(stderr, "%s ", start_argv[i]);
+ }
+ fprintf(stderr, "\n");
+ }
+ }
+ }
+ else{
+ start_argv[start_argc++] = argv[0];
+ for (i = 0; i < (unsigned int)msgLen; i++) {
+ if (isspace((int)command[i]) != 0) {
+ command[i] = '\0';
+ }
+ if (command[i] != '\0') {
+ if (start_arg == 0) {
+ start_argv[start_argc++] = &command[i];
+ start_arg = 1;
+ } else {
+ continue;
+ }
+ } else {
+ command[i] = '\0';
+ start_arg = 0;
+ }
+ }
+
+ if (tcp_debug > 0) {
+ fprintf(stderr, "%d: received: %i\n", myPid, msgLen);
+ if (msgLen > 0) {
+ fprintf(stderr, "%d: command: ", myPid);
+ for (i = 1; i < (unsigned int)start_argc; i++) {
+ fprintf(stderr, "%s ", start_argv[i]);
+ }
+ fprintf(stderr, "\n");
+ }
+ }
+
+ /* Execute command */
+ if (start_argc == 1) continue;
+ if ((strcmp(start_argv[1], "exit") == 0) ||
+ (strcmp(start_argv[1], "quit") == 0)) {
+ if (tcp_debug > 0) {
+ fprintf(stderr, "%d: client disconnected\n", myPid);
+ }
+ exit(EXIT_SUCCESS);
+ }
+
+ start(start_argc, start_argv);
+ fprintf(clientout, "\n----------------------------\n\n");
+ fflush(clientout);
}
-
- start(start_argc, start_argv);
- fprintf(clientout, "\n----------------------------\n\n");
- fflush(clientout);
}
}
}