summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2003-12-28 20:59:21 +0000
committerAlexey Shchepin <alexey@process-one.net>2003-12-28 20:59:21 +0000
commit91aeaae9a5d3f6ad1830eb4c7fa7be8e469af198 (patch)
treedfb88e899ea7071c0ed1be22c63df2cc88149b61
parent* src/ejabberd_app.erl: Now possible to specify path to log file (diff)
* src/ejabberd_app.erl: Now possible to specify path to log file
via "EJABBERD_LOG_PATH" environment variable * src/translate.erl: Now possible to specify path to "msgs" directory via "EJABBERD_MSGS_PATH" environment variable * src/ejabberd.erl: Added get_so_path/0 function * src/ejabberd_app.erl: Use ejabberd:get_so_path/0 to load .so * src/mod_irc/iconv.erl: Likewise * src/stringprep/stringprep.erl: Likewise SVN Revision: 192
-rw-r--r--src/ejabberd.erl10
-rw-r--r--src/ejabberd_app.erl10
-rw-r--r--src/translate.erl8
3 files changed, 24 insertions, 4 deletions
diff --git a/src/ejabberd.erl b/src/ejabberd.erl
index 3deda9a5..3a5c19c6 100644
--- a/src/ejabberd.erl
+++ b/src/ejabberd.erl
@@ -10,7 +10,8 @@
-author('alexey@sevcom.net').
-vsn('$Revision$ ').
--export([start/0, stop/0]).
+-export([start/0, stop/0,
+ get_so_path/0]).
start() ->
application:start(ejabberd).
@@ -19,3 +20,10 @@ stop() ->
application:stop(ejabberd).
+get_so_path() ->
+ case os:getenv("EJABBERD_SO_PATH") of
+ false ->
+ ".";
+ Path ->
+ Path
+ end.
diff --git a/src/ejabberd_app.erl b/src/ejabberd_app.erl
index 81640a60..8be98cfe 100644
--- a/src/ejabberd_app.erl
+++ b/src/ejabberd_app.erl
@@ -51,9 +51,15 @@ init() ->
register(ejabberd, self()),
%erlang:system_flag(fullsweep_after, 0),
%error_logger:logfile({open, ?LOG_PATH}),
- error_logger:add_report_handler(ejabberd_logger_h, ?LOG_PATH),
+ LogPath = case os:getenv("EJABBERD_LOG_PATH") of
+ false ->
+ ".";
+ Path ->
+ Path
+ end,
+ error_logger:add_report_handler(ejabberd_logger_h, LogPath),
%timer:apply_interval(3600000, ?MODULE, dump_ports, []),
- ok = erl_ddll:load_driver(".", expat_erl),
+ ok = erl_ddll:load_driver(ejabberd:get_so_path(), expat_erl),
Port = open_port({spawn, expat_erl}, [binary]),
loop(Port).
diff --git a/src/translate.erl b/src/translate.erl
index 78994934..63507c8c 100644
--- a/src/translate.erl
+++ b/src/translate.erl
@@ -18,7 +18,13 @@
start() ->
ets:new(translations, [named_table, public]),
- load_dir(?MSGS_DIR),
+ Dir = case os:getenv("EJABBERD_MSGS_PATH") of
+ false ->
+ ?MSGS_DIR;
+ Path ->
+ Path
+ end,
+ load_dir(Dir),
ok.
load_dir(Dir) ->