1    | #ifndef PM_H
2    | #define PM_H
3    | 
4    | #include <glib.h>
5    | #include "mysql_driver.h"
6    | #include "iproutines.h"
7    | 
8    | /***************************************
9    |   $Revision: 1.4 $
10   | 
11   |   Protocol whois module (pw).  Whois protocol.
12   | 
13   |   Status: NOT REVUED, NOT TESTED
14   | 
15   |   +html+ <DL COMPACT>
16   |   +html+ <DT>Online References:
17   |   +html+ <DD><UL>
18   |   +html+ </UL>
19   |   +html+ </DL>
20   |   +html+ <PRE>
21   |   Author:
22   |       ottrey
23   |       marek
24   |       andrei
25   |   +html+ </PRE>
26   |  
27   |   ******************/ /******************
28   |   Copyright (c) 1999                              RIPE NCC
29   |  
30   |   All Rights Reserved
31   |   
32   |   Permission to use, copy, modify, and distribute this software and its
33   |   documentation for any purpose and without fee is hereby granted,
34   |   provided that the above copyright notice appear in all copies and that
35   |   both that copyright notice and this permission notice appear in
36   |   supporting documentation, and that the name of the author not be
37   |   used in advertising or publicity pertaining to distribution of the
38   |   software without specific, written prior permission.
39   |   
40   |   THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
41   |   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS; IN NO EVENT SHALL
42   |   AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
43   |   DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
44   |   AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
45   |   OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
46   |   ***************************************/
47   | /*+ String sizes +*/
48   | #define STR_S   63
49   | #define STR_M   255
50   | #define STR_L   1023
51   | #define STR_XL  4095
52   | #define STR_XXL 16383
53   | 
54   | /*+ Maximum size of input that can be recieved from the client. +*/
55   | #define MAX_INPUT_SIZE  1024
56   | 
57   | typedef struct _nrtm_q_t {
58   |  char *source;
59   |  int version;
60   |  long first;
61   |  long last;
62   | } nrtm_q_t;
63   |     
64   | #define PM_get_current_serial(connection) PM_get_minmax_serial(connection, 1)
65   | #define PM_get_oldest_serial(connection) PM_get_minmax_serial(connection, 0)
66   | 
67   | 
68   | long PM_get_minmax_serial(SQ_connection_t *sql_connection, int max);
69   | char *PM_get_serial_object(SQ_connection_t *sql_connection, long serial_number, int *operation);
70   | GString *PM_get_nrtm_sources(ip_addr_t *client_address, char *source);
71   | 
72   | void PM_interact(int sock);
73   | 
74   | #endif /* PM_H */