Penguin

Maybe you're trying to get the RIPE Whois Server going... It's kind of old and archaic in several respects it seems.

Here is a list of hacks that I've had to do to get it working on Debian Sid so far, this is a work in progress.

SegmentationFaults

If you get a SegmentationFault like

died on SQ_execute_query(con, "LOCK TABLES     " "route READ, inetnum READ, inet6num READ,   " "inaddr_arpa READ, domain READ, ip6int READ ", NULL) == -1 in: +258 rp_load.c
Segmentation fault

or any other SegmentationFault when you try to run the whois server, chances are your DataBase permissions are incorrect. The server doesn't seem to have the concept of error messages and will happily crash if

  • you lack permissions to LOCK TABLES,
  • the DataBase server isn't running,
  • you lack permissions to create temporary tables,
  • you look at it wrong,
  • and probably many more cases.

Setting up the database user

I used the following MySQL commands as the make_user script is for an archaic MySQL version and the user table has many more fields now...

INSERT user (host, user, password, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv, reload_priv, shutdown_priv, process_priv, file_priv, grant_priv, references_priv, index_priv, alter_priv)
VALUES ('localhost', 'whois', PASSWORD('whois'), 'Y','Y','Y','Y','Y','Y','Y','N','Y','N','N','Y','Y','Y');

INSERT user (host, user, password, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv, reload_priv, shutdown_priv, process_priv, file_priv, grant_priv, references_priv, index_priv, alter_priv)
VALUES ('yourhostname', 'whois', PASSWORD('whois'), 'Y','Y','Y','Y','Y','Y','Y','N','Y','N','N','Y','Y','Y');

UPDATE user SET local_tables_priv='Y' WHERE user='whois';

UPDATE user SET Create_tmp_table_priv='Y' WHERE user='whois';

FLUSH PRIVILEGES