meillo@372: #!/usr/bin/awk -f meillo@372: # meillo@372: # improve the index meillo@372: meillo@402: meillo@372: BEGIN{ meillo@402: meillo@402: # special formating for entries meillo@402: e["mta"] = "Mail Transfer Agent (\\NAME{MTA})"; meillo@402: e["mua"] = "Mail User Agent (\\NAME{MUA})"; meillo@402: e["mda"] = "Mail Delivery Agent (\\NAME{MDA})"; meillo@402: e["smtp"] = "Simple Mail Transfer Protocol (\\NAME{SMTP})"; meillo@402: e["ietf"] = "ietf@\\NAME{IETF}"; meillo@373: e["debian"] = "Debian"; meillo@373: e["ascii"] = "ascii@\\NAME{ASCII}"; meillo@373: e["gpl"] = "General Public License (\\NAME{GPL})"; meillo@402: e["auth"] = "authentication"; meillo@402: e["bsd"] = "Berkeley Software Distribution (\\NAME{BSD})"; meillo@402: e["c"] = "C programming language"; meillo@402: e["changing ip addresses"] = "changing \\NAME{IP} addresses"; meillo@402: e["cyrus sasl"] = "cyrus \\NAME{SASL}"; meillo@402: e["dns blacklist"] = "dns blacklist@\\NAME{DNS} blacklist"; meillo@402: e["dynamic dns"] = "dynamic \\NAME{DNS}"; meillo@402: e["enc"] = "encryption"; meillo@402: e["fax"] = "telefax"; meillo@402: e["imap"] = "imap@\\NAME{IMAP}"; meillo@402: e["ipc"] = "Inter-Process Communication (\\NAME{IPC})"; meillo@402: e["isp"] = "Internet Service Provider (\\NAME{ISP})"; meillo@402: e["mime"] = "mime@\\NAME{MIME}"; meillo@402: e["mmdf"] = "mmdf@\\NAME{MMDF}"; meillo@402: e["pam"] = "pam@\\NAME{PAM}"; meillo@402: e["pop3"] = "pop3@\\NAME{POP3}"; meillo@402: e["relay-only mta"] = "relay-only \\NAME{MTA}"; meillo@402: e["rfc"] = "Request for Comments (\\NAME{RFC})"; meillo@402: e["sasl"] = "sasl@\\NAME{SASL}"; meillo@402: e["smtps"] = "smtps@\\NAME{SMTPS}"; meillo@402: e["starttls"] = "starttls@\\NAME{STARTTLS}"; meillo@402: e["swot analysis"] = "swot analysis@\\NAME{SWOT} analysis"; meillo@402: e["tcp socket"] = "tcp socket@\\NAME{TCP} socket"; meillo@402: e["tcp wrapper"] = "tcp wrapper@\\NAME{TCP} Wrapper"; meillo@402: e["tls"] = "Transport Layer Security (\\NAME{TLS})"; meillo@402: e["uc"] = "Unified Communication"; meillo@402: e["um"] = "Unified Messaging"; meillo@402: e["uucp"] = "uucp@\\NAME{UUCP}"; meillo@402: e["setuid"] = "setuid/setgid"; meillo@373: meillo@402: meillo@402: # persons meillo@373: e["Oliver Kurth"] = e["Kurth"] = "Kurth@\\textsc{Kurth, Oliver}"; meillo@373: e["Adam Back"] = e["Back"] = "Back@\\textsc{Back, Adam}"; meillo@373: e["Eric Allman"] = e["Allman"] = "Allman@\\textsc{Allman, Eric}"; meillo@373: e["Stas Bekman"] = e["Bekman"] = "Bekman@\\textsc{Bekman, Stas}"; meillo@373: e["Daniel J. Bernstein"] = e["Bernstein"] = "Bernstein@\\textsc{Bernstein, Daniel J.}"; meillo@373: e["Bryan Costales"] = e["Costales"] = "Costales@\\textsc{Costales, Bryan}"; meillo@373: e["George Candea"] = e["Candea"] = "Candea@\\textsc{Candea, George}"; meillo@373: e["Dan Shearer"] = e["Shearer"] = "Shearer@\\textsc{Shearer, Dan}"; meillo@373: e["Dave Sill"] = e["Sill"] = "Sill@\\textsc{Sill, Dave}"; meillo@373: e["David A. Wheeler"] = e["Wheeler"] = "Wheeler@\\textsc{Wheeler, David A.}"; meillo@373: e["Kyle D. Dent"] = e["Dent"] = "Dent@\\textsc{Dent, Kyle D.}"; meillo@373: e["Derek Broughton"] = e["Broughton"] = "Broughton@\\textsc{Broughton, Derek}"; meillo@373: e["Doug McIlroy"] = e["McIlroy"] = "McIlroy@\\textsc{McIlroy, Doug}"; meillo@373: e["Peter Eisentraut"] = e["Eisentraut"] = "Eisentraut@\\textsc{Eisentraut, Peter}"; meillo@373: e["Tony Finch"] = e["Finch"] = "Finch@\\textsc{Finch, Tony}"; meillo@373: e["Armando Fox"] = e["Fox"] = "Fox@\\textsc{Fox, Armando}"; meillo@373: e["Frederik Vermeulen"] = e["Vermeulen"] = "Vermeulen@\\textsc{Vermeulen, Frederik}"; meillo@373: e["Marc G. Graff"] = e["Graff"] = "Graff@\\textsc{Graff, Marc G.}"; meillo@373: e["Munawar Hafiz"] = e["Hafiz"] = "Hafiz@\\textsc{Hafiz, Munawar}"; meillo@373: e["Philip Hazel"] = e["Hazel"] = "Hazel@\\textsc{Hazel, Philip}"; meillo@373: e["Ian R. Justman"] = e["Justman"] = "Justman@\\textsc{Justman, Ian R.}"; meillo@373: e["Jesse Freund"] = e["Freund"] = "Freund@\\textsc{Freund, Jesse}"; meillo@373: e["Jon Postel"] = e["Postel"] = "Postel@\\textsc{Postel, Jon}"; meillo@373: e["Jonathan de Boyne Pollard"] = e["de Boyne Pollard"] = "de Boyne Pollard@\\textsc{de Boyne Pollard, Jonathan}"; meillo@373: e["Stephen H. Kan"] = e["Kan"] = "Kan@\\textsc{Kan, Stephen H.}"; meillo@373: e["Brian W. Kernighan"] = e["Kernighan"] = "Kernighan@\\textsc{Kernighan, Brian W.}"; meillo@373: e["Nils Lenke"] = e["Lenke"] = "Lenke@\\textsc{Lenke, Nils}"; meillo@373: e["Markus Schnalke"] = e["Schnalke"] = "Schnalke@\\textsc{Schnalke, Markus}"; meillo@373: e["Michael Osterman"] = e["Osterman"] = "Osterman@\\textsc{Osterman, Michael}"; meillo@373: e["Rob Pike"] = e["Pike"] = "Pike@\\textsc{Pike, Rob}"; meillo@373: e["Eric S. Raymond"] = e["Raymond"] = "Raymond@\\textsc{Raymond, Eric S.}"; meillo@373: e["Dennis Ritchie"] = e["Ritchie"] = "Ritchie@\\textsc{Ritchie, Dennis}"; meillo@373: e["Peter Schmitz"] = e["Schmitz"] = "Schmitz@\\textsc{Schmitz, Peter}"; meillo@373: e["Ken Simpson"] = e["Simpson"] = "Simpson@\\textsc{Simpson, Ken}"; meillo@373: e["Diomidis Spinellis"] = e["Spinellis"] = "Spinellis@\\textsc{Spinellis, Diomidis}"; meillo@373: e["Andrew S. Tanenbaum"] = e["Tanenbaum"] = "Tanenbaum@\\textsc{Tanenbaum, Andrew S.}"; meillo@373: e["Kenneth R. van Wyk"] = e["van Wyk"] = "van Wyk@\\textsc{van Wyk, Kenneth R.}"; meillo@402: e["Christian Langbein"] = e["Langbein"] = "Langbein@\\textsc{Langbein, Christian}"; meillo@402: e["Dad"] = "Schnalke@\\textsc{Schnalke, R\\\"udiger}"; meillo@402: e["Hans-J\\\"org Schaaf"] = e["Schaaf"] = "Schaaf@\\textsc{Schaaf, Hans-J\\\"org}"; meillo@402: e["Henry Atting"] = e["Atting"] = "Atting@\\textsc{Atting, Henry}"; meillo@402: e["Heraclitus"] = "Heraclitus@\\textsc{Heraclitus}"; meillo@402: e["James Stenard"] = e["Stenard"] = "Stenard@\\textsc{Stenard, James}"; meillo@402: e["Joachim Breitner"] = e["Breitner"] = "Breitner@\\textsc{Breitner, Joachim}"; meillo@402: e["Jochen Roth"] = e["Roth"] = "Roth@\\textsc{Roth, Jochen}"; meillo@402: e["Julian Forster"] = e["Forster"] = "Forster@\\textsc{Forster, Julian}"; meillo@402: e["Lydi"] = "Steffan@\\textsc{Steffan, Lydi}"; meillo@402: e["Marc Geis"] = e["Geis"] = "Geis@\\textsc{Geis, Marc}"; meillo@402: e["Markus Sch\\\"affter"] = e["Sch\\\"affter"] = "Schaeffter@\\textsc{Sch\\\"affter, Markus}"; meillo@402: e["Roger Schietzel"] = e["Schietzel"] = "Schietzel@\\textsc{Schietzel, Roger}"; meillo@402: e["Stephen C. Johnson"] = e["Johnson"] = "Johnson@\\textsc{Johnson, Stephen C.}"; meillo@373: e["Wietse Venema"] = e["Venema"] = "Venema@\\textsc{Venema, Wietse}"; meillo@402: e["Volkmar Kese"] = e["Kese"] = "Kese@\\textsc{Kese, Volkmar}"; meillo@402: meillo@402: meillo@402: # subentries meillo@402: s["sendmailx"] = "sendmail X"; meillo@402: s["meta1"] = "MeTA1"; meillo@402: s["smtp-after-pop"] = "\\NAME{SMTP}-after-\\NAME{POP}"; meillo@402: s["smtp-auth"] = "\\NAME{SMTP-AUTH}"; meillo@402: meillo@402: meillo@402: # aliases meillo@402: a["ifdef"] = "ifdef|see{conditional compilation}"; meillo@402: a["envelope"] = "envelope|see{mail message}"; meillo@402: a["header"] = "header|see{mail message}"; meillo@402: a["body"] = "body|see{mail message}"; meillo@402: a["ssl"] = "ssl@\\NAME{SSL}|see{\\NAME{TLS}}"; meillo@402: a["forwarder"] = "forwarder|see{relay-only \\NAME{MTA}}"; meillo@402: a["junk mail"] = "junk mail|see{spam}"; meillo@402: a["fax"] = "fax|see{telefax}"; meillo@402: meillo@372: } meillo@372: meillo@373: meillo@373: meillo@372: { meillo@402: gsub(/\\ /, " "); meillo@402: gsub(/\\nobreakspace \{\}/, " "); meillo@402: gsub(/\\discretionary \{-\}\{\}\{\}/, ""); meillo@402: meillo@402: entry = $0 meillo@402: sub(/[^{]*{/, "", entry); meillo@402: sub(/[}!].*/, "", entry); meillo@402: if (e[entry]) { meillo@402: sub(/{[^}!]*/, "{" e[entry]); meillo@372: } meillo@402: meillo@402: subentry = $0 meillo@402: sub(/[^!]*!/, "", subentry); meillo@402: sub(/}.*/, "", subentry); meillo@402: if (s[subentry]) { meillo@402: sub(/![^}]*/, "!" s[subentry]); meillo@402: } meillo@402: meillo@372: print; meillo@372: } meillo@402: meillo@402: meillo@402: meillo@402: END { meillo@402: # aliases meillo@402: for (i in a) { meillo@402: print "\\indexentry{" a[i] "}{0}"; meillo@402: } meillo@402: }