summaryrefslogtreecommitdiffstats
path: root/kiten/xjdic.h
blob: 1e9ae68ae73a23402a827a45a081504750089ffb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/**************************************************************************
*                     X J D X G E N
*                                                   Author: Jim Breen
*           Index (.xjdx) generator program fron XJDIC            
*
*		V2.3 - indexes JIS X 0212 (3-byte EUC) kanji
***************************************************************************/
/*  This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 1, or (at your option)
    any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.     */

  
#define MAXLINES 24     /* default lines per display */
#define MAXCOLS 80      /* default cols per display */
#define NRKANA 250*2   /*  size of the romaji to kana tables*/
#define NOFILT 10      /* maximum number of general filters */
#define VMAX 350       /* maximum entries in the verb table */
#define DEFAULT_DICDIR ""    /* could be: "/usr/local/lib/xjdic"   */
#define NOHITS 1000       /* size of hittab  */
#define SPTAG '@'         /* character that flags priority entries */
#define KFBUFFSIZE 2000   /* size of the KFlush buffer */
#define KANJARRAYSIZE 600 /* size of the kanji sorting array */
#define SVER "2.3"
#define TINITVAL 2
#define TMAXVAL 30
#define TMAXREP 1
#define VBUFFSIZE 4096  /* size in bytes for each virtual buffer  */
#define NOVB 1000  /* maximum number of virtual buffers   */
#define RADPERLINE 20		/* No of radicals to display per line	*/
#define RADLOOKLIM 2*20		/*threshold for displaying results of radical
				  lookup (default 20)	*/
#define MAXITER 40		/*maximum binary search iterations*/

/* The following is for Solarises   */

#ifndef SEEK_END
#define SEEK_END 2
#endif
#ifndef SEEK_SET
#define SEEK_SET 0
#endif
#ifndef INADDR_NONE
#define INADDR_NONE -1
#endif


/*     type fields for PDUs and server calls               */

#define XJ_FIND         1	/* find entry				*/
#define XJ_ENTRY        2	/* get this entry according to index	*/
#define XJ_OK           3	/* find/entry_get succeeded		*/
#define XJ_NBG          4	/* find/entry_get failed		*/
#define XJ_PROTERR      5	/* protocol error - server only		*/
#define XJ_HULLO        6	/* just send back an XJ_OK and # dics   */
#define XJ_GET          7	/* get this entry, wo checking any match*/

#define XJ_PORTNO       47512	/* server's "well-known" port no	*/

/*	PDU structures		*/

typedef struct {
	int32_t	xjdreq_checksum;
	short		xjdreq_type;
	short		xjdreq_seq;
	short		xjdreq_dicno;
	int32_t	xjdreq_indexpos;
	short		xjdreq_schlen;
	unsigned char	xjdreq_schstr[21];
	} REQ_PDU;

typedef struct {
	int32_t	xjdrsp_checksum;
	short		xjdrsp_type;
	short		xjdrsp_seq;
	int32_t	xjdrsp_resindex;
	short		xjdrsp_hitposn;
	short		xjdrsp_reslen;
	int32_t	xjdrsp_dicloc;
	unsigned char	xjdrsp_resstr[512];
	} RSP_PDU;