aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_sip.erl16
-rw-r--r--src/ejabberd_stun.erl16
-rw-r--r--src/mod_sip.erl17
-rw-r--r--src/mod_sip_proxy.erl5
-rw-r--r--src/mod_sip_registrar.erl5
5 files changed, 58 insertions, 1 deletions
diff --git a/src/ejabberd_sip.erl b/src/ejabberd_sip.erl
index d7404a30e..2c98aec16 100644
--- a/src/ejabberd_sip.erl
+++ b/src/ejabberd_sip.erl
@@ -22,6 +22,21 @@
%%%-------------------------------------------------------------------
-module(ejabberd_sip).
+-ifndef(SIP).
+-include("logger.hrl").
+-export([socket_type/0, start/2, listen_opt_type/1]).
+log_error() ->
+ ?CRITICAL_MSG("ejabberd is not compiled with SIP support", []).
+socket_type() ->
+ log_error(),
+ raw.
+listen_opt_type(_) ->
+ log_error(),
+ [].
+start(_, _) ->
+ log_error(),
+ {error, sip_not_compiled}.
+-else.
%% API
-export([tcp_init/2, udp_init/2, udp_recv/5, start/2,
socket_type/0, listen_opt_type/1]).
@@ -59,3 +74,4 @@ listen_opt_type(_) ->
%%%===================================================================
%%% Internal functions
%%%===================================================================
+-endif.
diff --git a/src/ejabberd_stun.erl b/src/ejabberd_stun.erl
index 3611edba7..35a04ce45 100644
--- a/src/ejabberd_stun.erl
+++ b/src/ejabberd_stun.erl
@@ -27,6 +27,21 @@
-protocol({rfc, 5766}).
-protocol({xep, 176, '1.0'}).
+-ifndef(STUN).
+-include("logger.hrl").
+-export([socket_type/0, start/2, listen_opt_type/1]).
+log_error() ->
+ ?CRITICAL_MSG("ejabberd is not compiled with STUN/TURN support", []).
+socket_type() ->
+ log_error(),
+ raw.
+listen_opt_type(_) ->
+ log_error(),
+ [].
+start(_, _) ->
+ log_error(),
+ {error, sip_not_compiled}.
+-else.
-export([tcp_init/2, udp_init/2, udp_recv/5, start/2,
socket_type/0, listen_opt_type/1]).
@@ -138,3 +153,4 @@ listen_opt_type(_) ->
[shaper, auth_type, auth_realm, tls, certfile, turn_min_port,
turn_max_port, turn_max_allocations, turn_max_permissions,
server_name].
+-endif.
diff --git a/src/mod_sip.erl b/src/mod_sip.erl
index eb5cbe545..7c3e60917 100644
--- a/src/mod_sip.erl
+++ b/src/mod_sip.erl
@@ -25,6 +25,20 @@
-module(mod_sip).
-protocol({rfc, 3261}).
+-include("logger.hrl").
+
+-ifndef(SIP).
+-export([start/2, stop/1, depends/2, mod_opt_type/1]).
+start(_, _) ->
+ ?CRITICAL_MSG("ejabberd is not compiled with SIP support", []),
+ {error, sip_not_compiled}.
+stop(_) ->
+ ok.
+depends(_, _) ->
+ [].
+mod_opt_type(_) ->
+ [].
+-else.
-behaviour(gen_mod).
-behaviour(esip).
@@ -37,7 +51,6 @@
locate/1, mod_opt_type/1, depends/2]).
-include("ejabberd.hrl").
--include("logger.hrl").
-include_lib("esip/include/esip.hrl").
%%%===================================================================
@@ -350,3 +363,5 @@ mod_opt_type(via) ->
mod_opt_type(_) ->
[always_record_route, flow_timeout_tcp,
flow_timeout_udp, record_route, routes, via].
+
+-endif.
diff --git a/src/mod_sip_proxy.erl b/src/mod_sip_proxy.erl
index 5e0cfa25e..19a02e8e4 100644
--- a/src/mod_sip_proxy.erl
+++ b/src/mod_sip_proxy.erl
@@ -24,6 +24,9 @@
%%%-------------------------------------------------------------------
-module(mod_sip_proxy).
+-ifndef(SIP).
+-export([]).
+-else.
-define(GEN_FSM, p1_fsm).
-behaviour(?GEN_FSM).
@@ -424,3 +427,5 @@ safe_nameprep(S) ->
error -> S;
S1 -> S1
end.
+
+-endif.
diff --git a/src/mod_sip_registrar.erl b/src/mod_sip_registrar.erl
index 1bc819c08..0e131eee6 100644
--- a/src/mod_sip_registrar.erl
+++ b/src/mod_sip_registrar.erl
@@ -24,6 +24,9 @@
%%%-------------------------------------------------------------------
-module(mod_sip_registrar).
+-ifndef(SIP).
+-export([]).
+-else.
-ifndef(GEN_SERVER).
-define(GEN_SERVER, gen_server).
-endif.
@@ -580,3 +583,5 @@ process_ping(SIPSocket) ->
(_, Acc) ->
Acc
end, ErrResponse, Sessions).
+
+-endif.