core: fix another bunch of 'no real prototype' warnings, add doxygen docs
[sip-router] / globals.h
index 035b99d..8b3a81d 100644 (file)
--- a/globals.h
+++ b/globals.h
@@ -23,8 +23,8 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License 
- * along with this program; if not, write to the Free Software 
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  */
 
 #define DO_REV_DNS 2
 
 
 #define DO_REV_DNS 2
 
 
-
-extern char * cfg_file;
+extern char* mods_dir;   /* directory with dyn. loadable modules */
+extern char* cfg_file;
 extern int config_check;
 extern int config_check;
-extern char *stat_file;
+extern charstat_file;
 extern unsigned short port_no;
 
 extern unsigned short port_no;
 
+extern time_t up_since;
+extern pid_t creator_pid;  /* pid of first process before daemonization */
 extern int uid;
 extern int gid;
 extern int uid;
 extern int gid;
-char* pid_file;
-char* pgid_file;
-extern int own_pgid; /* whether or not we have our own pgid (and it's ok
->--->--->--->--->--->--->--->--->--->--->--- to use kill(0, sig) */
+extern char* pid_file;
+extern char* pgid_file;
+extern int own_pgid; /* whether or not we have our own pgid (and it's ok to use kill(0, sig) */
+
+extern int server_id; /* A unique ID of the SIP server */
 
 extern struct socket_info* bind_address; /* pointer to the crt. proc.
                                                                                        listening address */
 extern struct socket_info* sendipv4; /* ipv4 socket to use when msg.
                                                                                comes from ipv6*/
 extern struct socket_info* sendipv6; /* same as above for ipv6 */
 
 extern struct socket_info* bind_address; /* pointer to the crt. proc.
                                                                                        listening address */
 extern struct socket_info* sendipv4; /* ipv4 socket to use when msg.
                                                                                comes from ipv6*/
 extern struct socket_info* sendipv6; /* same as above for ipv6 */
+#ifdef USE_RAW_SOCKS
+extern int raw_udp4_send_sock;
+#endif /* USE_RAW_SOCKS */
+
 #ifdef USE_TCP
 extern struct socket_info* sendipv4_tcp; /* ipv4 socket to use when msg.
                                                                                comes from ipv6*/
 #ifdef USE_TCP
 extern struct socket_info* sendipv4_tcp; /* ipv4 socket to use when msg.
                                                                                comes from ipv6*/
@@ -72,29 +79,41 @@ extern struct socket_info* sendipv4_tls; /* ipv4 socket to use when msg.
                                                                                comes from ipv6*/
 extern struct socket_info* sendipv6_tls; /* same as above for ipv6 */
 #endif
                                                                                comes from ipv6*/
 extern struct socket_info* sendipv6_tls; /* same as above for ipv6 */
 #endif
+#ifdef USE_SCTP
+extern struct socket_info* sendipv4_sctp; /* ipv4 socket to use when msg.
+                                                                               comes from ipv6*/
+extern struct socket_info* sendipv6_sctp; /* same as above for ipv6 */
+#endif
 
 extern unsigned int maxbuffer;
 extern int children_no;
 #ifdef USE_TCP
 
 extern unsigned int maxbuffer;
 extern int children_no;
 #ifdef USE_TCP
+extern int tcp_main_pid;
 extern int tcp_children_no;
 extern int tcp_disable;
 extern int tcp_children_no;
 extern int tcp_disable;
-extern int tcp_accept_aliases;
-extern int tcp_connect_timeout;
-extern int tcp_send_timeout;
 extern enum poll_types tcp_poll_method;
 extern enum poll_types tcp_poll_method;
-extern int tcp_max_fd_no;
+extern int tcp_max_connections; /* maximum connections, hard limit */
 #endif
 #ifdef USE_TLS
 extern int tls_disable;
 extern unsigned short tls_port_no;
 #endif
 #endif
 #ifdef USE_TLS
 extern int tls_disable;
 extern unsigned short tls_port_no;
 #endif
+#ifdef USE_SCTP
+extern int sctp_disable;
+extern int sctp_children_no;
+#endif
 extern int dont_fork;
 extern int dont_fork;
+extern int dont_daemonize;
 extern int check_via;
 extern int check_via;
+extern int phone2tel;
 extern int received_dns;
 extern int syn_branch;
 /* extern int process_no; */
 extern int received_dns;
 extern int syn_branch;
 /* extern int process_no; */
+extern int child_rank;
 extern int sip_warning;
 extern int server_signature;
 extern int sip_warning;
 extern int server_signature;
+extern str server_hdr;
+extern str user_agent_hdr;
 extern char* user;
 extern char* group;
 extern char* sock_user;
 extern char* user;
 extern char* group;
 extern char* sock_user;
@@ -104,12 +123,22 @@ extern int sock_gid;
 extern int sock_mode;
 extern char* chroot_dir;
 extern char* working_dir;
 extern int sock_mode;
 extern char* chroot_dir;
 extern char* working_dir;
