Trouble with getbyhostname() - Networking

This is a discussion on Trouble with getbyhostname() - Networking ; Hi, I am having trouble with getbyhostname().I works sometimes but on other occasions it crashes. IPADDRESS is a string say "192.123.12.1" (gdb) Client::SendSocket (this=0xbfa9493c, QuerBuf=@0xbfa948c4, IPADDRESS=@0xbfa948d4) at Client.cc:141 141 h = gethostbyname(IPADDRESS.c_str()); (gdb) *** glibc detected *** /home/workspace/DNSResolver1/checkstring: free(): invalid ...

+ Reply to Thread
Results 1 to 6 of 6

Thread: Trouble with getbyhostname()

  1. Trouble with getbyhostname()

    Hi,
    I am having trouble with getbyhostname().I works sometimes but on
    other occasions it crashes.
    IPADDRESS is a string say "192.123.12.1"

    (gdb)
    Client::SendSocket (this=0xbfa9493c, QuerBuf=@0xbfa948c4,
    IPADDRESS=@0xbfa948d4) at Client.cc:141
    141 h = gethostbyname(IPADDRESS.c_str());
    (gdb)
    *** glibc detected *** /home/workspace/DNSResolver1/checkstring:
    free(): invalid next size (normal): 0x0804eb38 ***
    ======= Backtrace: =========
    /lib/tls/i686/cmov/libc.so.6[0xb7db1d65]
    /lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7db5800]
    /lib/tls/i686/cmov/libc.so.6(fclose+0x134)[0xb7da06f4]
    /lib/tls/i686/cmov/libc.so.6[0xb7e2a73d]
    /lib/tls/i686/cmov/libc.so.6(__res_ninit+0x25)[0xb7e2ae65]
    /lib/tls/i686/cmov/libc.so.6(__res_maybe_init+0x7b)[0xb7e2c30b]
    /lib/tls/i686/cmov/libc.so.6(__nss_hostname_digits_dots+0x2d)
    [0xb7e2dcdd]
    /lib/tls/i686/cmov/libc.so.6(gethostbyname+0x9a)[0xb7e3227a]

  2. Re: Trouble with getbyhostname()

    sam.barker0@gmail.com wrote:
    > Hi,
    > I am having trouble with getbyhostname().I works sometimes but on
    > other occasions it crashes.
    > IPADDRESS is a string say "192.123.12.1"


    Well, gethostbyname really does work, honest. So you will have to send
    us a snippet of your code if you want advice on what is wrong with it.

    Robert

    >
    > (gdb)
    > Client::SendSocket (this=0xbfa9493c, QuerBuf=@0xbfa948c4,
    > IPADDRESS=@0xbfa948d4) at Client.cc:141
    > 141 h = gethostbyname(IPADDRESS.c_str());
    > (gdb)
    > *** glibc detected *** /home/workspace/DNSResolver1/checkstring:
    > free(): invalid next size (normal): 0x0804eb38 ***
    > ======= Backtrace: =========
    > /lib/tls/i686/cmov/libc.so.6[0xb7db1d65]
    > /lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7db5800]
    > /lib/tls/i686/cmov/libc.so.6(fclose+0x134)[0xb7da06f4]
    > /lib/tls/i686/cmov/libc.so.6[0xb7e2a73d]
    > /lib/tls/i686/cmov/libc.so.6(__res_ninit+0x25)[0xb7e2ae65]
    > /lib/tls/i686/cmov/libc.so.6(__res_maybe_init+0x7b)[0xb7e2c30b]
    > /lib/tls/i686/cmov/libc.so.6(__nss_hostname_digits_dots+0x2d)
    > [0xb7e2dcdd]
    > /lib/tls/i686/cmov/libc.so.6(gethostbyname+0x9a)[0xb7e3227a]


  3. Re: Trouble with getbyhostname()

    Uhm... not being a programmer, or anything, but isn't gethostbyname used
    for resolving names into adresses and not the other way around?

    sam.barker0@gmail.com wrote:
    > Hi,
    > I am having trouble with getbyhostname().I works sometimes but on
    > other occasions it crashes.
    > IPADDRESS is a string say "192.123.12.1"
    >
    > (gdb)
    > Client::SendSocket (this=0xbfa9493c, QuerBuf=@0xbfa948c4,
    > IPADDRESS=@0xbfa948d4) at Client.cc:141
    > 141 h = gethostbyname(IPADDRESS.c_str());
    > (gdb)
    > *** glibc detected *** /home/workspace/DNSResolver1/checkstring:
    > free(): invalid next size (normal): 0x0804eb38 ***
    > ======= Backtrace: =========
    > /lib/tls/i686/cmov/libc.so.6[0xb7db1d65]
    > /lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7db5800]
    > /lib/tls/i686/cmov/libc.so.6(fclose+0x134)[0xb7da06f4]
    > /lib/tls/i686/cmov/libc.so.6[0xb7e2a73d]
    > /lib/tls/i686/cmov/libc.so.6(__res_ninit+0x25)[0xb7e2ae65]
    > /lib/tls/i686/cmov/libc.so.6(__res_maybe_init+0x7b)[0xb7e2c30b]
    > /lib/tls/i686/cmov/libc.so.6(__nss_hostname_digits_dots+0x2d)
    > [0xb7e2dcdd]
    > /lib/tls/i686/cmov/libc.so.6(gethostbyname+0x9a)[0xb7e3227a]


  4. Re: Trouble with getbyhostname()

    Jurgen Haan wrote:
    > Uhm... not being a programmer, or anything, but isn't gethostbyname
    > used for resolving names into adresses and not the other way around?


    Yes, but for the last decade or so just about everyone's
    gethostbyname() is willing to take-in an IPv4 address as a
    dotted-decimal string.

    However, for the last, oh five years or so, people should be migrating
    to getaddrinfo() rather than gethostbyname()...

    rick jones
    --
    denial, anger, bargaining, depression, acceptance, rebirth...
    where do you want to be today?
    these opinions are mine, all mine; HP might not want them anyway...
    feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...

  5. Re: Trouble with getbyhostname()

    Rick Jones writes:

    >Jurgen Haan wrote:
    >> Uhm... not being a programmer, or anything, but isn't gethostbyname
    >> used for resolving names into adresses and not the other way around?


    >Yes, but for the last decade or so just about everyone's
    >gethostbyname() is willing to take-in an IPv4 address as a
    >dotted-decimal string.


    >However, for the last, oh five years or so, people should be migrating
    >to getaddrinfo() rather than gethostbyname()...


    Which unfortunately has ( or maybe had) a problem in that it would not use
    the local hosts file but went out to the dns server for everything.



    >rick jones
    >--
    >denial, anger, bargaining, depression, acceptance, rebirth...
    > where do you want to be today?
    >these opinions are mine, all mine; HP might not want them anyway...
    >feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...


  6. Re: Trouble with getbyhostname()

    Unruh wrote:
    > Rick Jones writes:
    > >However, for the last, oh five years or so, people should be
    > >migrating to getaddrinfo() rather than gethostbyname()...


    > Which unfortunately has ( or maybe had) a problem in that it would
    > not use the local hosts file but went out to the dns server for
    > everything.


    I would expect that is had rather than has as I've been using it
    without reported trouble (of that sort at least) in netperf for a few
    years now.

    rick jones
    --
    denial, anger, bargaining, depression, acceptance, rebirth...
    where do you want to be today?
    these opinions are mine, all mine; HP might not want them anyway...
    feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...

+ Reply to Thread