X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/20ce29e738d1a15764197559d256a85ef89d85d7..71458b3b2492943349f7693a46792756d5013c69:/h/prototypes.h diff --git a/h/prototypes.h b/h/prototypes.h index 0c583109..a4184312 100644 --- a/h/prototypes.h +++ b/h/prototypes.h @@ -6,18 +6,6 @@ * as much as practical. */ -/* - * missing system prototypes - */ -#if ! defined(HAVE_TERMCAP_H) && ! defined (HAVE_NCURSES_TERMCAP_H) - extern int tgetent (char *bp, char *name); - extern int tgetnum (char *id); - extern int tgetflag (char *id); - extern char *tgetstr (char *id, char **area); - extern char *tgoto (char *cm, int destcol, int destline); - extern int tputs (char *cp, int affcnt, int (*outc) (int)); -#endif - /* * prototype from config.h */ @@ -124,13 +112,47 @@ char *getfolder(int); * * Arguments: * - * capability - The name of a terminfo capability (see terminfo(5)). + * capability - The name of the terminfo capability (see terminfo(5)). * * Returns a tputs-processed string, or NULL if terminal initialization failed * or the capability wasn't found. */ char *get_term_stringcap(char *capability); +/* + * Get a parameterized string from the terminfo database for the current + * terminal. + * + * We don't yet have a standardized tparm() that will take a stdarg + * argument. Right now we don't want many parameters, so we only + * take two. Everything gets passed to tparm() as-is. If we need + * a capability with more arguments, we'll just add more later. + * + * Arguments: + * + * capability - The name of the terminfo capability (see terminfo(5)). + * arg1..argN - Arguments 1-N. + * + * Returns a tparm and tputs-processed string, or NULL if there was a problem + * initializating the terminal or retrieving the capability. + */ +char *get_term_stringparm(char *capability, long arg1, long arg2); + +/* + * Get a number from the terminfo database for the current terminal. + * + * Retrieve the specified terminfo capability and return the numeric + * value of that capability from the terminfo database. + * + * Arguments: + * + * capability - The name of the terminfo capability (see terminfo(5)). + * + * Returns the output of tigetnum() for that capability, or -1 if it was + * unable to initialize the terminfo database. + */ +int get_term_numcap(char *capability); + /* * Lock open/close routines. * @@ -173,6 +195,26 @@ void m_unknown(m_getfld_state_t *, FILE *); int makedir (char *); char *message_id (time_t, int); +/* + * Return a MIME content-type string for the specified file. + * + * If the system supports it, will use the "file" command to determine + * the appropriate content-type. Otherwise it will try to determine the + * content-type from the suffix. If that fails, the file will be scanned + * and either assigned a MIME type of text/plain or application/octet-stream + * depending if binary content is present. + * + * Arguments: + * + * filename - The name of the file to determine the MIME type of. + * + * Returns a pointer to a content-type string (which may include MIME + * parameters, such as charset). Returns a NULL if it cannot determine + * the MIME type of the file. Returns allocated storage that must be + * free'd. + */ +char *mime_type(const char *filename); + /* * Clear the screen, using the appropriate entry from the terminfo database */ @@ -314,7 +356,7 @@ 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, char *, int); +int sendsbr (char **, int, char *, char *, struct stat *, int); int SOprintf (char *, ...); int what_now (char *, int, int, char *, char *, int, struct msgs *, char *, int, char *, int);