2 Unix SMB/CIFS implementation.
3 Test suite for libnet calls.
5 Copyright (C) Rafal Szczesniak 2005
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
23 #include "lib/cmdline/popt_common.h"
24 #include "libnet/libnet.h"
25 #include "libnet/composite.h"
26 #include "libcli/composite/monitor.h"
27 #include "librpc/gen_ndr/ndr_nbt.h"
30 BOOL torture_lookup(void)
35 struct libnet_context *ctx;
36 struct libnet_Lookup lookup;
39 mem_ctx = talloc_init("test_lookup");
41 ctx = libnet_context_init(NULL);
42 ctx->cred = cmdline_credentials;
44 address = talloc_array(ctx, const char, 16);
46 lookup.in.hostname = lp_netbios_name();
47 lookup.in.methods = lp_name_resolve_order();
48 lookup.in.type = NBT_NAME_CLIENT;
49 lookup.out.address = &address;
51 status = libnet_Lookup(ctx, mem_ctx, &lookup);
53 if (!NT_STATUS_IS_OK(status)) {
54 printf("Couldn't lookup name %s: %s\n", lookup.in.hostname, nt_errstr(status));
67 BOOL torture_lookup_host(void)
72 struct libnet_context *ctx;
73 struct libnet_Lookup lookup;
76 mem_ctx = talloc_init("test_lookup_host");
78 ctx = libnet_context_init(NULL);
79 ctx->cred = cmdline_credentials;
81 address = talloc_array(mem_ctx, const char, 16);
83 lookup.in.hostname = lp_netbios_name();
84 lookup.in.methods = lp_name_resolve_order();
85 lookup.out.address = &address;
87 status = libnet_LookupHost(ctx, mem_ctx, &lookup);
89 if (!NT_STATUS_IS_OK(status)) {
90 printf("Couldn't lookup host %s: %s\n", lookup.in.hostname, nt_errstr(status));
103 BOOL torture_lookup_pdc(void)
108 struct libnet_context *ctx;
109 struct libnet_Lookup lookup;
112 mem_ctx = talloc_init("test_lookup_pdc");
114 ctx = libnet_context_init(NULL);
115 ctx->cred = cmdline_credentials;
117 address = talloc_array(mem_ctx, const char, 16);
119 lookup.in.hostname = lp_workgroup();
120 lookup.in.methods = lp_name_resolve_order();
121 lookup.out.address = &address;
123 status = libnet_LookupPdc(ctx, mem_ctx, &lookup);
125 if (!NT_STATUS_IS_OK(status)) {
126 printf("Couldn't lookup pdc %s: %s\n", lookup.in.hostname, nt_errstr(status));
134 talloc_free(mem_ctx);