brintos

brintos / linux-shallow public Read only

0
0
Text · 1.8 KiB · 137b5f8 Raw
57 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2/* atmsvc.h - ATM signaling kernel-demon interface definitions */3 4/* Written 1995-2000 by Werner Almesberger, EPFL LRC/ICA */5 6 7#ifndef _LINUX_ATMSVC_H8#define _LINUX_ATMSVC_H9 10#include <linux/atmapi.h>11#include <linux/atm.h>12#include <linux/atmioc.h>13 14 15#define ATMSIGD_CTRL _IO('a',ATMIOC_SPECIAL)16				/* become ATM signaling demon control socket */17 18enum atmsvc_msg_type { as_catch_null, as_bind, as_connect, as_accept, as_reject,19		       as_listen, as_okay, as_error, as_indicate, as_close,20		       as_itf_notify, as_modify, as_identify, as_terminate,21		       as_addparty, as_dropparty };22 23struct atmsvc_msg {24	enum atmsvc_msg_type type;25	atm_kptr_t vcc;26	atm_kptr_t listen_vcc;		/* indicate */27	int reply;			/* for okay and close:		   */28					/*   < 0: error before active	   */29					/*        (sigd has discarded ctx) */30					/*   ==0: success		   */31				        /*   > 0: error when active (still */32					/*        need to close)	   */33	struct sockaddr_atmpvc pvc;	/* indicate, okay (connect) */34	struct sockaddr_atmsvc local;	/* local SVC address */35	struct atm_qos qos;		/* QOS parameters */36	struct atm_sap sap;		/* SAP */37	unsigned int session;		/* for p2pm */38	struct sockaddr_atmsvc svc;	/* SVC address */39} __ATM_API_ALIGN;40 41/*42 * Message contents: see ftp://icaftp.epfl.ch/pub/linux/atm/docs/isp-*.tar.gz43 */44 45/*46 * Some policy stuff for atmsigd and for net/atm/svc.c. Both have to agree on47 * what PCR is used to request bandwidth from the device driver. net/atm/svc.c48 * tries to do better than that, but only if there's no routing decision (i.e.49 * if signaling only uses one ATM interface).50 */51 52#define SELECT_TOP_PCR(tp) ((tp).pcr ? (tp).pcr : \53  (tp).max_pcr && (tp).max_pcr != ATM_MAX_PCR ? (tp).max_pcr : \54  (tp).min_pcr ? (tp).min_pcr : ATM_MAX_PCR)55 56#endif57