-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathpua_patch.diff
71 lines (64 loc) · 2.23 KB
/
pua_patch.diff
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
diff --git a/modules/pua/add_events.c b/modules/pua/add_events.c
index b802232..f712013 100644
--- a/modules/pua/add_events.c
+++ b/modules/pua/add_events.c
@@ -106,6 +106,13 @@ int pua_add_events(void)
return -1;
}
+ if(add_pua_event(DFKS_EVENT, "as-feature-event",
+ "application/x-as-feature-event+xml", feature_process_body)< 0)
+ {
+ LM_ERR("while adding event as-feature-event\n");
+ return -1;
+ }
+
return 0;
}
@@ -400,3 +407,9 @@ int dlg_process_body(publ_info_t* publ, str** fin_body, int ver, str** tuple)
return 0;
}
+int dfks_process_body(publ_info_t* publ, str** fin_body, int ver, str** tuple)
+{
+ *fin_body= publ->body;
+ return 0;
+}
+
diff --git a/modules/pua/add_events.h b/modules/pua/add_events.h
index 4813859..cd963db 100644
--- a/modules/pua/add_events.h
+++ b/modules/pua/add_events.h
@@ -40,5 +40,6 @@ int bla_process_body (struct publ_info* publ, str** fin_body, int ver, str** tup
int mwi_process_body (struct publ_info* publ, str** fin_body, int ver, str** tuple);
int dlg_process_body (struct publ_info* publ, str** fin_body, int ver, str** tuple);
int reginfo_process_body (struct publ_info* publ, str** fin_body, int ver, str** tuple);
+int dfks_process_body (struct publ_info* publ, str** fin_body, int ver, str** tuple);
#endif
diff --git a/modules/pua/hash.h b/modules/pua/hash.h
index 65020be..9c63e24 100644
--- a/modules/pua/hash.h
+++ b/modules/pua/hash.h
@@ -43,6 +43,7 @@
#define DIALOG_EVENT 1<<5
#define REGINFO_EVENT 1<<6
#define XCAPDIFF_EVENT 1<<7
+#define DFKS_EVENT 1<<8
#define UL_PUBLISH 1<<0
#define BLA_PUBLISH 1<<1
@@ -60,6 +61,8 @@
#define REGINFO_SUBSCRIBE 1<<13
#define XCAPDIFF_PUBLISH 1<<14
#define XCAPDIFF_SUBSCRIBE 1<<15
+#define DFKS_PUBLISH 1<<16
+#define DFKS_SUBSCRIBE 1<<17
#define NO_UPDATEDB_FLAG 1<<0
#define UPDATEDB_FLAG 1<<1
@@ -174,6 +177,10 @@ static inline int get_event_flag(str* event)
case 15:
if (strncmp(event->s, "message-summary", 15) == 0)
return MSGSUM_EVENT;
+ break;
+ case 16:
+ if (strncmp(event->s, "as-feature-event", 16) == 0)
+ return DFKS_EVENT;
}
LM_ERR("Unknown event string\n");