~rdoering/ubuntu/intrepid/erlang/fix-535090

« back to all changes in this revision

Viewing changes to lib/kernel/src/inet_res.erl

  • Committer: Bazaar Package Importer
  • Author(s): Soren Hansen
  • Date: 2007-05-01 16:57:10 UTC
  • mfrom: (1.1.9 upstream)
  • Revision ID: james.westby@ubuntu.com-20070501165710-2sapk0hp2gf3o0ip
Tags: 1:11.b.4-2ubuntu1
* Merge with Debian Unstable. Remaining changes:
  - Add -fno-stack-protector to fix broken crypto_drv.
* DebianMaintainerField update.

Show diffs side-by-side

added added

removed removed

Lines of Context:
92
92
nslookup1(Name, Class, Type, Ns, Timer) ->
93
93
    case nsdname(Name) of
94
94
        {ok, Nm} ->
95
 
            case res_mkquery(Nm, Class, Type) of
96
 
                {ok, Id, Buffer} ->
97
 
                    res_send2(Id, Buffer, Ns, Timer);
98
 
                Error -> Error
99
 
            end;
 
95
            {ok, Id, Buffer} = res_mkquery(Nm, Class, Type),
 
96
            res_send2(Id, Buffer, Ns, Timer);
100
97
        Error -> Error
101
98
    end.
102
99
 
150
147
%%  2. the list of alternaive name servers
151
148
%%
152
149
res_gethostbyaddr(Addr, IP, Timer) ->
153
 
    case res_mkquery(Addr, in, ptr) of
154
 
        {ok, Id, Buffer} ->
155
 
            case res_send2(Id, Buffer, res_option(nameserver),Timer) of
156
 
                {ok, Rec} ->
157
 
                    if length(Rec#dns_rec.anlist) == 0 ->
158
 
                            alt_gethostbyaddr(Id, Buffer, IP, 
159
 
                                              {error, nxdomain}, Timer);
160
 
                       true ->
161
 
                            inet_db:res_gethostbyaddr(IP, Rec)
162
 
                    end;
163
 
                {error, nxdomain} ->
 
150
    {ok, Id, Buffer} = res_mkquery(Addr, in, ptr),
 
151
    case res_send2(Id, Buffer, res_option(nameserver),Timer) of
 
152
        {ok, Rec} ->
 
153
            if length(Rec#dns_rec.anlist) == 0 ->
164
154
                    alt_gethostbyaddr(Id, Buffer, IP, 
165
155
                                      {error, nxdomain}, Timer);
166
 
                Error -> Error
 
156
               true ->
 
157
                    inet_db:res_gethostbyaddr(IP, Rec)
167
158
            end;
 
159
        {error, nxdomain} ->
 
160
            alt_gethostbyaddr(Id, Buffer, IP, 
 
161
                              {error, nxdomain}, Timer);
168
162
        Error -> Error
169
163
    end.
170
164
 
335
329
    end.
336
330
 
337
331
res_getby_query(Name, Ns, Type, Timer) ->
338
 
    case res_mkquery(Name, in, Type) of
339
 
        {ok, Id, Buffer} ->
340
 
            case res_send2(Id, Buffer, Ns,Timer) of
341
 
                {ok, Rec} ->
342
 
                    inet_db:res_hostent_by_domain(Name, Type, Rec);
343
 
                Error -> Error
344
 
            end;
 
332
    {ok, Id, Buffer} = res_mkquery(Name, in, Type),
 
333
    case res_send2(Id, Buffer, Ns,Timer) of
 
334
        {ok, Rec} ->
 
335
            inet_db:res_hostent_by_domain(Name, Type, Rec);
345
336
        Error -> Error
346
337
    end.
347
338
 
356
347
                                           type = Type, 
357
348
                                           class = Class } ] },
358
349
    ?dbg("Query: ~p~n", [Rec]),
359
 
    case inet_dns:encode(Rec) of
360
 
        {ok, Buffer} -> {ok, ID, Buffer};
361
 
        Error -> Error
362
 
    end.
 
350
    {ok, Buffer} = inet_dns:encode(Rec),
 
351
    {ok, ID, Buffer}.
363
352
 
364
353
%%
365
354
%% Send a query to the nameserver and return a reply