diff options
author | Björn-Egil Dahlberg <[email protected]> | 2010-10-14 14:31:15 +0200 |
---|---|---|
committer | Björn-Egil Dahlberg <[email protected]> | 2010-10-14 14:31:34 +0200 |
commit | b9e554258331b66af6f95e5230a4b385fa3fe754 (patch) | |
tree | 32db8b7b361a4ebf0861f3fc20061a0725059bb0 /lib/erl_interface/src | |
parent | 8ed11916bfc58366ea36bd6f1f477395d08bc0e9 (diff) | |
parent | d9edfa887c75426b3d0cc17710bce47523adf243 (diff) | |
download | otp-b9e554258331b66af6f95e5230a4b385fa3fe754.tar.gz otp-b9e554258331b66af6f95e5230a4b385fa3fe754.tar.bz2 otp-b9e554258331b66af6f95e5230a4b385fa3fe754.zip |
Merge branch 'ms/fix-erl_call' into dev
* ms/fix-erl_call:
erl_call: remove get_hostent
OTP-8890
Diffstat (limited to 'lib/erl_interface/src')
-rw-r--r-- | lib/erl_interface/src/prog/erl_call.c | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/lib/erl_interface/src/prog/erl_call.c b/lib/erl_interface/src/prog/erl_call.c index 448de9aa23..33ff6da7c9 100644 --- a/lib/erl_interface/src/prog/erl_call.c +++ b/lib/erl_interface/src/prog/erl_call.c @@ -118,7 +118,6 @@ static void usage_arg(const char *progname, const char *switchname); static void usage_error(const char *progname, const char *switchname); static void usage(const char *progname); static int get_module(char **mbuf, char **mname); -static struct hostent* get_hostent(char *host); static int do_connect(ei_cnode *ec, char *nodename, struct call_flags *flags); static int read_stdin(char **buf); static void split_apply_string(char *str, char **mod, @@ -367,8 +366,8 @@ int erl_call(int argc, char **argv) * Expand name to a real name (may be ip-address) */ /* FIXME better error string */ - if ((hp = get_hostent(host)) == 0) { - fprintf(stderr,"erl_call: can't get_hostent(%s)\n", host); + if ((hp = ei_gethostbyname(host)) == 0) { + fprintf(stderr,"erl_call: can't ei_gethostbyname(%s)\n", host); exit(1); } /* If shortnames, cut off the name at first '.' */ @@ -604,32 +603,6 @@ int erl_call(int argc, char **argv) * ***************************************************************************/ -/* - * Get host entry (by address or name) - */ -/* FIXME: will fail on names like '2fun4you'. */ -static struct hostent* get_hostent(char *host) -{ - if (isdigit((int)*host)) { - struct in_addr ip_addr; - int b1, b2, b3, b4; - long addr; - - /* FIXME: Use inet_aton() (or inet_pton() and get v6 for free). */ - if (sscanf(host, "%d.%d.%d.%d", &b1, &b2, &b3, &b4) != 4) { - return NULL; - } - addr = inet_addr(host); - ip_addr.s_addr = htonl(addr); - - return ei_gethostbyaddr((char *)&ip_addr,sizeof(struct in_addr), AF_INET); - } - - return ei_gethostbyname(host); -} /* get_hostent */ - - - /* * This function does only return on success. |