   zm->files_remaining = 0;
   zm->bytes_remaining = 0;
 
-  i=sscanf((char*)zm->rx_data_subpacket+strlen((char*)zm->rx_data_subpacket)+1,"%"SCNd64" %lo %o %lo %u %"SCNd64
+  i=sscanf((char*)zm->rx_data_subpacket+strlen((char*)zm->rx_data_subpacket)+1,"%lld %lo %o %lo %u %lld"
     ,&zm->current_file_size /* file size (decimal) */
     ,&tmptime       /* file time (octal unix format) */
     ,&mode          /* file mode */

      zm->current_file_size = pos;

    if(zm->max_file_size!=0 && pos >= zm->max_file_size) {
      lprintf(zm,LOG_WARNING,"Specified maximum file size (%"PRId64" bytes) reached at offset %"PRId64
        ,zm->max_file_size, pos);
      zmodem_send_pos_header(zm, ZFERR, (uint32_t)pos, /* Hex? */ TRUE);
      break;

          b=l-start_bytes;
          if((cps=(unsigned)(b/t))==0)
            cps=1;
          lprintf(zm,LOG_INFO,"Received %llu"" bytes successfully (%u CPS)",b,cps);
          files_received++;
          if(bytes_received!=NULL)
            *bytes_received+=b;
