X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Ffrontend.xml;h=84bb35ac6253c7229118b6e4e9ebfec879c271d3;hb=398b30f86d12b3b14c7d389325164ee2df7836b9;hp=0673c3d75cee649aa101e20b38653292fde337b0;hpb=33c05384cfbca55da4ff97e5b2047b16596c72f7;p=yaz-moved-to-github.git diff --git a/doc/frontend.xml b/doc/frontend.xml index 0673c3d..84bb35a 100644 --- a/doc/frontend.xml +++ b/doc/frontend.xml @@ -1,14 +1,12 @@ - - Making an IR Server for Your Database + + Generic server Introduction If you aren't into documentation, a good way to learn how the back end interface works is to look at the backend.h file. Then, look at the small dummy-server in - ztest/ztest.c. Finally, you can have a look at - the seshigh.c file, which is where most of the - logic of the frontend server is located. The backend.h + ztest/ztest.c. The backend.h file also makes a good reference, once you've chewed your way through the prose of this file. @@ -105,15 +103,15 @@ The Backend API - The headers files that you need to use the interface are in the - include/yaz directory. They are called - statserv.h and backend.h. They - will include other files from the include/yaz - directory, so you'll probably want to use the -I option of your - compiler to tell it where to find the files. When you run + The header file that you need to use the interface are in the + include/yaz directory. It's called + backend.h. It will include other files from + the include/yaz directory, so you'll + probably want to use the -I option of your compiler to tell it + where to find the files. When you run make in the top-level &yaz; directory, - everything you need to create your server is put the - lib/libyaz.a library. + everything you need to create your server is to link with the + lib/libyaz.la library. @@ -219,8 +217,8 @@ statserv_options_block *statserv_getcontrol(void); enum oid_proto default_proto; - Either PROTO_SR or - PROTO_Z3950. + Either PROTO_Z3950 or + PROTO_SR. Default is PROTO_Z39_50. @@ -778,11 +776,11 @@ typedef struct bend_scan_rr { A listener specification consists of a transport mode followed by a colon (:) followed by a listener address. The transport mode is - either osi or tcp. + either tcp or ssl. - For TCP, an address has the form + For TCP and SSL, an address has the form @@ -794,46 +792,19 @@ typedef struct bend_scan_rr { - For osi, the address form is - - - - [t-selector /] hostname | IP-number [: portnumber] - - - - The transport selector is given as a string of hex digits (with an even - number of digits). The default port number is 102 (RFC1006 port). - - - Examples tcp:dranet.dra.com - osi:0402/dbserver.osiworld.com:3000 + ssl:ssl.enterprise.com:3000 In both cases, the special hostname "@" is mapped to the address INADDR_ANY, which causes the server to listen on any local - interface. To start the server listening on the registered ports for - Z39.50 and SR over OSI/RFC1006, and to drop root privileges once the - ports are bound, execute the server like this (from a root shell): - - - - my-server -u daemon tcp:@ -s osi:@ - - - - You can replace daemon with another user, eg. your - own account, or a dedicated IR server account. - my-server should be the name of your - server application. You can test the procedure with the - yaz-ztest application. + interface. @@ -849,7 +820,7 @@ typedef struct bend_scan_rr { sgml-indent-step:1 sgml-indent-data:t sgml-parent-document: "yaz.xml" - sgml-local-catalogs: "../../docbook/docbook.cat" + sgml-local-catalogs: nil sgml-namecase-general:t End: -->