X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/86ac0f5e76979de35bafd5198a75bfe354d2729a..7054379384884f0975c687ce9b2cd8c20e3f2c12:/h/prototypes.h diff --git a/h/prototypes.h b/h/prototypes.h index ef02f9a6..884e0e0a 100644 --- a/h/prototypes.h +++ b/h/prototypes.h @@ -18,10 +18,10 @@ char *etcpath(char *); struct msgs_array; void add_profile_entry (const char *, const char *); -void adios (const char *, char *, ...) NORETURN; +void adios (const char *, const char *, ...) NORETURN; void admonish (char *, char *, ...); -void advertise (const char *, char *, char *, va_list); -void advise (const char *, char *, ...); +void advertise (const char *, char *, const char *, va_list); +void advise (const char *, const char *, ...); char **argsplit (char *, char **, int *); void argsplit_msgarg (struct msgs_array *, char *, char **); void argsplit_insert (struct msgs_array *, char *, char **); @@ -48,13 +48,14 @@ char *concat (const char *, ...); int context_del (char *); char *context_find (const char *); char *context_find_by_type (const char *, const char *, const char *); +int context_find_prefix(const char *); int context_foil (char *); void context_read (void); void context_replace (char *, char *); void context_save (void); char *copy (const char *, char *); char **copyip (char **, char **, int); -void cpydata (int, int, char *, char *); +void cpydata (int, int, const char *, const char *); void cpydgst (int, int, char *, char *); char *cpytrim (const char *); char *rtrim (char *); @@ -244,7 +245,7 @@ int lkopendata(const char *, int, mode_t, int *); FILE *lkfopenspool(const char *, const char *); int lkopenspool(const char *, int, mode_t, int *); int m_atoi (char *); -char *m_backup (char *); +char *m_backup (const char *); int m_convert (struct msgs *, char *); char *m_draft (char *, char *, int, int *); void m_getfld_state_reset (m_getfld_state_t *); @@ -472,6 +473,17 @@ int writeBase64aux(FILE *in, FILE *out, int crlf); int writeBase64 (unsigned char *, size_t, unsigned char *); int writeBase64raw (unsigned char *, size_t, unsigned char *); +/* + * first argument: the string to be decoded + * second argument: the decoded bytes + * third argument: number of decoded bytes + * fourth argument: non-zero for text content, and for which CR's should be skipped + * fifth argument: for an MD5 digest, it can be null + */ +int decodeBase64 (const char *, const char **, size_t *, int, unsigned char *); + +void hexify (const unsigned char *, size_t, char **); + /* * credentials management */