aboutsummaryrefslogtreecommitdiffstats
path: root/kbx
diff options
context:
space:
mode:
Diffstat (limited to 'kbx')
-rw-r--r--kbx/ChangeLog11
-rw-r--r--kbx/kbxutil.c2
-rw-r--r--kbx/keybox-blob.c45
-rw-r--r--kbx/keybox-defs.h5
-rw-r--r--kbx/keybox-file.c4
5 files changed, 41 insertions, 26 deletions
diff --git a/kbx/ChangeLog b/kbx/ChangeLog
index 7c112085c..4fd06d5ca 100644
--- a/kbx/ChangeLog
+++ b/kbx/ChangeLog
@@ -1,3 +1,14 @@
+2005-06-15 Werner Koch <[email protected]>
+
+ * keybox-file.c (_keybox_read_blob2): Make IMAGE unsigned.
+ (_keybox_write_blob):
+
+ * keybox-blob.c (create_blob_finish, _keybox_create_x509_blob):
+ Fixed warnings about signed/unsigned pointer mismatches.
+ (x509_email_kludge): Ditto.
+ (_keybox_new_blob): Changed arg IMAGE to unsigned char *.
+ (_keybox_get_blob_image): Changed return type to unsigned char*.
+
2005-06-01 Werner Koch <[email protected]>
* keybox-file.c (ftello) [!HAVE_FSEEKO]: New replacement
diff --git a/kbx/kbxutil.c b/kbx/kbxutil.c
index 7fe6178d6..0569b5a67 100644
--- a/kbx/kbxutil.c
+++ b/kbx/kbxutil.c
@@ -386,7 +386,7 @@ import_openpgp (const char *filename)
buffer = read_file (filename, &buflen);
if (!buffer)
return;
- p = buffer;
+ p = (unsigned char *)buffer;
for (;;)
{
err = _keybox_parse_openpgp (p, buflen, &nparsed, &info);
diff --git a/kbx/keybox-blob.c b/kbx/keybox-blob.c
index 48bce28e2..67c74b777 100644
--- a/kbx/keybox-blob.c
+++ b/kbx/keybox-blob.c
@@ -646,8 +646,8 @@ static int
create_blob_finish (KEYBOXBLOB blob)
{
struct membuf *a = blob->buf;
- byte *p;
- char *pp;
+ unsigned char *p;
+ unsigned char *pp;
int i;
size_t n;
@@ -656,6 +656,7 @@ create_blob_finish (KEYBOXBLOB blob)
put32 (a, 0); /* Hmmm: why put32() ?? */
/* get the memory area */
+ n = 0; /* (Just to avoid compiler warning.) */
p = get_membuf (a, &n);
if (!p)
return gpg_error (GPG_ERR_ENOMEM);
@@ -783,7 +784,7 @@ _keybox_create_pgp_blob (KEYBOXBLOB *r_blob, KBNODE keyblock, int as_ephemeral)
static char *
x509_email_kludge (const char *name)
{
- const unsigned char *p;
+ const char *p;
unsigned char *buf;
int n;
@@ -805,7 +806,7 @@ x509_email_kludge (const char *name)
buf[n] = xtoi_2 (p);
buf[n++] = '>';
buf[n] = 0;
- return buf;
+ return (char *)buf;
}
@@ -818,8 +819,9 @@ _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
{
int i, rc = 0;
KEYBOXBLOB blob;
- unsigned char *p;
- unsigned char **names = NULL;
+ unsigned char *sn;
+ char *p;
+ char **names = NULL;
size_t max_names;
*r_blob = NULL;
@@ -827,28 +829,28 @@ _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
if( !blob )
return gpg_error (gpg_err_code_from_errno (errno));
- p = ksba_cert_get_serial (cert);
- if (p)
+ sn = ksba_cert_get_serial (cert);
+ if (sn)
{
size_t n, len;
- n = gcry_sexp_canon_len (p, 0, NULL, NULL);
+ n = gcry_sexp_canon_len (sn, 0, NULL, NULL);
if (n < 2)
{
- xfree (p);
+ xfree (sn);
return gpg_error (GPG_ERR_GENERAL);
}
- blob->serialbuf = p;
- p++; n--; /* skip '(' */
- for (len=0; n && *p && *p != ':' && digitp (p); n--, p++)
- len = len*10 + atoi_1 (p);
- if (*p != ':')
+ blob->serialbuf = sn;
+ sn++; n--; /* skip '(' */
+ for (len=0; n && *sn && *sn != ':' && digitp (sn); n--, sn++)
+ len = len*10 + atoi_1 (sn);
+ if (*sn != ':')
{
xfree (blob->serialbuf);
blob->serialbuf = NULL;
return gpg_error (GPG_ERR_GENERAL);
}
- p++;
- blob->serial = p;
+ sn++;
+ blob->serial = sn;
blob->seriallen = len;
}
@@ -863,6 +865,7 @@ _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
rc = gpg_error (gpg_err_code_from_errno (errno));
goto leave;
}
+
p = ksba_cert_get_issuer (cert, 0);
if (!p)
{
@@ -872,10 +875,9 @@ _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
names[blob->nuids++] = p;
for (i=0; (p = ksba_cert_get_subject (cert, i)); i++)
{
-
if (blob->nuids >= max_names)
{
- unsigned char **tmp;
+ char **tmp;
max_names += 100;
tmp = xtryrealloc (names, max_names * sizeof *names);
@@ -964,7 +966,8 @@ _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
int
-_keybox_new_blob (KEYBOXBLOB *r_blob, char *image, size_t imagelen, off_t off)
+_keybox_new_blob (KEYBOXBLOB *r_blob,
+ unsigned char *image, size_t imagelen, off_t off)
{
KEYBOXBLOB blob;
@@ -1000,7 +1003,7 @@ _keybox_release_blob (KEYBOXBLOB blob)
-const char *
+const unsigned char *
_keybox_get_blob_image ( KEYBOXBLOB blob, size_t *n )
{
*n = blob->bloblen;
diff --git a/kbx/keybox-defs.h b/kbx/keybox-defs.h
index b58294459..7bbed8519 100644
--- a/kbx/keybox-defs.h
+++ b/kbx/keybox-defs.h
@@ -140,10 +140,11 @@ int _keybox_create_x509_blob (KEYBOXBLOB *r_blob, ksba_cert_t cert,
unsigned char *sha1_digest, int as_ephemeral);
#endif /*KEYBOX_WITH_X509*/
-int _keybox_new_blob (KEYBOXBLOB *r_blob, char *image, size_t imagelen,
+int _keybox_new_blob (KEYBOXBLOB *r_blob,
+ unsigned char *image, size_t imagelen,
off_t off);
void _keybox_release_blob (KEYBOXBLOB blob);
-const char *_keybox_get_blob_image (KEYBOXBLOB blob, size_t *n);
+const unsigned char *_keybox_get_blob_image (KEYBOXBLOB blob, size_t *n);
off_t _keybox_get_blob_fileoffset (KEYBOXBLOB blob);
void _keybox_update_header_blob (KEYBOXBLOB blob);
diff --git a/kbx/keybox-file.c b/kbx/keybox-file.c
index fe02c1f9f..3883ce607 100644
--- a/kbx/keybox-file.c
+++ b/kbx/keybox-file.c
@@ -48,7 +48,7 @@ ftello (FILE *stream)
int
_keybox_read_blob2 (KEYBOXBLOB *r_blob, FILE *fp, int *skipped_deleted)
{
- char *image;
+ unsigned char *image;
size_t imagelen = 0;
int c1, c2, c3, c4, type;
int rc;
@@ -118,7 +118,7 @@ _keybox_read_blob (KEYBOXBLOB *r_blob, FILE *fp)
int
_keybox_write_blob (KEYBOXBLOB blob, FILE *fp)
{
- const char *image;
+ const unsigned char *image;
size_t length;
image = _keybox_get_blob_image (blob, &length);