aboutsummaryrefslogtreecommitdiff
path: root/src/mod_proxy65
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <xramtsov@gmail.com>2009-02-27 03:22:40 +0000
committerEvgeniy Khramtsov <xramtsov@gmail.com>2009-02-27 03:22:40 +0000
commitb766109f66232a5b895e9a698516b888f55588a4 (patch)
tree2fe85bf51891072c75131b46c8b9fcfe5423b525 /src/mod_proxy65
parentcosmetic changes (diff)
* src/mod_proxy65/mod_proxy65_service.erl: if an ip option is not defined, the module takes an IP address of a local hostname.
SVN Revision: 1925
Diffstat (limited to 'src/mod_proxy65')
-rw-r--r--src/mod_proxy65/mod_proxy65_service.erl32
1 files changed, 14 insertions, 18 deletions
diff --git a/src/mod_proxy65/mod_proxy65_service.erl b/src/mod_proxy65/mod_proxy65_service.erl
index ee11e3db0..901b5261c 100644
--- a/src/mod_proxy65/mod_proxy65_service.erl
+++ b/src/mod_proxy65/mod_proxy65_service.erl
@@ -215,26 +215,22 @@ parse_options(ServerHost, Opts) ->
ACL = gen_mod:get_opt(access, Opts, all),
Name = gen_mod:get_opt(name, Opts, "SOCKS5 Bytestreams"),
IP = case gen_mod:get_opt(ip, Opts, none) of
- none -> get_proxy_or_domainip(ServerHost, MyHost);
- Addr -> Addr
- end,
+ none -> get_my_ip();
+ Addr -> Addr
+ end,
StrIP = inet_parse:ntoa(IP),
StreamAddr = [{"jid", MyHost}, {"host", StrIP}, {"port", integer_to_list(Port)}],
#state{myhost = MyHost,
- serverhost = ServerHost,
- name = Name,
- port = Port,
- ip = IP,
- stream_addr = StreamAddr,
- acl = ACL}.
-
-%% Return the IP of the proxy host, or if not found, the ip of the xmpp domain
-get_proxy_or_domainip(ServerHost, MyHost) ->
- case inet:getaddr(MyHost, inet) of
+ serverhost = ServerHost,
+ name = Name,
+ port = Port,
+ ip = IP,
+ stream_addr = StreamAddr,
+ acl = ACL}.
+
+get_my_ip() ->
+ {ok, MyHostName} = inet:gethostname(),
+ case inet:getaddr(MyHostName, inet) of
{ok, Addr} -> Addr;
- {error, _} ->
- case inet:getaddr(ServerHost, inet) of
- {ok, Addr} -> Addr;
- {error, _} -> {127,0,0,1}
- end
+ {error, _} -> {127,0,0,1}
end.