* gnu/packages/messaging.scm (ngircd): New variable. * gnu/packages/patches/ngircd-no-dns-in-tests.patch: New file. * gnu/packages/patches/ngircd-handle-zombies.patch: New file. * gnu-system.am (dist_patch_DATA): Add them.
		
			
				
	
	
		
			368 lines
		
	
	
	
		
			9.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			368 lines
		
	
	
	
		
			9.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From 3f807e104572b38143a1015be57d875088ceaebb Mon Sep 17 00:00:00 2001
 | |
| From: Alexander Barton <alex@barton.de>
 | |
| Date: Thu, 17 Apr 2014 23:57:38 +0200
 | |
| Subject: [PATCH] Test suite: Don't use DNS lookups
 | |
| 
 | |
| Different operating systems do behave quite differently when doing DNS
 | |
| lookups, for example "127.0.0.1" sometimes resolves to "localhost" and
 | |
| sometimes to "localhost.localdomain" (for example OpenBSD). And other
 | |
| systems resolve "localhost" to the real host name (for example Cygwin).
 | |
| 
 | |
| So not using DNS at all makes the test site much more portable.
 | |
| ---
 | |
|  src/testsuite/channel-test.e        |  2 +-
 | |
|  src/testsuite/check-idle.e          |  2 +-
 | |
|  src/testsuite/connect-test.e        |  2 +-
 | |
|  src/testsuite/invite-test.e         |  2 +-
 | |
|  src/testsuite/join-test.e           |  2 +-
 | |
|  src/testsuite/kick-test.e           |  2 +-
 | |
|  src/testsuite/message-test.e        | 31 ++++++++++++-------------------
 | |
|  src/testsuite/misc-test.e           |  8 ++++----
 | |
|  src/testsuite/mode-test.e           |  2 +-
 | |
|  src/testsuite/ngircd-test1.conf     |  1 +
 | |
|  src/testsuite/ngircd-test2.conf     |  1 +
 | |
|  src/testsuite/opless-channel-test.e |  2 +-
 | |
|  src/testsuite/server-link-test.e    |  2 +-
 | |
|  src/testsuite/stress-A.e            |  2 +-
 | |
|  src/testsuite/who-test.e            |  6 +++---
 | |
|  src/testsuite/whois-test.e          | 14 +++++++-------
 | |
|  16 files changed, 38 insertions(+), 43 deletions(-)
 | |
| 
 | |
| diff --git a/src/testsuite/channel-test.e b/src/testsuite/channel-test.e
 | |
| index dd7eb66..39ad16a 100644
 | |
| --- a/src/testsuite/channel-test.e
 | |
| +++ b/src/testsuite/channel-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # Channel test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/check-idle.e b/src/testsuite/check-idle.e
 | |
| index 41b8eb4..ad112b2 100644
 | |
| --- a/src/testsuite/check-idle.e
 | |
| +++ b/src/testsuite/check-idle.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # Idle test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/connect-test.e b/src/testsuite/connect-test.e
 | |
| index 662f5f7..b51be0d 100644
 | |
| --- a/src/testsuite/connect-test.e
 | |
| +++ b/src/testsuite/connect-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # Server connect test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/invite-test.e b/src/testsuite/invite-test.e
 | |
| index 3716d19..5179d8a 100644
 | |
| --- a/src/testsuite/invite-test.e
 | |
| +++ b/src/testsuite/invite-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # INVITE test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/join-test.e b/src/testsuite/join-test.e
 | |
| index 28b4c54..c088f5c 100644
 | |
| --- a/src/testsuite/join-test.e
 | |
| +++ b/src/testsuite/join-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # JOIN test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|         timeout { exit 1 }
 | |
|         "Connected"
 | |
| diff --git a/src/testsuite/kick-test.e b/src/testsuite/kick-test.e
 | |
| index 3d3c1ee..89da611 100644
 | |
| --- a/src/testsuite/kick-test.e
 | |
| +++ b/src/testsuite/kick-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # KICK test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|         timeout { exit 1 }
 | |
|         "Connected"
 | |
| diff --git a/src/testsuite/message-test.e b/src/testsuite/message-test.e
 | |
| index 0e70640..5dc325d 100644
 | |
| --- a/src/testsuite/message-test.e
 | |
| +++ b/src/testsuite/message-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # PRIVMSG and NOTICE test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| @@ -72,24 +72,17 @@ expect {
 | |
|  	"MODE nick :-b"
 | |
|  }
 | |
|  
 | |
| -# The following two tests using "localhost" as host name
 | |
