common.h (1640B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* net/atm/common.h - ATM sockets (common part for PVC and SVC) */ 3 4/* Written 1995-2000 by Werner Almesberger, EPFL LRC/ICA */ 5 6 7#ifndef NET_ATM_COMMON_H 8#define NET_ATM_COMMON_H 9 10#include <linux/net.h> 11#include <linux/poll.h> /* for poll_table */ 12 13 14int vcc_create(struct net *net, struct socket *sock, int protocol, int family, int kern); 15int vcc_release(struct socket *sock); 16int vcc_connect(struct socket *sock, int itf, short vpi, int vci); 17int vcc_recvmsg(struct socket *sock, struct msghdr *msg, size_t size, 18 int flags); 19int vcc_sendmsg(struct socket *sock, struct msghdr *m, size_t total_len); 20__poll_t vcc_poll(struct file *file, struct socket *sock, poll_table *wait); 21int vcc_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg); 22int vcc_compat_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg); 23int vcc_setsockopt(struct socket *sock, int level, int optname, 24 sockptr_t optval, unsigned int optlen); 25int vcc_getsockopt(struct socket *sock, int level, int optname, 26 char __user *optval, int __user *optlen); 27void vcc_process_recv_queue(struct atm_vcc *vcc); 28 29int atmpvc_init(void); 30void atmpvc_exit(void); 31int atmsvc_init(void); 32void atmsvc_exit(void); 33int atm_sysfs_init(void); 34void atm_sysfs_exit(void); 35 36#ifdef CONFIG_PROC_FS 37int atm_proc_init(void); 38void atm_proc_exit(void); 39#else 40static inline int atm_proc_init(void) 41{ 42 return 0; 43} 44 45static inline void atm_proc_exit(void) 46{ 47 /* nothing */ 48} 49#endif /* CONFIG_PROC_FS */ 50 51/* SVC */ 52int svc_change_qos(struct atm_vcc *vcc,struct atm_qos *qos); 53 54void atm_dev_release_vccs(struct atm_dev *dev); 55 56#endif