[BACK]Return to zsig.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / signify

Diff for /src/usr.bin/signify/zsig.c between version 1.17 and 1.18

version 1.17, 2019/12/09 09:41:54 version 1.18, 2019/12/22 06:37:25
Line 181 
Line 181 
 {  {
         struct gzheader h;          struct gzheader h;
         size_t bufsize, len;          size_t bufsize, len;
         char *p, *meta;          char *p;
         uint8_t *bufend;          uint8_t *bufend;
         int fdin, fdout;          int fdin, fdout;
   
Line 199 
Line 199 
         fake[8] = h.xflg;          fake[8] = h.xflg;
         len = h.endcomment-h.comment;          len = h.endcomment-h.comment;
   
         meta = xmalloc(len+1);  
         memcpy(meta, h.comment, len);  
         meta[len] = 0;  
         p = verifyzdata(h.comment, len, sigfile,          p = verifyzdata(h.comment, len, sigfile,
             pubkeyfile, keytype);              pubkeyfile, keytype);
   
Line 219 
Line 216 
   
         if (*p != '\n')          if (*p != '\n')
                 errx(1, "invalid signature");                  errx(1, "invalid signature");
         *(p++) = 0;  
   
         fdout = xopen(msgfile, O_CREAT|O_TRUNC|O_NOFOLLOW|O_WRONLY, 0666);          fdout = xopen(msgfile, O_CREAT|O_TRUNC|O_NOFOLLOW|O_WRONLY, 0666);
         writeall(fdout, fake, sizeof fake, msgfile);          writeall(fdout, fake, sizeof fake, msgfile);
         writeall(fdout, meta, len+1, msgfile);          writeall(fdout, h.comment, len+1, msgfile);
         free(meta);          *(p++) = 0;
         copy_blocks(fdout, fdin, p, h.endcomment, bufsize, bufend);          copy_blocks(fdout, fdin, p, h.endcomment, bufsize, bufend);
         free(h.buffer);          free(h.buffer);
         close(fdout);          close(fdout);

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18