(In reply to Adam Reichold from comment #81)
> (In reply to Adrian Johnson from comment #78)
> > I agree that the two calls to doGetChars and updateHash should be merged but
> > I don't think a for loop is the best way to process loops where the
> > increment is not exactly the same on each iteration. Maybe something like
> > this:
> > 
> >   void FormFieldSignature::hashSignedByteRange(SignatureHandler *handler,
> >      Goffset start, Goffset len)
> >   {
> >     const int CHUNK_SIZE = 4096;
> >     unsigned char buffer[CHUNK_SIZE];
> >     Goffset i = 0;
> >     int byte_count = CHUNK_SIZE;
> > 
> >     doc->getBaseStream()->setPos(start);
> >     while (i < len)
> >     {
> >       if (i + CHUNK_SIZE > len)
> >         byte_count = len - i;
> > 
> >       doc->getBaseStream()->doGetChars(byte_count, buffer);
> >       handler->updateHash(buffer, byte_count);
> >       i += byte_count;
> >     }
> >   }
> 
> I was thinking of something like
> 
> doc->getBaseStream()->setPos(start);
> for (Goffset offset = 0; offset < len; offset += CHUNK_SIZE)
> {
>   const int byte_count = min(CHUNK_SIZE, len - offset);
> 
>   doc->getBaseStream()->doGetChars(byte_count, buffer);
>   handler->updateHash(buffer, byte_count);
> }
> 
> to make the loop more regular as we don't care if offset > len instead of
> offset == len after the last iteration. (That code was not tested or even
> compiled.)
> 
> > I don't mind if we fix all this later. It doesn't have to hold up the
> > initial release.
> 
> Maybe if there is some external pressure to release this, but otherwise I'd
> propose polishing it now, since there is a certain momentum not to touch
> working code once it is released.

If we're too picky it may just die in this branch and never be merged :D

> 
> Best regards, Adam.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to poppler in Ubuntu.
https://bugs.launchpad.net/bugs/740506

Title:
  verify digital signatures

Status in Evince:
  Confirmed
Status in Poppler:
  Confirmed
Status in poppler package in Ubuntu:
  Triaged

Bug description:
  Binary package hint: evince

  This is a feature request to verify digital signatures.  I'm receiving more 
and more digitally signed PDF's and evince already acknowledges them with:
  Signature Not Verified
  Digitally signed by <signer>
  Date:  <time stamp>
  Reason: <reason>
  Location: <location>
  but it would be great if Evince would be integrated into the distro's 
ca-certificate infrastructure to verify these signatures.

To manage notifications about this bug go to:
https://bugs.launchpad.net/evince/+bug/740506/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to