| -# had to be disabled, because there are operating systems
 | |
| -# out there, that use "localhost.<domain>" as host name
 | |
| -# for 127.0.0.1 instead of just "localhost".
 | |
| -# (for example OpenBSD 4, OpenSolaris, ...)
 | |
| -#
 | |
| -#send "privmsg ~user\%localhost :test\r"
 | |
| -#expect {
 | |
| -#	timeout { exit 1 }
 | |
| -#	"@* PRIVMSG nick :test"
 | |
| -#}
 | |
| -#
 | |
| -#send "privmsg Nick!~User@LocalHost :test\r"
 | |
| -#expect {
 | |
| -#	timeout { exit 1 }
 | |
| -#	"@* PRIVMSG nick :test"
 | |
| -#	"401"
 | |
| -#}
 | |
| +send "privmsg ~user\%127.0.0.1 :test\r"
 | |
| +expect {
 | |
| +	timeout { exit 1 }
 | |
| +	"@* PRIVMSG nick :test"
 | |
| +}
 | |
| +
 | |
| +send "privmsg Nick!~User@127.0.0.1 :test\r"
 | |
| +expect {
 | |
| +	timeout { exit 1 }
 | |
| +	"@* PRIVMSG nick :test"
 | |
| +}
 | |
|  
 | |
|  send "away :away\r"
 | |
|  expect {
 | |
| diff --git a/src/testsuite/misc-test.e b/src/testsuite/misc-test.e
 | |
| index a83bc5b..f69e7c3 100644
 | |
| --- a/src/testsuite/misc-test.e
 | |
| +++ b/src/testsuite/misc-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # Misc test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| @@ -130,7 +130,7 @@ expect {
 | |
|  send "userhost nick\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	-re ":ngircd.test.server 302 nick :?nick=+.*@(localhos.*|127.0.0.1)"
 | |
| +	-re ":ngircd.test.server 302 nick :?nick=+.*@127.0.0.1"
 | |
|  }
 | |
|  
 | |
|  send "userhost doesnotexist\r"
 | |
| @@ -142,7 +142,7 @@ expect {
 | |
|  send "userhost nick doesnotexist nick doesnotexist\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	-re ":ngircd.test.server 302 nick :nick=+.*@(localhos.*|127.0.0.1) nick=+.*@(localhos.*|127.0.0.1)"
 | |
| +	-re ":ngircd.test.server 302 nick :nick=+.*@127.0.0.1 nick=+.*@127.0.0.1"
 | |
|  }
 | |
|  
 | |
|  send "away :testing\r"
 | |
| @@ -154,7 +154,7 @@ expect {
 | |
|  send "userhost nick nick nick nick nick nick\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	-re ":ngircd.test.server 302 nick :nick=-.*@(localhos.*|127.0.0.1) nick=-.*@(localhos.*|127.0.0.1) nick=-.*@(localhos.*|127.0.0.1) nick=-.*@(localhos.*|127.0.0.1) nick=-.*@(localhos.*|127.0.0.1)\r"
 | |
| +	-re ":ngircd.test.server 302 nick :nick=-.*@127.0.0.1 nick=-.*@127.0.0.1 nick=-.*@127.0.0.1 nick=-.*@127.0.0.1 nick=-.*@127.0.0.1\r"
 | |
|  }
 | |
|  
 | |
|  send "quit\r"
 | |
| diff --git a/src/testsuite/mode-test.e b/src/testsuite/mode-test.e
 | |
| index d6726a4..86e4f2d 100644
 | |
| --- a/src/testsuite/mode-test.e
 | |
| +++ b/src/testsuite/mode-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # MODE test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/ngircd-test1.conf b/src/testsuite/ngircd-test1.conf
 | |
| index 0d0cccc..4dec533 100644
 | |
| --- a/src/testsuite/ngircd-test1.conf
 | |
| +++ b/src/testsuite/ngircd-test1.conf
 | |
| @@ -17,6 +17,7 @@
 | |
|  	OperCanUseMode = yes
 | |
|  	Ident = no
 | |
|  	IncludeDir = /var/empty
 | |
| +	DNS = no
 | |
|  	PAM = no
 | |
|  
 | |
|  [Operator]
 | |
| diff --git a/src/testsuite/ngircd-test2.conf b/src/testsuite/ngircd-test2.conf
 | |
| index c9d7f6c..0d24c4a 100644
 | |
| --- a/src/testsuite/ngircd-test2.conf
 | |
| +++ b/src/testsuite/ngircd-test2.conf
 | |
