aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/lib/asn1/ttodata.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/charon/lib/asn1/ttodata.c')
-rw-r--r--src/charon/lib/asn1/ttodata.c142
1 files changed, 73 insertions, 69 deletions
diff --git a/src/charon/lib/asn1/ttodata.c b/src/charon/lib/asn1/ttodata.c
index 5e8149955..8114b12c5 100644
--- a/src/charon/lib/asn1/ttodata.c
+++ b/src/charon/lib/asn1/ttodata.c
@@ -33,22 +33,23 @@ static const char *badch(const char *, int, char *, size_t);
#define BADCH3 (-7) /* invalid character 3 */
#define BADOFF(code) (BADCH0-(code))
-/*
- - ttodatav - convert text to data, with verbose error reports
+/**
+ * @brief convert text to data, with verbose error reports
+ *
* If some of this looks slightly odd, it's because it has changed
* repeatedly (from the original atodata()) without a major rewrite.
+ *
+ * @param src
+ * @param srclen 0 means apply strlen()
+ * @param base 0 means figure it out
+ * @param dst need not be valid if dstlen is 0
+ * @param dstlen
+ * @param lenp where to record length (NULL is nowhere)
+ * @param errp error buffer
+ * @param flags
+ * @return NULL on success, else literal or errp
*/
-const char * /* NULL on success, else literal or errp */
-ttodatav(src, srclen, base, dst, dstlen, lenp, errp, errlen, flags)
-const char *src;
-size_t srclen; /* 0 means apply strlen() */
-int base; /* 0 means figure it out */
-char *dst; /* need not be valid if dstlen is 0 */
-size_t dstlen;
-size_t *lenp; /* where to record length (NULL is nowhere) */
-char *errp; /* error buffer */
-size_t errlen;
-unsigned int flags;
+const char *ttodatav(const char *src, size_t srclen, int base, char *dst, size_t dstlen, size_t *lenp, char *errp, size_t errlen, unsigned int flags)
{
size_t ingroup; /* number of input bytes converted at once */
char buf[4]; /* output from conversion */
@@ -166,32 +167,35 @@ unsigned int flags;
return NULL;
}
-/*
- - ttodata - convert text to data
+/**
+ * @brief ttodata - convert text to data
+ *
+ * @param src
+ * @param srclen 0 means apply strlen()
+ * @param base 0 means figure it out
+ * @param dst need not be valid if dstlen is 0
+ * @param dstlen
+ * @param lenp where to record length (NULL is nowhere)
+ * @return NULL on success, else literal
*/
-const char * /* NULL on success, else literal */
-ttodata(src, srclen, base, dst, dstlen, lenp)
-const char *src;
-size_t srclen; /* 0 means apply strlen() */
-int base; /* 0 means figure it out */
-char *dst; /* need not be valid if dstlen is 0 */
-size_t dstlen;
-size_t *lenp; /* where to record length (NULL is nowhere) */
+const char *ttodata(const char *src, size_t srclen, int base, char *dst, size_t dstlen, size_t *lenp)
{
return ttodatav(src, srclen, base, dst, dstlen, lenp, (char *)NULL,
(size_t)0, TTODATAV_SPACECOUNTS);
}
-/*
- - atodata - convert ASCII to data
+/**
+ * @brief atodata - convert ASCII to data
+ *
* backward-compatibility interface
+ *
+ * @param src
+ * @param srclen
+ * @param dst
+ * @param dstlen
+ * @return 0 for failure, true length for success
*/
-size_t /* 0 for failure, true length for success */
-atodata(src, srclen, dst, dstlen)
-const char *src;
-size_t srclen;
-char *dst;
-size_t dstlen;
+size_t atodata(const char *src, size_t srclen, char *dst, size_t dstlen)
{
size_t len;
const char *err;
@@ -202,29 +206,25 @@ size_t dstlen;
return len;
}
-/*
- - atobytes - convert ASCII to data bytes
+/**
+ * @brief atobytes - convert ASCII to data bytes
+ *
* another backward-compatibility interface
*/
-const char *
-atobytes(src, srclen, dst, dstlen, lenp)
-const char *src;
-size_t srclen;
-char *dst;
-size_t dstlen;
-size_t *lenp;
+const char *atobytes(const char *src, size_t srclen, char *dst, size_t dstlen, size_t *lenp)
{
return ttodata(src, srclen, 0, dst, dstlen, lenp);
}
-/*
- - unhex - convert two ASCII hex digits to byte
+/**
+ * @brief unhex - convert two ASCII hex digits to byte
+ *
+ * @param src known to be full length
+ * @param dstnumber of result bytes, or error code
+ * @param dstlen not large enough is a failure
+ * @return
*/
-static int /* number of result bytes, or error code */
-unhex(src, dst, dstlen)
-const char *src; /* known to be full length */
-char *dst;
-size_t dstlen; /* not large enough is a failure */
+static int unhex(const char *src, char *dst, size_t dstlen)
{
char *p;
unsigned byte;
@@ -252,16 +252,18 @@ size_t dstlen; /* not large enough is a failure */
return 1;
}
-/*
- - unb64 - convert four ASCII base64 digits to three bytes
+/**
+ * @brief unb64 - convert four ASCII base64 digits to three bytes
+ *
* Note that a base64 digit group is padded out with '=' if it represents
* less than three bytes: one byte is dd==, two is ddd=, three is dddd.
+ *
+ * @param src known to be full length
+ * @param dst
+ * @param dstlen
+ * @return number of result bytes, or error code
*/
-static int /* number of result bytes, or error code */
-unb64(src, dst, dstlen)
-const char *src; /* known to be full length */
-char *dst;
-size_t dstlen;
+static int unb64(const char *src, char *dst, size_t dstlen)
{
char *p;
unsigned byte1;
@@ -316,14 +318,15 @@ size_t dstlen;
return 3;
}
-/*
- - untext - convert one ASCII character to byte
+/**
+ * @brief untext - convert one ASCII character to byte
+ *
+ * @param src known to be full length
+ * @param dst
+ * @param dstlen not large enough is a failure
+ * @return number of result bytes, or error code
*/
-static int /* number of result bytes, or error code */
-untext(src, dst, dstlen)
-const char *src; /* known to be full length */
-char *dst;
-size_t dstlen; /* not large enough is a failure */
+static int untext(const char *src, char *dst, size_t dstlen)
{
if (dstlen < 1)
return SHORT;
@@ -332,18 +335,19 @@ size_t dstlen; /* not large enough is a failure */
return 1;
}
-/*
- - badch - produce a nice complaint about an unknown character
+/**
+ * @brief badch - produce a nice complaint about an unknown character
*
* If the compiler complains that the array bigenough[] has a negative
* size, that means the TTODATAV_BUF constant has been set too small.
+ *
+ * @param src
+ * @param errcode
+ * @param errp might be NULL
+ * @param errlen
+ * @return literal or errp
*/
-static const char * /* literal or errp */
-badch(src, errcode, errp, errlen)
-const char *src;
-int errcode;
-char *errp; /* might be NULL */
-size_t errlen;
+static const char *badch(const char *src, int errcode, char *errp, size_t errlen)
{
static const char pre[] = "unknown character (`";
static const char suf[] = "') in input";