Diff for /tftpd/src/srv.c between versions 1.6 and 1.7

version 1.6, 2014/02/21 09:09:15 version 1.7, 2014/02/24 15:23:39
Line 45  SUCH DAMAGE. Line 45  SUCH DAMAGE.
 */  */
 #include "global.h"  #include "global.h"
 #include "exec.h"  #include "exec.h"
   #include "buf.h"
 #include "srv.h"  #include "srv.h"
   
   
Line 55  timeoutSession(sched_task_t *task) Line 56  timeoutSession(sched_task_t *task)
   
         ETRACE();          ETRACE();
   
           if (bf)
                   flushBuffer(cli.fd);
   
         /* drop session */          /* drop session */
         if (cli.fd > 2)          if (cli.fd > 2)
                 close(cli.fd);                  close(cli.fd);
Line 214  getOpts(rpack_t * __restrict pkt, int rlen) Line 218  getOpts(rpack_t * __restrict pkt, int rlen)
                 }                  }
         } while (rlen > 0);          } while (rlen > 0);
   
        EVERBOSE(4, "blksize=%u tsize=%llu timeout=%u rollover=%u",         EVERBOSE(4, "blksize=%u tsize=%llu timeout=%d rollover=%u", 
                        cli.siz, cli.tsiz, cli.tout.tv_sec, cli.roll - 1);                        cli.siz, cli.tsiz, (int) cli.tout.tv_sec, cli.roll - 1);
         return 0;          return 0;
 }  }
   
Line 250  txOack(sched_task_t *task) Line 254  txOack(sched_task_t *task)
         }          }
         if (cli.tout.tv_sec) {          if (cli.tout.tv_sec) {
                 memset(szStr, 0, sizeof szStr);                  memset(szStr, 0, sizeof szStr);
                snprintf(szStr, sizeof szStr, "%u", cli.tout.tv_sec);                snprintf(szStr, sizeof szStr, "%d", (int) cli.tout.tv_sec);
                 rpack_rdata(pkt, TFTP_OPT_TIMEOUT, strlen(TFTP_OPT_TIMEOUT) + 1);                  rpack_rdata(pkt, TFTP_OPT_TIMEOUT, strlen(TFTP_OPT_TIMEOUT) + 1);
                 rpack_rdata(pkt, szStr, strlen(szStr) + 1);                  rpack_rdata(pkt, szStr, strlen(szStr) + 1);
         }          }
Line 261  txOack(sched_task_t *task) Line 265  txOack(sched_task_t *task)
                 rpack_rdata(pkt, szStr, strlen(szStr) + 1);                  rpack_rdata(pkt, szStr, strlen(szStr) + 1);
         }          }
   
        EVERBOSE(4, "blksize=%u tsize=%llu timeout=%u rollover=%u",         EVERBOSE(4, "blksize=%u tsize=%llu timeout=%d rollover=%u", 
                        cli.siz, cli.tsiz, cli.tout.tv_sec, cli.roll - 1);                        cli.siz, cli.tsiz, (int) cli.tout.tv_sec, cli.roll - 1);
         schedCallOnce(TASK_ROOT(task), txPkt, NULL, TASK_FD(task),           schedCallOnce(TASK_ROOT(task), txPkt, NULL, TASK_FD(task), 
                         TASK_DATA(task), RPACK_OFF(pkt));                          TASK_DATA(task), RPACK_OFF(pkt));
         taskExit(task, NULL);          taskExit(task, NULL);
Line 331  RQ(sched_task_t *task) Line 335  RQ(sched_task_t *task)
                         code = htons(3);                          code = htons(3);
                 else if (errno == EEXIST)                  else if (errno == EEXIST)
                         code = htons(6);                          code = htons(6);
                   else if (errno == ENOENT)
                           code = htons(1);
                 else                  else
                         code = htons(0);                          code = htons(0);
                 ESYSERR(0);                  ESYSERR(0);
Line 467  DATA(sched_task_t *task) Line 473  DATA(sched_task_t *task)
   
         EVERBOSE(3, "DATA:: seq=%hu; len=%d", cli.seq, len);          EVERBOSE(3, "DATA:: seq=%hu; len=%d", cli.seq, len);
   
        len = pwrite(cli.fd, RPACK_NEXT(pkt), len, (cli.seq - 1) * cli.siz);        if (!bf)
                 len = pwrite(cli.fd, RPACK_NEXT(pkt), len, (cli.seq - 1) * cli.siz);
         else
                 len = bfwrite(cli.fd, RPACK_NEXT(pkt), len);
         if (len == -1) {          if (len == -1) {
                 ESYSERR(0);                  ESYSERR(0);
                 code = htons(3);                  code = htons(3);

Removed from v.1.6  
changed lines
  Added in v.1.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>