Tomato 1.26 beta (1786)
[tomato.git] / release / src / router / pptp-client / pptp_quirks.h
blobb8f398c1c000b64010050bc4a635e6170cbd033d
1 /* pptp_quirks.h ...... various options to fix quirks found in buggy adsl modems
2 * mulix <mulix@actcom.co.il>
4 * $Id: pptp_quirks.h,v 1.1.1.1 2002/07/25 06:52:39 honor Exp $
5 */
7 #ifndef INC_PPTP_QUIRKS_H
8 #define INC_PPTP_QUIRKS_H
10 /* isp defs - correspond to slots in the fixups table */
11 #define BEZEQ_ISRAEL "BEZEQ_ISRAEL"
13 /* vendor defs */
15 #define ORCKIT 1
16 #define ALCATEL 2
18 /* device defs */
20 #define ORCKIT_ATUR2 1
21 #define ORCKIT_ATUR3 2
23 #include "pptp_msg.h"
24 #include "pptp_ctrl.h"
26 struct pptp_fixup {
27 const char* isp; /* which isp? e.g. Bezeq in Israel */
28 int vendor; /* which vendor? e.g. Orckit */
29 int device; /* which device? e.g. Orckit Atur3 */
31 /* use this hook to build your own out call request packet */
32 int (*out_call_rqst_hook)(struct pptp_out_call_rqst* packet);
34 /* use this hook to build your own start control connection packet */
35 /* note that this hook is called from two different places, depending
36 on whether this is a request or reply */
37 int (*start_ctrl_conn)(struct pptp_start_ctrl_conn* packet);
39 /* use this hook if you need to send a 'set_link' packet once
40 the connection is established */
41 int (*set_link_hook)(struct pptp_set_link_info* packet,
42 int peer_call_id);
45 extern struct pptp_fixup pptp_fixups[];
47 /* find the index for this isp in the quirks table */
48 /* return the index on success, -1 if not found */
49 int find_quirk(const char* isp_name);
51 /* set the global quirk index. return 0 on success, non 0 otherwise */
52 int set_quirk_index(int index);
54 /* get the global quirk index. return the index on success,
55 -1 if no quirk is defined */
56 int get_quirk_index();
59 #endif /* INC_PPTP_QUIRKS_H */