Index: server/common/oursrc/whoisd/whoisd.tac
===================================================================
--- server/common/oursrc/whoisd/whoisd.tac	(revision 770)
+++ server/common/oursrc/whoisd/whoisd.tac	(revision 771)
@@ -7,9 +7,14 @@
 class WhoisProtocol(basic.LineReceiver):
     def lineReceived(self, hostname):
-        self.factory.getWhois(hostname
-        ).addErrback(lambda _: "Internal error in server"
-        ).addCallback(lambda m:
-                      (self.transport.write(m+"\r\n"),
-                       self.transport.loseConnection()))
+    	(key, hostname) = hostname.split('=',2)
+	if key != '0xvVk043ZT61jR1bAlX0JSzM':
+            self.transport.write("Unauthorized to use whois"+"\r\n")
+	    self.transport.loseConnection()
+	else:
+            self.factory.getWhois(hostname
+            ).addErrback(lambda _: "Internal error in server"
+            ).addCallback(lambda m:
+                          (self.transport.write(m+"\r\n"),
+                           self.transport.loseConnection()))
 class WhoisFactory(protocol.ServerFactory):
     protocol = WhoisProtocol
@@ -69,5 +74,5 @@
             user = pwd.getpwuid(int(attrs['apacheSuexecUid']))
             if user:
-                attrs['locker'] = user.pw_namep
+                attrs['locker'] = user.pw_name
             else:
                 attrs['locker'] = None
