#include <apt-pkg/strutl.h>
#include <apt-pkg/fileutl.h>
#include <apt-pkg/indexcopy.h>
+#include <apt-pkg/configuration.h>
#include <utime.h>
#include <stdio.h>
#include <apti18n.h>
+using std::string;
+using std::vector;
+
#define GNUPGPREFIX "[GNUPG:]"
#define GNUPGBADSIG "[GNUPG:] BADSIG"
#define GNUPGNOPUBKEY "[GNUPG:] NO_PUBKEY"
// Read a line. Sigh.
while ((c = getc(pipein)) != EOF && c != '\n')
{
- if (bufferoff == buffersize)
- buffer = (char *) realloc(buffer, buffersize *= 2);
+ if (bufferoff == buffersize)
+ {
+ char* newBuffer = (char *) realloc(buffer, buffersize *= 2);
+ if (newBuffer == NULL)
+ {
+ free(buffer);
+ return "Couldn't allocate a buffer big enough for reading";
+ }
+ buffer = newBuffer;
+ }
*(buffer+bufferoff) = c;
bufferoff++;
}
{
errmsg += _("The following signatures were invalid:\n");
for (vector<string>::iterator I = BadSigners.begin();
- I != BadSigners.end(); I++)
+ I != BadSigners.end(); ++I)
errmsg += (*I + "\n");
}
if (!WorthlessSigners.empty())
{
errmsg += _("The following signatures were invalid:\n");
for (vector<string>::iterator I = WorthlessSigners.begin();
- I != WorthlessSigners.end(); I++)
+ I != WorthlessSigners.end(); ++I)
errmsg += (*I + "\n");
}
if (!NoPubKeySigners.empty())
{
errmsg += _("The following signatures couldn't be verified because the public key is not available:\n");
for (vector<string>::iterator I = NoPubKeySigners.begin();
- I != NoPubKeySigners.end(); I++)
+ I != NoPubKeySigners.end(); ++I)
errmsg += (*I + "\n");
}
}