summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mod_mime_xattr.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/mod_mime_xattr.c b/src/mod_mime_xattr.c
index 434de4a..3a18b1e 100644
--- a/src/mod_mime_xattr.c
+++ b/src/mod_mime_xattr.c
@@ -31,10 +31,13 @@
#include "http_request.h"
#include "ap_config.h"
-#define XATTR_NAME_MIMETYPE "user.mime-type"
-#define XATTR_NAME_ENCODING "user.mime-encoding"
+#define XATTR_NAME_MIMETYPE "user.mime_type"
+#define XATTR_NAME_MIMETYPE2 "user.mime-type"
+#define XATTR_NAME_ENCODING "user.mime_encoding"
+#define XATTR_NAME_ENCODING2 "user.mime-encoding"
#define XATTR_NAME_CHARSET "user.charset"
-#define XATTR_NAME_HANDLER "user.apache-handler"
+#define XATTR_NAME_HANDLER "user.apache_handler"
+#define XATTR_NAME_HANDLER2 "user.apache-handler"
module MODULE_VAR_EXPORT mime_xattr_module;
@@ -145,7 +148,10 @@ static int find_ct(request_rec *r) {
if (!(charset = validate_charset(charset)))
ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r->server, "mod_mime_xattr: bad charset specification on file <%s>", r->filename);
- if ((mime_type = get_xattr(r->pool, r->filename, XATTR_NAME_MIMETYPE))) {
+ if (!(mime_type = get_xattr(r->pool, r->filename, XATTR_NAME_MIMETYPE)))
+ mime_type = get_xattr(r->pool, r->filename, XATTR_NAME_MIMETYPE2);
+
+ if (mime_type) {
if (!(mime_type = validate_mime_type(mime_type)))
ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r->server, "mod_mime_xattr: bad mime type specification on file <%s>", r->filename);
else {
@@ -173,7 +179,10 @@ static int find_ct(request_rec *r) {
r->content_type = ap_psprintf(r->pool, "%s; charset=%s", ct, charset);
}
- if ((encoding = get_xattr(r->pool, r->filename, XATTR_NAME_ENCODING))) {
+ if (!(encoding = get_xattr(r->pool, r->filename, XATTR_NAME_ENCODING)))
+ encoding = get_xattr(r->pool, r->filename, XATTR_NAME_ENCODING2);
+
+ if (encoding) {
if (!(encoding = validate_encoding(encoding)))
ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r->server, "mod_mime_xattr: bad encoding specification on file <%s>", r->filename);
else
@@ -184,7 +193,10 @@ static int find_ct(request_rec *r) {
if (c->enable_handler) {
char *handler;
- if ((handler = get_xattr(r->pool, r->filename, XATTR_NAME_HANDLER))) {
+ if (!(handler = get_xattr(r->pool, r->filename, XATTR_NAME_HANDLER)))
+ handler = get_xattr(r->pool, r->filename, XATTR_NAME_HANDLER2);
+
+ if (handler) {
if (!(handler = validate_handler(handler)))
ap_log_error(APLOG_MARK, APLOG_NOERRNO|APLOG_ERR, r->server, "mod_mime_xattr: bad apache handler specification on file <%s>", r->filename);
else {