| 129 | } |
| 130 | #endif |
| 131 | |
| 132 | #if defined(RECORDFLOW) |
| 133 | strncpy(pathRF, RECORD_FILE_PATH,sizeof(RECORD_FILE_PATH)); |
| 134 | strncpy(nameRF, SMP4_RECORD_FILE_1,sizeof(SMP4_RECORD_FILE_1)); |
| 135 | errno = 0; |
| 136 | prepend_timestamp ( nameRF, sizeof nameRF ); |
| 137 | if ( errno != ERANGE ) |
| 138 | printf ( "Timestamped: %s\n", nameRF ); |
| 139 | else { |
| 140 | /* Handle the error */ |
| 141 | } |
| 142 | strncat(pathRF,nameRF, sizeof(nameRF)); |
| 143 | if ((fRECORDF1 = fopen(pathRF, "w")) == NULL) { |
| 144 | syslog(LOG_ERR,"Error in %s opening : %s", pathRF, strerror(errno)); |
| 145 | } else { |
| 146 | fprintf(stderr,"fRECORDF1 %d",fRECORDF1); |
| 147 | bufRF1 = (char *)malloc (262144); |
| 148 | setvbuf (fRECORDF1, bufRF1, _IOFBF, 262144); |
| 408 | char *prepend_timestamp ( char s[], size_t capacity ) |
| 409 | { |
| 410 | const char fmt[] = "%y-%m-%d_%H-%M"; |
| 411 | size_t n = sizeof ( fmt ); |
| 412 | size_t len = strlen ( s ); |
| 413 | if ( len + n < capacity ) { |
| 414 | time_t init = time ( NULL ); |
| 415 | memmove ( s + n, s, len + 1 ); |
| 416 | strftime ( s, n, fmt, localtime ( &init ) ); |
| 417 | s[n - 1] = '_'; |
| 418 | } |
| 419 | else |
| 420 | errno = ERANGE; |
| 421 | |
| 422 | return s; |
| 423 | } |
| 424 | |
| 425 | |
| 620 | #if defined(RECORDFLOW) |
| 621 | /*free(bufRF1);*/ |
| 622 | fflush(fRECORDF1); |
| 623 | if (fclose(fRECORDF1) == NULL){ |
| 624 | fprintf(stderr,"error fclose : %s",strerror(errno)); |
| 625 | } |
| 626 | strncpy(pathRF, RECORD_FILE_PATH,sizeof(RECORD_FILE_PATH)); |
| 627 | strncpy(nameRF, SMP4_RECORD_FILE_2,sizeof(SMP4_RECORD_FILE_2)); |
| 628 | errno = 0; |
| 629 | prepend_timestamp ( nameRF, sizeof nameRF ); |
| 630 | if ( errno != ERANGE ) |
| 631 | printf ( "Timestamped: %s\n", nameRF ); |
| 632 | else { |
| 633 | /* Handle the error */ |
| 634 | } |
| 635 | strncat(pathRF, nameRF, sizeof(nameRF)); |
| 636 | |
| 637 | if ((fRECORDF2 = fopen(pathRF, "w")) == NULL) { |
| 638 | syslog(LOG_ERR,"Error in %s opening : %s", pathRF, strerror(errno)); |
| 639 | } else { |
| 640 | bufRF2 = (char *)malloc (262144); |
| 641 | setvbuf (fRECORDF2, bufRF2, _IOFBF, 262144); |
| 642 | } |
| 643 | currentRECORDFLOWFILE = fRECORDF2; |
| 644 | #endif |
| 648 | #if defined(RECORDFLOW) |
| 649 | /*free(bufRF2);*/ |
| 650 | fflush(fRECORDF2); |
| 651 | fclose(fRECORDF2); |
| 652 | strncpy(pathRF, RECORD_FILE_PATH,sizeof(RECORD_FILE_PATH)); |
| 653 | strncpy(nameRF, SMP4_RECORD_FILE_1,sizeof(SMP4_RECORD_FILE_1)); |
| 654 | errno = 0; |
| 655 | prepend_timestamp ( nameRF, sizeof nameRF ); |
| 656 | if ( errno != ERANGE ) |
| 657 | printf ( "Timestamped: %s\n", nameRF ); |
| 658 | else { |
| 659 | /* Handle the error */ |
| 660 | } |
| 661 | strncat(pathRF, nameRF, sizeof(nameRF)); |
| 662 | if ((fRECORDF1 = fopen(pathRF, "w")) == NULL) { |
| 663 | syslog(LOG_ERR,"Error in %s opening : %s", pathRF, strerror(errno)); |
| 664 | } else { |
| 665 | bufRF1 = (char *)malloc (262144); |
| 666 | setvbuf (fRECORDF1, bufRF1, _IOFBF, 262144); |
| 667 | } |
| 668 | currentRECORDFLOWFILE = fRECORDF1; |
| 669 | #endif |