X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=test%2Finvoke;h=592053243caa036d7110f62f1b7f7522a538ae47;hb=79e42ff448cbf9edbda676a2b33c39b57e2106e7;hp=2f8835e7742c9119adebf63fdc80c30dabb44f2f;hpb=149cf6646086d141aae1aec0b20c112ba7eea2c5;p=secnet.git diff --git a/test/invoke b/test/invoke index 2f8835e..5920532 100755 --- a/test/invoke +++ b/test/invoke @@ -45,6 +45,7 @@ exec <$pipefp.t exec 3<&- exec cat " + close $fakeuh set cfg " netlink userv-ipif { name \"netlink\"; @@ -90,6 +91,7 @@ exec cat } proc spawn-secnet {which} { + global netlinkfh upvar #0 pids($which) pid set cf test/$which.conf set ch [open $cf w] @@ -100,7 +102,26 @@ proc spawn-secnet {which} { if {!$pid} { execl ./secnet $argl } + puts -nonewline $netlinkfh($which.t) "\xc0" +} + +proc netlink-readable {which} { + global ok + upvar #0 netlinkfh($which.r) fh + read $fh; # empty the buffer + switch -exact $which { + outside { + puts OK + set ok 1; # what a bodge + return + } + inside { + error "inside rx'd!" + } + } } spawn-secnet inside spawn-secnet outside + +vwait ok