projects
/
lcr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Ports can now be specified by number or by name.
[lcr.git]
/
interface.h
diff --git
a/interface.h
b/interface.h
index
f7d56c9
..
221b085
100644
(file)
--- a/
interface.h
+++ b/
interface.h
@@
-9,9
+9,6
@@
** **
\*****************************************************************************/
** **
\*****************************************************************************/
-#define FLAG_PORT_USE 1
-#define FLAG_PORT_PTP (1<<1)
-
enum { /* interface type */
IF_TYPE_DIRECT,
IF_TYPE_EXTENSION,
enum { /* interface type */
IF_TYPE_DIRECT,
IF_TYPE_EXTENSION,
@@
-48,12
+45,23
@@
struct interface_port {
struct interface *interface; /* link to interface */
struct mISDNport *mISDNport; /* link to port */
int portnum; /* port number */
struct interface *interface; /* link to interface */
struct mISDNport *mISDNport; /* link to port */
int portnum; /* port number */
- int ptp; /* load stack in PTP mode */
+ 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 l2hold; /* hold layer 2 (1=force, -1=disable */
int channel_force; /* forces channel by protocol */
int channel_force; /* forces channel by protocol */
-
struct select_channel *out_select; /* list of channels to select
*/
- struct select_channel *
in_select; /* the same for incoming channels
*/
-
// int open; /* set if port is opened
*/
+
int nodtmf; /* disables DTMF
*/
+ struct select_channel *
out_channel; /* list of channels to select
*/
+
struct select_channel *in_channel; /* the same for incoming channels
*/
int block; /* set if interface is blocked */
int block; /* set if interface is blocked */
+ int tout_setup;
+ int tout_dialing;
+ int tout_proceeding;
+ int tout_alerting;
+ int tout_disconnect;
+// int tout_hold;
+// int tout_park;
};
struct interface_msn {
};
struct interface_msn {
@@
-71,12
+79,6
@@
struct interface_screen {
int result_present; /* presentation type */
};
int result_present; /* presentation type */
};
-struct interface_filter {
- struct interface_filter *next;
- int filter; /* filter to use */
- char parameter[256]; /* filter parameter */
-};
-
struct interface {
struct interface *next;
char name[64]; /* name of interface */
struct interface {
struct interface *next;
char name[64]; /* name of interface */
@@
-89,15
+91,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 */
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 */
- struct interface_filter *iffilter; /* link to filter list */
+ 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 {
};
struct interface_param {
- c
har
*name;
+ c
onst char
*name;
/* return value (pointer of function)(args ...) */
int (*func)(struct interface *, char *, int, char *, char*);
/* return value (pointer of function)(args ...) */
int (*func)(struct interface *, char *, int, char *, char*);
- c
har
*usage;
- c
har
*help;
+ c
onst char
*usage;
+ c
onst char
*help;
};
};
@@
-108,6
+113,7
@@
extern char interface_error[256];
struct interface *read_interfaces(void);
void free_interfaces(struct interface *interface_start);
void relink_interfaces(void);
struct interface *read_interfaces(void);
void free_interfaces(struct interface *interface_start);
void relink_interfaces(void);
+void load_port(struct interface_port *ifport);
void doc_interface(void);
void doc_interface(void);
-
+void do_screen(int out, char *id, int idsize, int *type, int *present, struct interface *interface);