OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [drivers/] [isdn/] [pcbit/] [capi.h] - Blame information for rev 83

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 62 marcus.erl
/*
2
 * CAPI encode/decode prototypes and defines
3
 *
4
 * Copyright (C) 1996 Universidade de Lisboa
5
 *
6
 * Written by Pedro Roque Marques (roque@di.fc.ul.pt)
7
 *
8
 * This software may be used and distributed according to the terms of
9
 * the GNU General Public License, incorporated herein by reference.
10
 */
11
 
12
#ifndef CAPI_H
13
#define CAPI_H
14
 
15
 
16
#define REQ_CAUSE         0x01
17
#define REQ_DISPLAY       0x04
18
#define REQ_USER_TO_USER  0x08 
19
 
20
#define AppInfoMask  REQ_CAUSE|REQ_DISPLAY|REQ_USER_TO_USER 
21
 
22
/* Connection Setup */
23
extern int capi_conn_req(const char * calledPN, struct sk_buff **buf,
24
                         int proto);
25
extern int capi_decode_conn_conf(struct pcbit_chan * chan, struct sk_buff *skb,
26
                                 int *complete);
27
 
28
extern int capi_decode_conn_ind(struct pcbit_chan * chan, struct sk_buff *skb,
29
                                struct callb_data *info);
30
extern int capi_conn_resp(struct pcbit_chan* chan, struct sk_buff **skb);
31
 
32
extern int capi_conn_active_req(struct pcbit_chan* chan, struct sk_buff **skb);
33
extern int capi_decode_conn_actv_conf(struct pcbit_chan * chan,
34
                                      struct sk_buff *skb);
35
 
36
extern int capi_decode_conn_actv_ind(struct pcbit_chan * chan,
37
                                     struct sk_buff *skb);
38
extern int capi_conn_active_resp(struct pcbit_chan* chan,
39
                                 struct sk_buff **skb);
40
 
41
/* Data */
42
extern int capi_select_proto_req(struct pcbit_chan *chan, struct sk_buff **skb,
43
                                 int outgoing);
44
extern int capi_decode_sel_proto_conf(struct pcbit_chan *chan,
45
                                      struct sk_buff *skb);
46
 
47
extern int capi_activate_transp_req(struct pcbit_chan *chan,
48
                                    struct sk_buff **skb);
49
extern int capi_decode_actv_trans_conf(struct pcbit_chan *chan,
50
                                       struct sk_buff *skb);
51
 
52
extern int capi_tdata_req(struct pcbit_chan* chan, struct sk_buff *skb);
53
extern int capi_tdata_resp(struct pcbit_chan *chan, struct sk_buff ** skb);
54
 
55
/* Connection Termination */
56
extern int capi_disc_req(ushort callref, struct sk_buff **skb, u_char cause);
57
 
58
extern int capi_decode_disc_ind(struct pcbit_chan *chan, struct sk_buff *skb);
59
extern int capi_disc_resp(struct pcbit_chan *chan, struct sk_buff **skb);
60
 
61
#ifdef DEBUG
62
extern int capi_decode_debug_188(u_char *hdr, ushort hdrlen);
63
#endif
64
 
65
static inline struct pcbit_chan *
66
capi_channel(struct pcbit_dev *dev, struct sk_buff *skb)
67
{
68
        ushort callref;
69
 
70
        callref = *((ushort*) skb->data);
71
        skb_pull(skb, 2);
72
 
73
        if (dev->b1->callref == callref)
74
                return dev->b1;
75
        else if (dev->b2->callref == callref)
76
                return dev->b2;
77
 
78
        return NULL;
79
}
80
 
81
#endif
82
 
83
 
84
 
85
 
86
 
87
 

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.