138451Smsmith/* 238451Smsmith * Copyright (c) 2006 Darren Tucker. All rights reserved. 338451Smsmith * 438451Smsmith * Permission to use, copy, modify, and distribute this software for any 538451Smsmith * purpose with or without fee is hereby granted, provided that the above 638451Smsmith * copyright notice and this permission notice appear in all copies. 738451Smsmith * 838451Smsmith * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 938451Smsmith * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 1038451Smsmith * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 1138451Smsmith * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 1238451Smsmith * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 1338451Smsmith * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 1438451Smsmith * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 1538451Smsmith */ 1638451Smsmith 1738451Smsmith#include <sys/types.h> 1838451Smsmith 1938451Smsmith#include <pwd.h> 2038451Smsmith 2138451Smsmithvoid platform_pre_listen(void); 2238451Smsmithvoid platform_pre_fork(void); 2338451Smsmithvoid platform_pre_restart(void); 2438451Smsmithvoid platform_post_fork_parent(pid_t child_pid); 2538451Smsmithvoid platform_post_fork_child(void); 2638451Smsmithint platform_privileged_uidswap(void); 2738451Smsmithvoid platform_setusercontext(struct passwd *); 2838451Smsmithvoid platform_setusercontext_post_groups(struct passwd *); 2938451Smsmithchar *platform_get_krb5_client(const char *); 3038451Smsmithchar *platform_krb5_get_principal_name(const char *); 3138451Smsmithint platform_sys_dir_uid(uid_t); 3238451Smsmithvoid platform_disable_tracing(int); 3338451Smsmith 3484221Sdillon/* in platform-pledge.c */ 3584221Sdillonvoid platform_pledge_agent(void); 3684221Sdillonvoid platform_pledge_sftp_server(void); 3738451Smsmithvoid platform_pledge_mux(void); 3838451Smsmith