1ab0c29afSRick Macklem /*- 2ab0c29afSRick Macklem * Copyright (c) 2008 Isilon Inc http://www.isilon.com/ 3ab0c29afSRick Macklem * Authors: Doug Rabson <dfr@rabson.org> 4ab0c29afSRick Macklem * Developed with Red Inc: Alfred Perlstein <alfred@freebsd.org> 5ab0c29afSRick Macklem * 6ab0c29afSRick Macklem * Redistribution and use in source and binary forms, with or without 7ab0c29afSRick Macklem * modification, are permitted provided that the following conditions 8ab0c29afSRick Macklem * are met: 9ab0c29afSRick Macklem * 1. Redistributions of source code must retain the above copyright 10ab0c29afSRick Macklem * notice, this list of conditions and the following disclaimer. 11ab0c29afSRick Macklem * 2. Redistributions in binary form must reproduce the above copyright 12ab0c29afSRick Macklem * notice, this list of conditions and the following disclaimer in the 13ab0c29afSRick Macklem * documentation and/or other materials provided with the distribution. 14ab0c29afSRick Macklem * 15ab0c29afSRick Macklem * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16ab0c29afSRick Macklem * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17ab0c29afSRick Macklem * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18ab0c29afSRick Macklem * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19ab0c29afSRick Macklem * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20ab0c29afSRick Macklem * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21ab0c29afSRick Macklem * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22ab0c29afSRick Macklem * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23ab0c29afSRick Macklem * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24ab0c29afSRick Macklem * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25ab0c29afSRick Macklem * SUCH DAMAGE. 26ab0c29afSRick Macklem */ 27ab0c29afSRick Macklem 28ab0c29afSRick Macklem /* Modified from gssd.x for the server side of RPC-over-TLS. */ 29ab0c29afSRick Macklem 3042eec520SGleb Smirnoff struct rpctlssd_connect_arg { 3142eec520SGleb Smirnoff uint64_t socookie; 3242eec520SGleb Smirnoff }; 33ab0c29afSRick Macklem 34ab0c29afSRick Macklem struct rpctlssd_connect_res { 35ab0c29afSRick Macklem uint32_t flags; 36ab0c29afSRick Macklem uint32_t uid; 37ab0c29afSRick Macklem uint32_t gid<>; 38ab0c29afSRick Macklem }; 39ab0c29afSRick Macklem 40ab0c29afSRick Macklem struct rpctlssd_handlerecord_arg { 41*af805255SGleb Smirnoff uint64_t socookie; 42ab0c29afSRick Macklem }; 43ab0c29afSRick Macklem 44ab0c29afSRick Macklem struct rpctlssd_handlerecord_res { 45ab0c29afSRick Macklem uint32_t reterr; 46ab0c29afSRick Macklem }; 47ab0c29afSRick Macklem 48ab0c29afSRick Macklem struct rpctlssd_disconnect_arg { 49*af805255SGleb Smirnoff uint64_t socookie; 50ab0c29afSRick Macklem }; 51ab0c29afSRick Macklem 52ab0c29afSRick Macklem struct rpctlssd_disconnect_res { 53ab0c29afSRick Macklem uint32_t reterr; 54ab0c29afSRick Macklem }; 55ab0c29afSRick Macklem 56ab0c29afSRick Macklem program RPCTLSSD { 57ab0c29afSRick Macklem version RPCTLSSDVERS { 58ab0c29afSRick Macklem void RPCTLSSD_NULL(void) = 0; 59ab0c29afSRick Macklem 60ab0c29afSRick Macklem rpctlssd_connect_res 6142eec520SGleb Smirnoff RPCTLSSD_CONNECT(rpctlssd_connect_arg) = 1; 62ab0c29afSRick Macklem 63ab0c29afSRick Macklem rpctlssd_handlerecord_res 64ab0c29afSRick Macklem RPCTLSSD_HANDLERECORD(rpctlssd_handlerecord_arg) = 2; 65ab0c29afSRick Macklem 66ab0c29afSRick Macklem rpctlssd_disconnect_res 67ab0c29afSRick Macklem RPCTLSSD_DISCONNECT(rpctlssd_disconnect_arg) = 3; 68*af805255SGleb Smirnoff } = 2; 69ab0c29afSRick Macklem } = 0x40677375; 70