/* /www/gateways/mudlist.c * from Nightmare IV * a gateway to produce a mudlist for connecting to muds * created by Descartes of Borg 940524 * Tweaked a little to work with DNS by Leto@Earth */ #include <mudlib.h> #include <net/daemons.h> #include <net/dns.h> inherit DAEMON; string gateway(string unused) { mapping borg; string *muds; string str; int i, maxi; maxi = sizeof(muds=sort_array(keys(borg=(mapping)DNS_MASTER->query_muds()), "alphabetize_muds", this_object())); str = sprintf("<TITLE>%s Mudlist Gateway</TITLE><h1>" "%s is aware of the following %d muds.</h1><OL>", capitalize(mud_name()), capitalize(mud_name()),maxi); for(i=0; i<maxi; i++) str += sprintf("<LI><a href=telnet://%s:%s>%s</a> (%s %s), Driver: %s, " "Mudlib: %s %s\n", borg[muds[i]]["HOSTADDRESS"], borg[muds[i]]["PORT"], borg[muds[i]]["NAME"], borg[muds[i]]["HOSTADDRESS"], (borg[muds[i]]["PORT"]), (borg[muds[i]]["DRIVER"] ? borg[muds[i]]["DRIVER"] : "Unknown"), (borg[muds[i]]["MUDLIB"] ? borg[muds[i]]["MUDLIB"] : "Unknown"), (borg[muds[i]]["VERSION"] ? borg[muds[i]]["VERSION"] : "")); str += "</OL>This mudlist is maintained dynamically through the Intermud network system"; return str; } int alphabetize_muds(string a, string b) { return strcmp(a, b); }