summaryrefslogtreecommitdiff
path: root/usr/src/test/smbclient-tests/tests/smbutil/tp_smbutil_002.ksh
blob: 850e7adc09fb7713b0eff7e3f70f950f03762688 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/bin/ksh -p
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#

#
# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
#

#
# ID: smbutil_002
#
# DESCRIPTION:
#        Verify smbutil lookup can resolve NETBIOS name.
#
# STRATEGY:
#        1. run "smbutil lookup" on  he smb NETBIOS name
#        2. smbutil can resolve the smb NETBIOS name
#

. $STF_SUITE/include/libtest.ksh

tc_id="smbutil002"
tc_desc="Test smbutil status, smbutil lookup"
print_test_case $tc_id - $tc_desc

if [[ $STC_CIFS_CLIENT_DEBUG == 1 ]] || \
	[[ *:${STC_CIFS_CLIENT_DEBUG}:* == *:$tc_id:* ]]; then
    set -x
fi

server=$(server_name) || return

# Try "status" first, which basically tells us if the
# server supports NetBIOS.  If not, UNSUPPORTED.
cmd="smbutil status $server"
cti_execute_cmd $cmd
if [[ $? != 0 ]]; then
	cti_unsupported "SKIP: $cmd"
	return
else
	cti_report "PASS: $cmd"
fi

# Get the server name from the status output.
grep '^Server' cti_stdout | read junk nbname
if [[ "x$nbname" == x ]] ; then
	cti_unsupported "SKIP: Can't get NetBIOS name."
	return
else
	cti_report "Server NetBIOS name: $nbname"
fi

# Now try lookup of the NetBIOS name.
cmd="smbutil lookup $nbname"
cti_execute_cmd $cmd
if [[ $? != 0 ]]; then
	cti_fail "FAIL: $cmd"
	return
else
	cti_report "PASS: $cmd"
fi

cti_pass "${tc_id}: PASS"