diff --git a/src/server/testsuite/config/unix.exp b/src/server/testsuite/config/unix.exp
index afef8f4b575491a3b567d82687681d3ee81198f7..cb39783870b93b886676bec7d189342751d856b4 100644
--- a/src/server/testsuite/config/unix.exp
+++ b/src/server/testsuite/config/unix.exp
@@ -123,6 +123,28 @@ proc simple_expect {regex {testname ""} {is_meta ""}} {
     unset test
 }
 
+proc extracting_expect {regex var grp} {
+    global test
+    global any
+    global nl
+    global line_leader
+    global $var
+
+    set test "looking for $regex"
+
+    expect {
+	-re "^$line_leader$regex$nl" {
+	    set $var $expect_out($grp,string)
+	    pass "$test"
+	}
+	timeout 	 {fail "$test (timeout)"}
+	eof 		 {fail "$test (eof)"; wait}
+	buffer_full 	{fail "$test (buffer_full)"}
+    }
+    unset test
+}
+
+
 proc unanchored_expect {regex testname} {
     global test
     global any