/*
- * "$Id: mime.h 4970 2006-01-24 14:05:45Z mike $"
+ * "$Id: mime.h 5771 2006-07-20 18:06:20Z mike $"
*
* MIME type/conversion database definitions for the Common UNIX Printing System (CUPS).
*
* C++ magic...
*/
-# ifdef _cplusplus
+# ifdef __cplusplus
extern "C" {
-# endif /* _cplusplus */
+# endif /* __cplusplus */
/*
# define MIME_MAX_SUPER 16 /* Maximum size of supertype name */
# define MIME_MAX_TYPE IPP_MAX_NAME /* Maximum size of type name */
# define MIME_MAX_FILTER 256 /* Maximum size of filter pathname */
-# define MIME_MAX_BUFFER 8192 /* Maximum size of file buffer */
+# define MIME_MAX_BUFFER 4096 /* Maximum size of file buffer */
/*
MIME_MAGIC_ISTRING /* Case-insensitive string matches */
} mime_op_t;
-typedef struct mime_magic_str /**** MIME Magic Data ****/
+typedef struct _mime_magic_s /**** MIME Magic Data ****/
{
- struct mime_magic_str *prev, /* Previous rule */
+ struct _mime_magic_s *prev, /* Previous rule */
*next, /* Next rule */
*parent, /* Parent rules */
*child; /* Child rules */
} value;
} mime_magic_t;
-typedef struct /**** MIME Type Data ****/
+typedef struct _mime_type_s /**** MIME Type Data ****/
{
mime_magic_t *rules; /* Rules used to detect this type */
char super[MIME_MAX_SUPER], /* Super-type name ("image", "application", etc.) */
type[MIME_MAX_TYPE]; /* Type name ("png", "postscript", etc.) */
} mime_type_t;
-typedef struct /**** MIME Conversion Filter Data ****/
+typedef struct _mime_filter_s /**** MIME Conversion Filter Data ****/
{
mime_type_t *src, /* Source type */
*dst; /* Destination type */
char filter[MIME_MAX_FILTER];/* Filter program to use */
} mime_filter_t;
-typedef struct /**** MIME Database ****/
+typedef struct _mime_s /**** MIME Database ****/
{
cups_array_t *types; /* File types */
cups_array_t *filters; /* Type conversion filters */
+ cups_array_t *srcs; /* Filters sorted by source type */
} mime_t;
extern int mimeAddTypeRule(mime_type_t *mt, const char *rule);
extern void mimeDeleteType(mime_t *mime, mime_type_t *mt);
extern mime_type_t *mimeFileType(mime_t *mime, const char *pathname,
- int *compression);
+ const char *filename, int *compression);
extern mime_type_t *mimeFirstType(mime_t *mime);
extern mime_type_t *mimeNextType(mime_t *mime);
extern int mimeNumTypes(mime_t *mime);
const char *filter);
extern void mimeDeleteFilter(mime_t *mime, mime_filter_t *filter);
extern cups_array_t *mimeFilter(mime_t *mime, mime_type_t *src,
- mime_type_t *dst, int *cost, int max_depth);
+ mime_type_t *dst, int *cost);
extern mime_filter_t *mimeFirstFilter(mime_t *mime);
extern mime_filter_t *mimeNextFilter(mime_t *mime);
extern int mimeNumFilters(mime_t *mime);
-# ifdef _cplusplus
+# ifdef __cplusplus
}
-# endif /* _cplusplus */
+# endif /* __cplusplus */
#endif /* !_CUPS_MIME_H_ */
/*
- * End of "$Id: mime.h 4970 2006-01-24 14:05:45Z mike $".
+ * End of "$Id: mime.h 5771 2006-07-20 18:06:20Z mike $".
*/