Module: kamailio
Branch: master
Commit: 0ee31b2d29c4822ef6302411fcbe89aaee619e3a
URL:
https://github.com/kamailio/kamailio/commit/0ee31b2d29c4822ef6302411fcbe89a…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2016-02-01T18:48:55+01:00
core: sip routing api - custom callid generator callback
- allow registration of callback functions for different callid
generators
---
Added: srapi.c
Added: srapi.h
---
Diff:
https://github.com/kamailio/kamailio/commit/0ee31b2d29c4822ef6302411fcbe89a…
Patch:
https://github.com/kamailio/kamailio/commit/0ee31b2d29c4822ef6302411fcbe89a…
---
diff --git a/srapi.c b/srapi.c
new file mode 100644
index 0000000..a84762e
--- /dev/null
+++ b/srapi.c
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2016 Daniel-Constantin Mierla (
asipto.com)
+ *
+ * This file is part of Kamailio, a free SIP server.
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "dprint.h"
+
+#include "srapi.h"
+
+static sr_generate_callid_f _sr_generate_callid_func = NULL;
+
+/**
+ *
+ */
+int sr_register_callid_func(sr_generate_callid_f f)
+{
+ if(_sr_generate_callid_func!=NULL) {
+ LM_INFO("overwriting generate callid function\n");
+ }
+ _sr_generate_callid_func = f;
+ return 0;
+}
+
+/**
+ *
+ */
+sr_generate_callid_f sr_get_callid_func(void)
+{
+ return _sr_generate_callid_func;
+}
diff --git a/srapi.h b/srapi.h
new file mode 100644
index 0000000..e0f7867
--- /dev/null
+++ b/srapi.h
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2016 Daniel-Constantin Mierla (
asipto.com)
+ *
+ * This file is part of Kamailio, a free SIP server.
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef __SRAPI_H__
+#define __SRAPI_H__
+
+#include "str.h"
+
+typedef void (*sr_generate_callid_f)(str*);
+
+int sr_register_callid_func(sr_generate_callid_f f);
+
+sr_generate_callid_f sr_get_callid_func(void);
+
+#endif