Bladeren bron

- mime types for SIMPLE protocol (contributed by Jamey Hicks)

Bogdan-Andrei Iancu 20 jaren geleden
bovenliggende
commit
ac892f2ad8
2 gewijzigde bestanden met toevoegingen van 103 en 15 verwijderingen
  1. 95 15
      parser/parse_content.c
  2. 8 0
      parser/parse_content.h

+ 95 - 15
parser/parse_content.c

@@ -74,7 +74,7 @@ static type_node_t type_tree[] = {
 					{'a',TYPE_UNKNOWN,1,-1},
 					{'a',TYPE_UNKNOWN,1,-1},
 						{'g',TYPE_UNKNOWN,1,-1},
 						{'g',TYPE_UNKNOWN,1,-1},
 							{'e',TYPE_MESSAGE,0,-1},
 							{'e',TYPE_MESSAGE,0,-1},
-	{'a',TYPE_UNKNOWN,1,-1},
+	{'a',TYPE_UNKNOWN,1,22},
 		{'p',TYPE_UNKNOWN,1,-1},
 		{'p',TYPE_UNKNOWN,1,-1},
 			{'p',TYPE_UNKNOWN,1,-1},
 			{'p',TYPE_UNKNOWN,1,-1},
 				{'l',TYPE_UNKNOWN,1,-1},
 				{'l',TYPE_UNKNOWN,1,-1},
@@ -84,27 +84,107 @@ static type_node_t type_tree[] = {
 								{'t',TYPE_UNKNOWN,1,-1},
 								{'t',TYPE_UNKNOWN,1,-1},
 									{'i',TYPE_UNKNOWN,1,-1},
 									{'i',TYPE_UNKNOWN,1,-1},
 										{'o',TYPE_UNKNOWN,1,-1},
 										{'o',TYPE_UNKNOWN,1,-1},
-											{'n',TYPE_APPLICATION,0,-1}
+											{'n',TYPE_APPLICATION,0,-1},
+	{'m',TYPE_UNKNOWN,1,-1},
+		{'u',TYPE_UNKNOWN,1,-1},
+			{'l',TYPE_UNKNOWN,1,-1},
+				{'t',TYPE_UNKNOWN,1,-1},
+					{'i',TYPE_UNKNOWN,1,-1},
+						{'p',TYPE_UNKNOWN,1,-1},
+							{'a',TYPE_UNKNOWN,1,-1},
+								{'r',TYPE_UNKNOWN,1,-1},
+									{'t',TYPE_MULTIPART,0,-1},
 	};
 	};
 
 
 static type_node_t subtype_tree[] = {
 static type_node_t subtype_tree[] = {
-		{'p',SUBTYPE_UNKNOWN,1,5},
-			{'l',SUBTYPE_UNKNOWN,1,-1},
-				{'a',SUBTYPE_UNKNOWN,1,-1},
+	{'p',SUBTYPE_UNKNOWN,2,13},
+		{'l',SUBTYPE_UNKNOWN,1,5},
+			{'a',SUBTYPE_UNKNOWN,1,-1},
+				{'i',SUBTYPE_UNKNOWN,1,-1},
+					{'n',SUBTYPE_PLAIN,0,-1},
+		{'i',SUBTYPE_UNKNOWN,1,-1},
+			{'d',SUBTYPE_UNKNOWN,1,-1},
+				{'f',SUBTYPE_UNKNOWN,1,-1},
 					{'i',SUBTYPE_UNKNOWN,1,-1},
 					{'i',SUBTYPE_UNKNOWN,1,-1},
-						{'n',SUBTYPE_PLAIN,0,-1},
-		{'c',SUBTYPE_UNKNOWN,1,10},
-			{'p',SUBTYPE_UNKNOWN,2,-1},
-				{'i',SUBTYPE_UNKNOWN,1,9},
-					{'m',SUBTYPE_CPIM,0,-1},
-				{'l',SUBTYPE_UNKNOWN,1,-1},
+						{'+',TYPE_UNKNOWN,1,-1},
+							{'x',TYPE_UNKNOWN,1,-1},
+								{'m',TYPE_UNKNOWN,1,-1},
+									{'l',SUBTYPE_PIDFXML,0,-1},
+	{'s',SUBTYPE_UNKNOWN,1,16},
+		{'d',SUBTYPE_UNKNOWN,1,-1},
+			{'p',SUBTYPE_SDP,0,-1},
+	{'c',SUBTYPE_UNKNOWN,1,25},
+		{'p',SUBTYPE_UNKNOWN,2,-1},
+			{'i',SUBTYPE_UNKNOWN,1,29},
+				{'m',SUBTYPE_CPIM,0,-1},
+			{'l',SUBTYPE_UNKNOWN,1,-1},
+				{'+',TYPE_UNKNOWN,1,-1},
+					{'x',TYPE_UNKNOWN,1,-1},
+						{'m',TYPE_UNKNOWN,1,-1},
+							{'l',SUBTYPE_CPLXML,0,-1},
+	{'r',SUBTYPE_UNKNOWN,2,39},
+		{'l',SUBTYPE_UNKNOWN,1,42},
+			{'m',SUBTYPE_UNKNOWN,1,-1},
+				{'i',SUBTYPE_UNKNOWN,1,-1},
 					{'+',TYPE_UNKNOWN,1,-1},
 					{'+',TYPE_UNKNOWN,1,-1},
 						{'x',TYPE_UNKNOWN,1,-1},
 						{'x',TYPE_UNKNOWN,1,-1},
 							{'m',TYPE_UNKNOWN,1,-1},
 							{'m',TYPE_UNKNOWN,1,-1},
-								{'l',SUBTYPE_CPLXML,0,-1},
-		{'s',SUBTYPE_UNKNOWN,1,-1},
-			{'d',SUBTYPE_UNKNOWN,1,-1},
-				{'p',SUBTYPE_SDP,0,-1},
+								{'l',SUBTYPE_RLMIXML,0,-1},
+		{'e',SUBTYPE_UNKNOWN,1,-1},
+			{'l',SUBTYPE_UNKNOWN,1,-1},
+				{'a',SUBTYPE_UNKNOWN,1,-1},
+					{'t',SUBTYPE_UNKNOWN,1,-1},
+						{'e',SUBTYPE_UNKNOWN,1,-1},
+							{'d',SUBTYPE_RELATED,0,-1},
+	{'l',SUBTYPE_UNKNOWN,1,49},
+		{'p',SUBTYPE_UNKNOWN,1,-1},
+			{'i',SUBTYPE_UNKNOWN,1,-1},
+				{'d',SUBTYPE_UNKNOWN,1,-1},
+					{'f',SUBTYPE_UNKNOWN,1,-1},
+						{'i',SUBTYPE_UNKNOWN,1,-1},
+							{'+',TYPE_UNKNOWN,1,-1},
+								{'x',TYPE_UNKNOWN,1,-1},
+									{'m',TYPE_UNKNOWN,1,-1},
+										{'l',SUBTYPE_LPIDFXML,0,-1},
+	{'w',SUBTYPE_UNKNOWN,1,64},
+		{'a',SUBTYPE_UNKNOWN,1,-1},
+			{'t',SUBTYPE_UNKNOWN,1,-1},
+				{'c',SUBTYPE_UNKNOWN,1,-1},
+					{'h',SUBTYPE_UNKNOWN,1,-1},
+						{'e',SUBTYPE_UNKNOWN,1,-1},
+							{'r',SUBTYPE_UNKNOWN,1,-1},
+								{'i',TYPE_UNKNOWN,1,-1},
+									{'n',TYPE_UNKNOWN,1,-1},
+										{'f',TYPE_UNKNOWN,1,-1},
+											{'o',TYPE_UNKNOWN,1,-1},
+												{'+',TYPE_UNKNOWN,1,-1},
+													{'x',TYPE_UNKNOWN,1,-1},
+														{'m',TYPE_UNKNOWN,1,-1},
+															{'l',SUBTYPE_WATCHERINFOXML,0,-1},
+	{'x',SUBTYPE_UNKNOWN,1,74},
+		{'p',SUBTYPE_UNKNOWN,1,-1},
+			{'i',SUBTYPE_UNKNOWN,1,-1},
+				{'d',SUBTYPE_UNKNOWN,1,-1},
+					{'f',SUBTYPE_UNKNOWN,1,-1},
+						{'i',SUBTYPE_UNKNOWN,1,-1},
+							{'+',TYPE_UNKNOWN,1,-1},
+								{'x',TYPE_UNKNOWN,1,-1},
+									{'m',TYPE_UNKNOWN,1,-1},
+										{'l',SUBTYPE_XPIDFXML,0,-1},
+	{'e',SUBTYPE_UNKNOWN,1,-1},
+		{'x',SUBTYPE_UNKNOWN,1,-1},
+			{'t',SUBTYPE_UNKNOWN,1,-1},
+				{'e',SUBTYPE_UNKNOWN,1,-1},
+					{'r',SUBTYPE_UNKNOWN,1,-1},
+						{'n',SUBTYPE_UNKNOWN,1,-1},
+							{'a',TYPE_UNKNOWN,1,-1},
+								{'l',TYPE_UNKNOWN,1,-1},
+									{'-',TYPE_UNKNOWN,1,-1},
+										{'b',SUBTYPE_LPIDFXML,0,-1},
+											{'o',TYPE_UNKNOWN,1,-1},
+												{'d',TYPE_UNKNOWN,1,-1},
+													{'y',SUBTYPE_EXTERNAL_BODY,1,-1},
+
 	};
 	};
 
 
 
 

