MIME(3ast) MIME(3ast)

# [NAME](#NAME)

mime - mime/mailcap interface

# [SYNOPSIS](#SYNOPSIS)

```
#include <mime.h>
Mime_t
{
	unsigned long	flags;
};
Mime_t*   mimeopen(unsigned long flags);
void      mimeclose(Mime_t* mime);
int       mimeload(Mime_t* mime, const char* path, unsigned long flags);
int       mimelist(Mime_t* mime, Sfio_t* sp, const char* pattern);
char*     mimeview(Mime_t* mime, const char* view, const char* name, const char* type, const char* opts);
int       mimeset(Mime_t* mime, char* line, unsigned long flags);
```

# [DESCRIPTION](#DESCRIPTION)

These routines provide an interface to the MIME type database. mimeopen returns a mime session handle that is passed to all of the other routines. The *flags* argument is currently unused.

mimeclose closes the mime session.

mimeload loads the mime file named by *path* into the mime session. *flags* may be one of:

MIME\_LIST

The *path* argument is a **:** separated list of pathnames, each of which is loaded. Non-existent files are ignored MIME\_LIST set.

MIME\_REPLACE

Replace existing entries by new entries with the same type. Otherwise original entries take precedence.

More than one mime file can be loaded into a session; the files are searched in load order. If *path* is 0 then the default mime file is loaded.

mimelist lists the mime file contents on the [*sfio*(3)](/man/os/ksh/sfio.3) stream *sp*. This is used for debugging mime entries.

mimetype returns the type string for *path*. mimetype always returns a non-null string. If errors are encountered on *path* then the return value will be error.

# [SEE ALSO](#SEE_ALSO)

[file(1)](/man/os/ksh/file.1), [mime(4)](/man/os/ksh/mime.4)

---

Document: mime(3ast) from ksh 1.0.10-r37 (Chainguard OS)
Source: https://github.com/ksh93/ksh
