diff options
author | Raimo Niskanen <[email protected]> | 2013-05-27 16:41:59 +0200 |
---|---|---|
committer | Raimo Niskanen <[email protected]> | 2013-06-07 09:57:35 +0200 |
commit | 8152505ea3793037984a7f3349ac95cc20c4e44c (patch) | |
tree | 39686660302ac3ad3e599ff48efe6fa3d11da199 /lib/kernel/src/inet_hosts.erl | |
parent | 58de241d5d8e4b0536389b317ecc6e7a2a570997 (diff) | |
download | otp-8152505ea3793037984a7f3349ac95cc20c4e44c.tar.gz otp-8152505ea3793037984a7f3349ac95cc20c4e44c.tar.bz2 otp-8152505ea3793037984a7f3349ac95cc20c4e44c.zip |
Improve case (in)sensitivity for host lookups
Diffstat (limited to 'lib/kernel/src/inet_hosts.erl')
-rw-r--r-- | lib/kernel/src/inet_hosts.erl | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/kernel/src/inet_hosts.erl b/lib/kernel/src/inet_hosts.erl index df1d4fc0be..6e9719b4aa 100644 --- a/lib/kernel/src/inet_hosts.erl +++ b/lib/kernel/src/inet_hosts.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 1997-2009. All Rights Reserved. +%% Copyright Ericsson AB 1997-2013. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -38,9 +38,12 @@ gethostbyname(_) -> {error, formerr}. gethostbyname(Name, Type) when is_list(Name), is_atom(Type) -> - case gethostbyname(Name, Type, inet_hosts_byname, inet_hosts_byaddr) of + %% Byname has lowercased names while Byaddr keep the name casing. + %% This is to be able to reconstruct the original /etc/hosts entry. + N = inet_db:tolower(Name), + case gethostbyname(N, Type, inet_hosts_byname, inet_hosts_byaddr) of false -> - case gethostbyname(Name, Type, + case gethostbyname(N, Type, inet_hosts_file_byname, inet_hosts_file_byaddr) of false -> {error,nxdomain}; |