| @@ -17,6 +17,7 @@
 | |
|  	OperCanUseMode = yes
 | |
|  	Ident = no
 | |
|  	IncludeDir = /var/empty
 | |
| +	DNS = no
 | |
|  	PAM = no
 | |
|  
 | |
|  [Operator]
 | |
| diff --git a/src/testsuite/opless-channel-test.e b/src/testsuite/opless-channel-test.e
 | |
| index 7d94172..4611fe1 100644
 | |
| --- a/src/testsuite/opless-channel-test.e
 | |
| +++ b/src/testsuite/opless-channel-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # Op-less channel test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|         timeout { exit 1 }
 | |
|         "Connected"
 | |
| diff --git a/src/testsuite/server-link-test.e b/src/testsuite/server-link-test.e
 | |
| index cf3fae8..910f8c8 100644
 | |
| --- a/src/testsuite/server-link-test.e
 | |
| +++ b/src/testsuite/server-link-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # server-server link test
 | |
|  
 | |
| -spawn telnet localhost 6790
 | |
| +spawn telnet 127.0.0.1 6790
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/stress-A.e b/src/testsuite/stress-A.e
 | |
| index 256d5d1..d51adaa 100644
 | |
| --- a/src/testsuite/stress-A.e
 | |
| +++ b/src/testsuite/stress-A.e
 | |
| @@ -3,7 +3,7 @@
 | |
|  
 | |
|  set timeout 30
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| diff --git a/src/testsuite/who-test.e b/src/testsuite/who-test.e
 | |
| index a41e6b6..39d50ed 100644
 | |
| --- a/src/testsuite/who-test.e
 | |
| +++ b/src/testsuite/who-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # WHO test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| @@ -62,7 +62,7 @@ expect {
 | |
|  	":ngircd.test.server 352 nick #channel * * ngircd.test.server nick G@ :0 Real Name"
 | |
|  }
 | |
|  
 | |
| -send "who localhos*\r"
 | |
| +send "who 127.0.0.*\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	":ngircd.test.server 352 nick \* * * ngircd.test.server nick G :0 Real Name"
 | |
| @@ -120,7 +120,7 @@ expect {
 | |
|  	"305 nick"
 | |
|  }
 | |
|  
 | |
| -send "who ??cal*ho*\r"
 | |
| +send "who ??7.*0*\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	":ngircd.test.server 352 nick \* * * ngircd.test.server nick H* :0 Real Name"
 | |
| diff --git a/src/testsuite/whois-test.e b/src/testsuite/whois-test.e
 | |
| index 16b1184..44eee66 100644
 | |
| --- a/src/testsuite/whois-test.e
 | |
| +++ b/src/testsuite/whois-test.e
 | |
| @@ -1,7 +1,7 @@
 | |
|  # ngIRCd test suite
 | |
|  # WHOIS test
 | |
|  
 | |
| -spawn telnet localhost 6789
 | |
| +spawn telnet 127.0.0.1 6789
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
|  	"Connected"
 | |
| @@ -17,7 +17,7 @@ expect {
 | |
|  send "whois nick\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	"311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	"311 nick nick ~user 127.0.0.1 \* :Real Name\r"
 | |
|  }
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| @@ -27,25 +27,25 @@ expect {
 | |
|  send "whois *\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	"311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	"311 nick nick ~user 127.0.0.1* \* :Real Name\r"
 | |
|  }
 | |
|  
 | |
|  send "whois n*\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	"311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	"311 nick nick ~user 127.0.0.1* \* :Real Name\r"
 | |
|  }
 | |
|  
 | |
|  send "whois ?ick\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	"311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	"311 nick nick ~user 127.0.0.1* \* :Real Name\r"
 | |
|  }
 | |
|  
 | |
|  send "whois ????,n?*k\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	"311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	"311 nick nick ~user 127.0.0.1* \* :Real Name\r"
 | |
|  }
 | |
|  
 | |
|  send "whois unknown\r"
 | |
| @@ -61,7 +61,7 @@ expect {
 | |
|  send "whois ngircd.test.server2 nick\r"
 | |
|  expect {
 | |
|  	timeout { exit 1 }
 | |
| -	":ngircd.test.server2 311 nick nick ~user localhost* \* :Real Name\r"
 | |
| +	":ngircd.test.server2 311 nick nick ~user 127.0.0.1* \* :Real Name\r"
 | |
|  }
 | |
|  
 | |
|  send "whois nosuchserver unknown\r"
 | |
| -- 
 | |
| 1.9.1
 | |
| 
 |