X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=interface.h;h=2c2ee23dedff20ecddcfaab9877cfae187b762e3;hp=da0ee20c711481deda228e7d9c188d89ef4d4c54;hb=feea42c7f7f2e171c1490bd0d3af09beba629f21;hpb=31aff20175a3bc9b4bb41d080452ae1d063e267a diff --git a/interface.h b/interface.h index da0ee20..2c2ee23 100644 --- a/interface.h +++ b/interface.h @@ -8,10 +8,6 @@ ** interface header file ** ** ** \*****************************************************************************/ - -#define FLAG_PORT_USE 1 -#define FLAG_PORT_PTP (1<<1) - enum { /* interface type */ IF_TYPE_DIRECT, IF_TYPE_EXTENSION, @@ -48,9 +44,14 @@ struct interface_port { struct interface *interface; /* link to interface */ struct mISDNport *mISDNport; /* link to port */ int portnum; /* port number */ + char portname[64]; /* alternately: port name */ int ptp; /* force load stack in PTP mode */ int ptmp; /* force load stack in PTP mode */ int nt; /* load stack in NT-mode */ + int tespecial; /* special TE-mode behavior */ + int l1hold; /* hold layer 1 (1=on, 0=off) */ + int l2hold; /* hold layer 2 (1=force, -1=disable, 0=default) */ + int gsm; /* interface is an GSM interface */ int channel_force; /* forces channel by protocol */ int nodtmf; /* disables DTMF */ struct select_channel *out_channel; /* list of channels to select */ @@ -63,6 +64,8 @@ struct interface_port { int tout_disconnect; // int tout_hold; // int tout_park; + int dialmax; /* maximum number of digits to dial */ + char tones_dir[128]; }; struct interface_msn { @@ -83,6 +86,7 @@ struct interface_screen { struct interface { struct interface *next; char name[64]; /* name of interface */ + int external; /* interface used for extranl calls */ int extension; /* calls are handled as extension */ int is_tones; /* generate tones */ int is_earlyb; /* bridge tones during call setup */ @@ -92,18 +96,18 @@ struct interface { struct interface_msn *ifmsn; /* link to interface msn list */ struct interface_screen *ifscreen_in; /* link to screening list */ struct interface_screen *ifscreen_out; /* link to screening list */ - int gain_tx, gain_rx; /* filter gain */ + int tx_gain, rx_gain; /* filter gain */ char pipeline[256]; /* filter pipeline */ unsigned char bf_key[56]; /* filter blowfish */ int bf_len; /* filter length of blowfish */ }; struct interface_param { - char *name; + const char *name; /* return value (pointer of function)(args ...) */ int (*func)(struct interface *, char *, int, char *, char*); - char *usage; - char *help; + const char *usage; + const char *help; };