.\" Automatically generated by Pod::Man v1.3, Pod::Parser v1.13 .\" .\" Standard preamble: .\" ======================================================================== .de Sh \" Subsection heading .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. | will give a .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C' .\" expand to `' in nroff, nothing in troff, for use with C<>. .tr \(*W-|\(bv\*(Tr .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .\" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .hy 0 .if n .na .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CDDBD 1" .TH CDDBD 1 "2006-07-01" "cddbd-1.5.2" "CD Database Server" .UC .SH "NAME" cddbd, cddb.cgi \- the \s-1CD\s0 Database Server is a program designed to allow remote access of xmcd-style Compact Disc database entries via the Internet. Xmcd is an X11/Motif\-based \s-1CD\s0 player utility written by Ti Kan, which, as of version 2.0 supports remote access of \s-1CDDB\s0 protocol servers. While xmcd was the first application to allow access to a \s-1CDDB\s0 protocol server, there are now hundreds of applications supporting the \s-1CDDB1\s0 protocol. .SH "SYNOPSIS" .IX Header "SYNOPSIS" There are several usage modes: .PP \&\fBcddbd\fR \fI\-m\fR|\fI\-M\fR [\fI\-dqv\fR] [\fI\-a access_file\fR] .PP \&\fBcddbd\fR \fI\-s port|'default'\fR [\fI\-dqv\fR] [\fI\-a access_file\fR] .PP \&\fBcddbd\fR [\fI\-uef\fR] [\fI\-l|\-t\ rhost\fR|\fI'all'\fR\ |\ \fI\-T\ rhost\fR|\fI'all'\ hh[mm[ss[MM[DD[\s-1YY\s0]]]]]\fR] [\fI\-c\ check_lev\fR|\fI'default'\ fix_lev\fR|\fI'default'\fR] [\fI\-p\ rhost\fR|\fI'all'\ file\fR] [\fI\-dqv\fR] [\fI\-a\ access_file\fR] .PP \&\fBcddbd\fR \fI\-C rhost\fR|\fI'all'\fR \fIcddbp_command\fR \fIproto_lev\fR .PP \&\fBcddbd\fR \fI\-k\fR .PP \&\fBcddbd\fR \fI\-P\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \s-1CD\s0 database server has several \*(L"generic\*(R" run-time options that you can use to override the default behavior for debugging purposes. Except for these the options for one mode cannot be mixed with that of another mode. .SH "OPTIONS" .IX Header "OPTIONS" The following options are valid in conjunction with any other combination of options except for \fB\-C\fR, \fB\-k\fR and \fB\-P\fR: .IP "\fB\-d\fR" 8 .IX Item "-d" Put the server in debug mode. All log output is routed to stderr rather than the log file when this option is invoked. This is useful for debugging when the server can't find the log file for some reason. .IP "\fB\-v\fR" 8 .IX Item "-v" Put cddbd in verbose mode. This causes cddbd to generate more verbose log output. .IP "\fB\-q\fR" 8 .IX Item "-q" Put cddbd in quiet mode. All log output is suppressed when this option is invoked. This option nullifies the \fB\-d\fR and \fB\-v\fR options. .IP "\fB\-a\fR \fIaccess_file\fR" 8 .IX Item "-a access_file" Force cddbd to use the specified pathname as the location of the access file, regardless of the path that was compiled into the server. This is useful when cddbd can't find the access file or when you want to test out an alternate access file without disturbing the installed version. .PP The following options are used with the daemon \fImail filter mode\fR: .IP "\fB\-m\fR" 8 .IX Item "-m" Put cddbd in mail filter mode. In this mode, it expects one full email database submission, complete with mail header, to be fed in through standard input. The entry will be processed and placed in the \fI\*(L"post\*(R"\fR directory for later inclusion in the database, if it is valid. .IP "\fB\-M\fR" 8 .IX Item "-M" Works much the same as the \fB\-m\fR option, but does not actually post submitted entries. Instead, confirmation is echoed to the sender if the submission is acceptable. This mode is useful for testing client applications that wish to develop and test new entry submission capability. .PP The following options are used with the server \fIstandalone mode\fR: .IP "\fB\-s\fR \fIport\fR|\fI'default'\fR" 8 .IX Item "-s port|'default'" Put cddbd in standalone server mode. It forks and becomes a background process, listening at the specified port number for connections. If the word \fI'default'\fR is specified instead of a port number, then the daemon uses the most appropriate default. It will first check /etc/services for a port number, and failing that, will use the built-in default of port 8880. .PP The following options are used with the various daemon database \fImanagement modes\fR: .IP "\fB\-c\fR \fIcheck_lev\fR|\fI'default'\fR \fIfix_lev\fR|\fI'default'\fR" 8 .IX Item "-c check_lev|'default' fix_lev|'default'" Check the integrity of the database and possibly correct some problems. It requires two numerical arguments, which correspond respectively to the level of strictness to be employed when verifying database entries and when fixing the database. Currently there is only one check level implemented, so this value must always be 1, while the fix level is a value in the range from 1 to 3., Fix level 1 causes no repairs to be made to the database, level 2 causes permissions and links to be fixed, and level 3 additionally causes the removal of files judged to be invalid. Fix level 3 should not be employed unless you are sure the database contains no invalid entries that can be salvaged. Level 1 or 2 should be used first to determine if some files can be hand\-repaired. .IP "\fB\-e\fR" 8 .IX Item "-e" Check for entries that should possibly be linked. It will print an exhaustive list of entries that have fuzzy matches with other entries in the database. This option does not cause them to actually be linked \- this must still be done by hand. .IP "\fB\-u\fR" 8 .IX Item "-u" Initiate an update of the database with new entries from the \fI\*(L"post\*(R"\fR directory. It updates the transmit history file for remote sites. .IP "\fB\-f\fR" 8 .IX Item "-f" Build the fuzzy matching hash index, then exit. This option is best used in conjunction with \fB\-d\fR, otherwise any errors encountered during the creation of the hash file will go to the error log. .IP "\fB\-p\fR \fIrhost\fR|\fI'all'\fR" 8 .IX Item "-p rhost|'all'" Remotely put the sites or motd-file to the named remote site, or all remote sites if the word \fI'all'\fR is specified. For this to work, the put-permission must be granted on the receiving server. .IP "\fB\-l\fR \fIrhost\fR|\fI'all'\fR" 8 .IX Item "-l rhost|'all'" Obtain log status information for the named remote site, or all remote sites if the word \fI'all'\fR is specified. .IP "\fB\-t\fR \fIrhost\fR|\fI'all'\fR" 8 .IX Item "-t rhost|'all'" Transmit all outstanding new database entries to the specified remote site, or all remote sites if the word \&\fI'all'\fR is specified. .IP "\fB\-T\fR \fIrhost\fR|\fI'all'\fR \fIhh[mm[ss[MM[DD[\s-1YY\s0]]]]]\fR" 8 .IX Item "-T rhost|'all' hh[mm[ss[MM[DD[YY]]]]]" Reset the transmit history for the named remote site, or all remote sites if the word \fI'all'\fR is specified. The history is reset to the specified time, or to the current time if the word \fI'now'\fR is specified instead. Any portion of the time that is not explicitly specified will be substituted with the current value of that portion of the time. .PP If multiple database management options are invoked at once, the server runs them in this order: \fBcuf .PP The following option is used to \fIaccess remote servers\fR: .IP "\fB\-C\fR \fIrhost\fR|\fI'all'\fR \fIcddbp_command\fR \fIproto_lev\fR" 8 .IX Item "-C rhost|'all' cddbp_command proto_lev" Connect to the named remote site, or all remote sites if the word \fI'all'\fR is specified, and execute the specified cddb command on the remote server. The response from the remote server is written to stdout. .PP The following options is used for \fIkey handling\fR: .IP "\fB\-k\fR" 8 .IX Item "-k" Generate a random 32\-character hex password string, which can be used as a key to restrict administrative access to a cddb server. .IP "\fB\-P\fR" 8 .IX Item "-P" Generate a password to be used in validation with a cddb server. The cddbd queries for the key and the salt on the commandline and returns the password. .SH "FILES" .IX Header "FILES" It uses following files (apart from the database) \- path relative to the config. root (by default \fI/usr/local/cddbd\fR): \&\fIaccess\fR, \fIpasswd\fR, \fIsites\fR, \fIlocks/*\fR, \fIserver/fuzzy_index\fR and \fIserver/log\fR .SH "NOTES" .IX Header "NOTES" Note that the active/write operations in the Windows format version of cddbd have not been tested much. .SH "AUTHOR" .IX Header "AUTHOR" .IP "Steve Scherf (steve@moonsoft.com)" 4 .IX Item "Steve Scherf (steve@moonsoft.com)" .PD 0 .IP "freedb team (info@freedb.org)" 4 .IX Item "freedb team (info@freedb.org)" .IP "and various contributors" 4 .IX Item "and various contributors"