+extern int sr_auto_aliases;
 
 #ifdef USE_MCAST
 extern int mcast_loopback;
 extern int mcast_ttl;
 #endif /* USE_MCAST */
 
 
 #ifdef USE_MCAST
 extern int mcast_loopback;
 extern int mcast_ttl;
 #endif /* USE_MCAST */
 
+#ifdef USE_STUN
+extern unsigned int stun_refresh_interval;
+extern int stun_allow_stun;
+extern int stun_allow_fp;
+#endif
+
+extern int tos;
+extern int pmtu_discovery;
+
 /*
  * debug & log_stderr moved to dprint.h*/
 
 /*
  * debug & log_stderr moved to dprint.h*/
 
@@ -117,20 +146,11 @@ extern int mcast_ttl;
 /* extern int *pids; -moved to pt.h */
 
 extern int cfg_errors;
 /* extern int *pids; -moved to pt.h */
 
 extern int cfg_errors;
+extern int cfg_warnings;
 extern unsigned int msg_no;
 
 extern unsigned long shm_mem_size;
 extern unsigned int msg_no;
 
 extern unsigned long shm_mem_size;
-
-/* FIFO server config */
-extern char *fifo; /* FIFO name */
-extern int fifo_mode;
-extern char *fifo_dir; /* dir. where  reply fifos are allowed */
-extern char *fifo_db_url;  /* db url used by db_fifo interface */
-
-/* UNIX domain socket configuration */
-extern char *unixsock_name;   /* The name of the socket */
-extern int unixsock_children; /* The number of listening children */
-extern int unixsock_tx_timeout; /* Timeout (in ms) used when sending data */
+extern unsigned long pkg_mem_size;
 
 /* AVP configuration */
 extern char *avp_db_url;  /* db url used by user preferences (AVPs) */
 
 /* AVP configuration */
 extern char *avp_db_url;  /* db url used by user preferences (AVPs) */
@@ -143,9 +163,15 @@ extern int process_no;
 extern int reply_to_via;
 
 extern int is_main;
 extern int reply_to_via;
 
 extern int is_main;
+extern int fixup_complete;
 
 /* debugging level for dumping memory status */
 extern int memlog;
 
 /* debugging level for dumping memory status */
 extern int memlog;
+/* debugging level for malloc debugging messages */
+extern int memdbg;
+
+/* debugging level for timer debugging (see -DTIMER_DEBUG) */
+extern int timerlog;
 
 /* looking up outbound interface ? */
 extern int mhomed;
 
 /* looking up outbound interface ? */
 extern int mhomed;
@@ -159,8 +185,54 @@ extern str default_global_address;
 /* pre-ser ports */
 extern str default_global_port;
 
 /* pre-ser ports */
 extern str default_global_port;
 
+/* how much time to allow for shutdown, before killing everything */
+extern int ser_kill_timeout;
+
 /* core dump and file limits */
 extern int disable_core_dump;
 extern int open_files_limit;
 
 /* core dump and file limits */
 extern int disable_core_dump;
 extern int open_files_limit;
 
+/* memory lock/pre-fault */
+extern int shm_force_alloc;
+extern int mlock_pages;
+
+/* real time stuff */
+extern int real_time;
+extern int rt_prio;
+extern int rt_policy; /* SCHED_OTHER */
+extern int rt_timer1_prio;  /* "fast" timer */
+extern int rt_timer2_prio;  /* "slow" timer */
+extern int rt_timer1_policy; /* "fast" timer, SCHED_OTHER */
+extern int rt_timer2_policy; /* "slow" timer, SCHED_OTHER */
+
+
+#ifdef USE_DNS_CACHE
+extern int dns_cache_init; /* if 0, the DNS cache is not initialized at startup */
+extern unsigned int dns_timer_interval; /* gc timer interval in s */
+extern int dns_flags; /* default flags used for the  dns_*resolvehost
+                    (compatibility wrappers) */
+
+#ifdef USE_DNS_CACHE_STATS
+struct t_dns_cache_stats{
+       unsigned long dns_req_cnt;
+       unsigned long dc_hits_cnt;
+       unsigned long dc_neg_hits_cnt;
+       unsigned long dc_lru_cnt;
+};
+extern struct t_dns_cache_stats* dns_cache_stats;
+#endif /* USE_DNS_CACHE_STATS */
+#endif
+#ifdef USE_DST_BLACKLIST
+extern int dst_blacklist_init; /* if 0, the dst blacklist is not initialized at startup */
+extern unsigned int blst_timer_interval; /*blacklist gc timer interval (in s)*/
+
+#ifdef USE_DST_BLACKLIST_STATS
+struct t_dst_blacklist_stats{
+       unsigned long bkl_hit_cnt;
+       unsigned long bkl_lru_cnt;
+};
+extern struct t_dst_blacklist_stats* dst_blacklist_stats;
+#endif /* USE_DST_BLACKLIST_STATS */
+#endif
+
 #endif
 #endif