X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/5da3c5ae104a852069311096fe828c7eb5af1190..c0ee509559273a5133ff73026e76c19aca65fa87:/h/prototypes.h diff --git a/h/prototypes.h b/h/prototypes.h index 18ffb19d..a44ccbf5 100644 --- a/h/prototypes.h +++ b/h/prototypes.h @@ -315,6 +315,7 @@ int pidwait (pid_t, int); int pidstatus (int, FILE *, char *); char *pluspath(char *); void print_help (char *, struct swit *, int); +void print_intro (FILE *, int); void print_sw (const char *, const struct swit *, char *, FILE *); void print_version (char *); void push (void); @@ -451,12 +452,16 @@ int sc_length(void); int sc_width(void); int build_form (char *, char *, int *, char *, char *, char *, char *, char *, char *); -int sendsbr (char **, int, char *, char *, struct stat *, int); +int sendsbr (char **, int, char *, char *, struct stat *, int, const char *); int SOprintf (char *, ...); int what_now (char *, int, int, char *, char *, int, struct msgs *, char *, int, char *, int); int WhatNow(int, char **); +/* Includes trailing NUL */ + +#define BASE64SIZE(x) ((((x + 2) / 3) * 4) + 1) + /* * Copy data from one file to another, converting to base64-encoding. * @@ -470,16 +475,20 @@ int WhatNow(int, char **); */ int writeBase64aux(FILE *in, FILE *out, int crlf); -int writeBase64 (unsigned char *, size_t, unsigned char *); -int writeBase64raw (unsigned char *, size_t, unsigned char *); +int writeBase64 (const unsigned char *, size_t, unsigned char *); +int writeBase64raw (const unsigned char *, size_t, unsigned char *); /* * first argument: the string to be decoded * second argument: the decoded bytes - * third argument: non-zero for text content, and for which CR's should be skipped - * fourth argument: for an MD5 digest, it can be null + * 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 *); +int decodeBase64 (const char *, unsigned char **, size_t *, int, + unsigned char *); + +void hexify (const unsigned char *, size_t, char **); /* * credentials management