+ 8 - 0
parser/parse_content.h

@@ -45,6 +45,7 @@ struct mime_type {
 #define TYPE_TEXT            1
 #define TYPE_TEXT            1
 #define TYPE_MESSAGE         2
 #define TYPE_MESSAGE         2
 #define TYPE_APPLICATION     3
 #define TYPE_APPLICATION     3
+#define TYPE_MULTIPART       4
 #define TYPE_ALL             0xfe
 #define TYPE_ALL             0xfe
 #define TYPE_UNKNOWN         0xff
 #define TYPE_UNKNOWN         0xff
 
 
@@ -52,6 +53,13 @@ struct mime_type {
 #define SUBTYPE_CPIM         2
 #define SUBTYPE_CPIM         2
 #define SUBTYPE_SDP          3
 #define SUBTYPE_SDP          3
 #define SUBTYPE_CPLXML       4
 #define SUBTYPE_CPLXML       4
+#define SUBTYPE_PIDFXML      5
+#define SUBTYPE_RLMIXML      6
+#define SUBTYPE_RELATED      7
+#define SUBTYPE_LPIDFXML     8
+#define SUBTYPE_XPIDFXML     9
+#define SUBTYPE_WATCHERINFOXML     10
+#define SUBTYPE_EXTERNAL_BODY      11
 #define SUBTYPE_ALL          0xfe
 #define SUBTYPE_ALL          0xfe
 #define SUBTYPE_UNKNOWN      0xff
 #define SUBTYPE_UNKNOWN      0xff