#include <linux/export.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <linux/kernel.h>
#include <linux/sched/signal.h>
#include <linux/slab.h>
#include <linux/poll.h>
#include <linux/fcntl.h>
#include <linux/skbuff.h>
#include <linux/socket.h>
#include <linux/ioctl.h>
#include <linux/file.h>
#include <linux/wait.h>
#include <linux/kthread.h>
#include <net/sock.h>
#include <linux/isdn/capilli.h>
#include <linux/isdn/capicmd.h>
#include <linux/isdn/capiutil.h>
#include "cmtp.h"
#define CAPI_INTEROPERABILITY …
#define CAPI_INTEROPERABILITY_REQ …
#define CAPI_INTEROPERABILITY_CONF …
#define CAPI_INTEROPERABILITY_IND …
#define CAPI_INTEROPERABILITY_RESP …
#define CAPI_INTEROPERABILITY_REQ_LEN …
#define CAPI_INTEROPERABILITY_CONF_LEN …
#define CAPI_INTEROPERABILITY_IND_LEN …
#define CAPI_INTEROPERABILITY_RESP_LEN …
#define CAPI_FUNCTION_REGISTER …
#define CAPI_FUNCTION_RELEASE …
#define CAPI_FUNCTION_GET_PROFILE …
#define CAPI_FUNCTION_GET_MANUFACTURER …
#define CAPI_FUNCTION_GET_VERSION …
#define CAPI_FUNCTION_GET_SERIAL_NUMBER …
#define CAPI_FUNCTION_MANUFACTURER …
#define CAPI_FUNCTION_LOOPBACK …
#define CMTP_MSGNUM …
#define CMTP_APPLID …
#define CMTP_MAPPING …
static struct cmtp_application *cmtp_application_add(struct cmtp_session *session, __u16 appl)
{ … }
static void cmtp_application_del(struct cmtp_session *session, struct cmtp_application *app)
{ … }
static struct cmtp_application *cmtp_application_get(struct cmtp_session *session, int pattern, __u16 value)
{ … }
static int cmtp_msgnum_get(struct cmtp_session *session)
{ … }
static void cmtp_send_capimsg(struct cmtp_session *session, struct sk_buff *skb)
{ … }
static void cmtp_send_interopmsg(struct cmtp_session *session,
__u8 subcmd, __u16 appl, __u16 msgnum,
__u16 function, unsigned char *buf, int len)
{ … }
static void cmtp_recv_interopmsg(struct cmtp_session *session, struct sk_buff *skb)
{ … }
void cmtp_recv_capimsg(struct cmtp_session *session, struct sk_buff *skb)
{ … }
static int cmtp_load_firmware(struct capi_ctr *ctrl, capiloaddata *data)
{ … }
static void cmtp_reset_ctr(struct capi_ctr *ctrl)
{ … }
static void cmtp_register_appl(struct capi_ctr *ctrl, __u16 appl, capi_register_params *rp)
{ … }
static void cmtp_release_appl(struct capi_ctr *ctrl, __u16 appl)
{ … }
static u16 cmtp_send_message(struct capi_ctr *ctrl, struct sk_buff *skb)
{ … }
static char *cmtp_procinfo(struct capi_ctr *ctrl)
{ … }
static int cmtp_proc_show(struct seq_file *m, void *v)
{ … }
int cmtp_attach_device(struct cmtp_session *session)
{ … }
void cmtp_detach_device(struct cmtp_session *session)
{ … }