Index: /server/common/oursrc/accountadm/admof.in
===================================================================
--- /server/common/oursrc/accountadm/admof.in	(revision 321)
+++ /server/common/oursrc/accountadm/admof.in	(revision 322)
@@ -28,5 +28,11 @@
 }
 my $curuser;
-unless(($curuser) = ($ARGV[1] =~ /^([\w._-]+)\@ATHENA\.MIT\.EDU$/)) {
+unless(($curuser) = ($ARGV[1] =~ /^([\w._\/-]+)\@ATHENA\.MIT\.EDU$/)) {
+  error("An internal error has occurred.\nContact scripts\@mit.edu for assistance.");
+}
+
+($curuser) =~ s|/|.|; # Replace first instance of a / only; pts membership prints foo/root as foo.root
+
+if (($curuser) =~ m|/|) { # There were two /'s in their name. What?
   error("An internal error has occurred.\nContact scripts\@mit.edu for assistance.");
 }
