Routines for driving smbclient from DejaGnu.
authorTim Potter <tpot@samba.org>
Wed, 24 May 2000 05:51:52 +0000 (05:51 +0000)
committerTim Potter <tpot@samba.org>
Wed, 24 May 2000 05:51:52 +0000 (05:51 +0000)
(This used to be commit fa6a360abeb324d6b4383dbb1bb717fc270aff81)

testsuite/lib/smbclient.exp [new file with mode: 0644]

diff --git a/testsuite/lib/smbclient.exp b/testsuite/lib/smbclient.exp
new file mode 100644 (file)
index 0000000..e137ebd
--- /dev/null
@@ -0,0 +1,52 @@
+#
+# Utilities for driving smbclient
+#
+
+# Variables
+
+set smb_prompt "smb: \\\\>"
+
+# Spawn smbclient and wait for a prompt
+
+proc spawn_smbclient { args } {
+    set result 0
+    global smb_prompt
+    global spawn_id
+
+    # Spawn smbclient
+
+    spawn smbclient [lindex $args 0] [lindex $args 1] [lindex $args 2]
+
+    # Wait for prompt
+
+    expect {
+       $smb_prompt   { set result 1 }
+       timeout       { perror "timed out spawning smbclient" }
+       eof           { perror "end of file spawning smbclient" }
+    }
+
+    return $result
+}
+
+# Run a command and wait for a prompt
+
+proc do_smbclient { args } {
+    set action [lindex $args 0]
+    set description [lindex $args 1]
+    global smb_prompt
+
+    # Send command
+
+    verbose $action
+
+    send $action
+
+    expect {
+       $smb_prompt     { set output $expect_out(0,string) }
+       timeout         { perror "timed out $description"; return -1}
+       eof             { perror "end of file description"; return -1 }
+    }
+
+    verbose $output
+    return $output
+}