diff include/out_routes.h @ 130:44dc809ffec0

themwi-update-out-routes utility written, compiles
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 06 Oct 2022 20:56:14 -0800
parents
children beb6aaecfe63
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/include/out_routes.h	Thu Oct 06 20:56:14 2022 -0800
@@ -0,0 +1,36 @@
+/*
+ * In this header file we define all of our binary data structures
+ * written into /var/gsm/out-routes.bin, which is the compiled binary form
+ * of the call routing database for themwi-sip-out.
+ *
+ * Some related size limits are also defined here.
+ */
+
+#define	MAX_SIP_DEST_DOMAIN	31
+#define	MAX_SIP_USER_PART	16
+#define	MAX_E164_NUMBER		15
+#define	MAX_INN_PREFIX		12
+#define	MAX_SPECIAL_NUM		6
+
+struct out_routes_header {
+	uint32_t	num_dest;
+	uint32_t	num_inn;
+	uint32_t	num_special;
+};
+
+struct sip_out_dest {
+	struct sockaddr_in sin;
+	char		domain[MAX_SIP_DEST_DOMAIN+1];
+};
+
+struct inn_route {
+	char		prefix[MAX_INN_PREFIX+1];
+	uint8_t		sip_dest_id;
+};
+
+struct special_num_route {
+	char		special_num[MAX_SPECIAL_NUM+1];
+	uint8_t		sip_dest_id;
+	char		sip_user[MAX_SIP_USER_PART+1];
+	uint8_t		flags;
+};