diff options
Diffstat (limited to 'branches/gpgme-0-3-branch/assuan')
-rw-r--r-- | branches/gpgme-0-3-branch/assuan/ChangeLog | 4 | ||||
-rwxr-xr-x | branches/gpgme-0-3-branch/assuan/mkerrors | 15 |
2 files changed, 17 insertions, 2 deletions
diff --git a/branches/gpgme-0-3-branch/assuan/ChangeLog b/branches/gpgme-0-3-branch/assuan/ChangeLog index 0cf53b89..76cbcab2 100644 --- a/branches/gpgme-0-3-branch/assuan/ChangeLog +++ b/branches/gpgme-0-3-branch/assuan/ChangeLog @@ -1,3 +1,7 @@ +2003-11-18 Werner Koch <[email protected]> + + * mkerrors: Prettier error formating for gpg-error style codes. + 2002-05-03 Werner Koch <[email protected]> * assuan-pipe-connect.c (assuan_pipe_connect2): New to extend diff --git a/branches/gpgme-0-3-branch/assuan/mkerrors b/branches/gpgme-0-3-branch/assuan/mkerrors index 13eabde7..ef51c5d5 100755 --- a/branches/gpgme-0-3-branch/assuan/mkerrors +++ b/branches/gpgme-0-3-branch/assuan/mkerrors @@ -40,7 +40,7 @@ const char * assuan_strerror (AssuanError err) { const char *s; - static char buf[25]; + static char buf[50]; switch (err) { @@ -62,7 +62,18 @@ printf "%s\"; break;\n", tolower(substr(s,8)); ' cat <<EOF - default: sprintf (buf, "ec=%d", err ); s=buf; break; + default: + { + unsigned int source, code; + + source = ((err >> 24) & 0xff); + code = (err & 0x00ffffff); + if (source) /* Assume this is an libgpg-error. */ + sprintf (buf, "ec=%u.%u", source, code ); + else + sprintf (buf, "ec=%d", err ); + s=buf; break; + } } return s; |