man
diff --git a/man/man1/9p.1 b/man/man1/9p.1
index 12fc5f0..c7000fb 100644
--- a/man/man1/9p.1
+++ b/man/man1/9p.1
@@ -44,6 +44,10 @@
 ]
 .B stat
 .I path
+.PP
+.B 9p
+.B rdwr
+.I path
 .SH DESCRIPTION
 .I 9p
 is a trivial 9P client that can access a single file on a 9P server.
@@ -85,6 +89,18 @@
 on 
 .I path
 and print the result
+.TP
+.B rdwr
+Open
+.I path
+for reading and writing.
+Then repeat until end-of-file on standard input:
+copy a line from the file to standard output,
+copy a line from standard input to the file.
+Print errors, but don't give up.
+.B Rdwr
+is useful for interacting with servers like
+.IR factotum (4).
 .PD
 .PP
 .I 9p
diff --git a/man/man1/INDEX b/man/man1/INDEX
index 489bb07..366206d 100644
--- a/man/man1/INDEX
+++ b/man/man1/INDEX
@@ -114,12 +114,16 @@
 ndbmkhash ndb.1
 ndbmkhosts ndb.1
 ndbquery ndb.1
-netkey netkey.1
 news news.1
 p p.1
 img page.1
 page page.1
 psv page.1
+netkey passwd.1
+passwd passwd.1
+pem pem.1
+pemdecode pem.1
+pemencode pem.1
 pic pic.1
 tpic pic.1
 plot plot.1
@@ -144,8 +148,21 @@
 wait rc.1
 whatis rc.1
 ~ rc.1
+readcons readcons.1
 rio rio.1
 rm rm.1
+asn12dsa rsa.1
+asn12rsa rsa.1
+dsa2pub rsa.1
+dsa2ssh rsa.1
+dsagen rsa.1
+rsa rsa.1
+rsa2csr rsa.1
+rsa2pub rsa.1
+rsa2ssh rsa.1
+rsa2x509 rsa.1
+rsafill rsa.1
+rsagen rsa.1
 B sam.1
 E sam.1
 sam sam.1
@@ -154,6 +171,7 @@
 samterm sam.1
 scat scat.1
 aescbc secstore.1
+ipso secstore.1
 secstore secstore.1
 secstored secstored.1
 secuser secstored.1
@@ -165,6 +183,7 @@
 sprog spell.1
 split split.1
 src src.1
+ssh-agent ssh-agent.1
 auxstats stats.1
 stats stats.1
 strings strings.1
diff --git a/man/man1/netkey.1 b/man/man1/netkey.1
deleted file mode 100644
index 60f17bb..0000000
--- a/man/man1/netkey.1
+++ /dev/null
@@ -1,20 +0,0 @@
-.TH NETKEY 1
-.SH NAME
-netkey \- challenge-response authentication
-.SH SYNOPSIS
-.PP
-.B netkey
-.SH DESCRIPTION
-.PP
-.I Netkey
-prompts for a password to encrypt network challenges.
-It is a substitute for a SecureNet box.
-.SH SOURCE
-.B \*9/src/cmd/netkey.c
-.SH "SEE ALSO"
-.IR encrypt (3)
-.PP
-Robert Morris and Ken Thompson,
-``UNIX Password Security,''
-.I AT&T Bell Laboratories Technical Journal
-Vol 63 (1984), pp. 1649-1672
diff --git a/man/man1/pem.1 b/man/man1/pem.1
index 2002ae1..391cd5c 100644
--- a/man/man1/pem.1
+++ b/man/man1/pem.1
@@ -1,4 +1,4 @@
-.TH PEM 8
+.TH PEM 1
 .SH NAME
 pemdecode, pemencode \- encode files in Privacy Enhanced Mail (PEM) format
 .SH SYNOPSIS
@@ -20,7 +20,7 @@
 other applications, notably TLS.
 PEM encodes data in base 64
 (see
-.IR encode (2))
+.IR encode (3))
 between lines of the form:
 .IP
 .EX
@@ -33,7 +33,7 @@
 may be any string describing the encoded data.
 The most common use of PEM format on Plan 9 is for encoding
 X.509 certificates; see
-.IR rsa (8).
+.IR rsa (1).
 .PP
 .I Pemdecode
 extracts the named
diff --git a/man/man1/readcons.1 b/man/man1/readcons.1
new file mode 100644
index 0000000..8fa1c39
--- /dev/null
+++ b/man/man1/readcons.1
@@ -0,0 +1,30 @@
+.TH READCONS 1
+.SH NAME
+readcons \- prompt console for input
+.SH SYNOPSIS
+.B readcons 
+[
+.B -d
+.I default
+]
+[
+.B -s
+]
+.I prompt
+.SH DESCRIPTION
+.I Readcons
+prompts at the console for input, copying the typed string
+to standard output.
+If the
+.B -s
+flag is given, the input is not displayed (secret).
+If the user types an empty string (just a newline) and
+the
+.B -d
+option is given, then
+.I default
+is printed instead of an empty string.
+.SH SOURCE
+.B \*9/src/cmd/readcons.c
+.SH SEE ALSO
+.IR readcons (3)
diff --git a/man/man1/rsa.1 b/man/man1/rsa.1
index 42a2ae7..b01c979 100644
--- a/man/man1/rsa.1
+++ b/man/man1/rsa.1
@@ -1,4 +1,4 @@
-.TH RSA 8
+.TH RSA 1
 .SH NAME
 dsagen, rsagen, rsafill, asn12dsa, asn12rsa, dsa2pub, rsa2csr, rsa2pub, dsa2ssh, rsa2ssh, rsa2x509 \- generate and format dsa and rsa keys
 .SH SYNOPSIS
@@ -305,9 +305,9 @@
 and configure a remote Unix system to allow those keys for logins:
 .IP
 .EX
-rsagen -t 'service=ssh' >rsa1
-rsagen -t 'service=ssh-rsa' >rsa2
-dsagen -t 'service=ssh-dss' >dsa2
+rsagen -t 'service=ssh role=decrypt' >rsa1
+rsagen -t 'service=ssh-rsa role=sign' >rsa2
+dsagen -t 'service=ssh-dss role=sign' >dsa2
 .EE
 .PP
 Convert existing Unix SSH version 2 keys instead of generating new ones:
diff --git a/man/man1/secstore.1 b/man/man1/secstore.1
index ee35fb6..01c7903 100644
--- a/man/man1/secstore.1
+++ b/man/man1/secstore.1
@@ -188,7 +188,9 @@
 encrypts and decrypts using AES (Rijndael) in cipher
 block chaining (CBC) mode.
 .SH SOURCE
-.B \*9/src/cmd/secstore
+.B \*9/bin/ipso
+.br
+.B \*9/src/cmd/auth/secstore
 .SH SEE ALSO
 .IR factotum (4),
 .IR secstored (1)
diff --git a/man/man1/secstored.1 b/man/man1/secstored.1
index b43e1c4..3eee78b 100644
--- a/man/man1/secstored.1
+++ b/man/man1/secstored.1
@@ -59,6 +59,6 @@
 .B \*9/ndb/auth
 for mapping local userid to RADIUS userid
 .SH SOURCE
-.B \*9/src/cmd/secstore
+.B \*9/src/cmd/auth/secstore
 .SH SEE ALSO
 .IR secstore (1)