74e20cfe817b82802b16fac8690dadcda76f54f5nh * CDDL HEADER START
74e20cfe817b82802b16fac8690dadcda76f54f5nh * The contents of this file are subject to the terms of the
74e20cfe817b82802b16fac8690dadcda76f54f5nh * Common Development and Distribution License (the "License").
74e20cfe817b82802b16fac8690dadcda76f54f5nh * You may not use this file except in compliance with the License.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
74e20cfe817b82802b16fac8690dadcda76f54f5nh * See the License for the specific language governing permissions
74e20cfe817b82802b16fac8690dadcda76f54f5nh * and limitations under the License.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * When distributing Covered Code, include this CDDL HEADER in each
74e20cfe817b82802b16fac8690dadcda76f54f5nh * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * If applicable, add the following below this CDDL HEADER, with the
74e20cfe817b82802b16fac8690dadcda76f54f5nh * fields enclosed by brackets "[]" replaced with your own identifying
74e20cfe817b82802b16fac8690dadcda76f54f5nh * information: Portions Copyright [yyyy] [name of copyright owner]
74e20cfe817b82802b16fac8690dadcda76f54f5nh * CDDL HEADER END
74e20cfe817b82802b16fac8690dadcda76f54f5nh * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * Use is subject to license terms.
74e20cfe817b82802b16fac8690dadcda76f54f5nh#pragma ident "%Z%%M% %I% %E% SMI"
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern "C" {
74e20cfe817b82802b16fac8690dadcda76f54f5nh * Kernel SDP programming interface. Note that this interface
74e20cfe817b82802b16fac8690dadcda76f54f5nh * is private to Sun and can be changed without notice.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * The version number of the SDP kernel interface. Use it with
74e20cfe817b82802b16fac8690dadcda76f54f5nh * sdp_itf_ver() to verify if the kernel supports the correct
74e20cfe817b82802b16fac8690dadcda76f54f5nh * version of the interface.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * NOTE: do not assume backward compatibility of the interface.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * If the return value of sdp_itf_ver() is different from what
74e20cfe817b82802b16fac8690dadcda76f54f5nh * is expected, do not call any of the routines.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * This struct holds all the upcalls the SDP kernel module will
74e20cfe817b82802b16fac8690dadcda76f54f5nh * invoke for different events. When calling sdp_create() to create
74e20cfe817b82802b16fac8690dadcda76f54f5nh * a SDP handle, the caller must provide this information.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * This struct holds various flow control limits the caller of
74e20cfe817b82802b16fac8690dadcda76f54f5nh * sdp_create() should observe when interacting with SDP.
74e20cfe817b82802b16fac8690dadcda76f54f5nh * The list of routines the SDP kernel module provides.
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_bind(struct sdp_conn_struct_t *conn, struct sockaddr *addr,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern struct sdp_conn_struct_t *sdp_create(void *newhandle,
74e20cfe817b82802b16fac8690dadcda76f54f5nh const sdp_upcalls_t *su, sdp_sockbuf_limits_t *sbl, cred_t *cr,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_disconnect(struct sdp_conn_struct_t *conn, int flags);
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_shutdown(struct sdp_conn_struct_t *conn, int flag);
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_polldata(struct sdp_conn_struct_t *conn, int flag);
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_get_opt(struct sdp_conn_struct_t *conn, int level, int opt,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_getpeername(struct sdp_conn_struct_t *conn,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_getsockname(struct sdp_conn_struct_t *conn,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_itf_ver(int);
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_listen(struct sdp_conn_struct_t *conn, int backlog);
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_send(struct sdp_conn_struct_t *conn, struct msghdr *msg,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_recv(struct sdp_conn_struct_t *conn, struct msghdr *msg,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_set_opt(struct sdp_conn_struct_t *conn, int level, int opt,
74e20cfe817b82802b16fac8690dadcda76f54f5nhextern int sdp_ioctl(struct sdp_conn_struct_t *conn, int cmd, int32_t *value,
74e20cfe817b82802b16fac8690dadcda76f54f5nh/* Flags for sdp_create() */
74e20cfe817b82802b16fac8690dadcda76f54f5nh#endif /* _KERNEL */
74e20cfe817b82802b16fac8690dadcda76f54f5nh#endif /* _INET_SDP_ITF_H */