فهرست منبع

core: sip routing api - custom callid generator callback

- allow registration of callback functions for different callid
  generators
Daniel-Constantin Mierla 9 سال پیش
والد
کامیت
0ee31b2d29
2فایلهای تغییر یافته به همراه76 افزوده شده و 0 حذف شده
  1. 46 0
      srapi.c
  2. 30 0
      srapi.h

+ 46 - 0
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;
+}

+ 30 - 0
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