1bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman/* $OpenBSD$ */ 2bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman/* 3bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * Copyright (c) 2011 Damien Miller <djm@mindrot.org> 4bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * 5bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * Permission to use, copy, modify, and distribute this software for any 6bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * purpose with or without fee is hereby granted, provided that the above 7bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * copyright notice and this permission notice appear in all copies. 8bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * 9bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman */ 17bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 18bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include "includes.h" 19bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 20bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#ifdef SANDBOX_NULL 21bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 22bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <sys/types.h> 23bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 24bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <errno.h> 25bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <stdarg.h> 26bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <stdio.h> 27bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <stdlib.h> 28bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <string.h> 29bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include <unistd.h> 30bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 31bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include "log.h" 32bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include "ssh-sandbox.h" 33bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#include "xmalloc.h" 34bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 35bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman/* dummy sandbox */ 36bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 37bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanstruct ssh_sandbox { 38bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman int junk; 39bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman}; 40bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 41bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanstruct ssh_sandbox * 42d059297112922cabb0c674840589be8db821fd9aAdam Langleyssh_sandbox_init(struct monitor *monitor) 43bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman{ 44bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman struct ssh_sandbox *box; 45bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 46bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman /* 47bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * Strictly, we don't need to maintain any state here but we need 48bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman * to return non-NULL to satisfy the API. 49bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman */ 50bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman box = xcalloc(1, sizeof(*box)); 51bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman return box; 52bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman} 53bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 54bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanvoid 55bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanssh_sandbox_child(struct ssh_sandbox *box) 56bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman{ 57bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman /* Nothing to do here */ 58bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman} 59bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 60bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanvoid 61bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanssh_sandbox_parent_finish(struct ssh_sandbox *box) 62bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman{ 63bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman free(box); 64bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman} 65bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 66bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanvoid 67bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartmanssh_sandbox_parent_preauth(struct ssh_sandbox *box, pid_t child_pid) 68bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman{ 69bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman /* Nothing to do here */ 70bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman} 71bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman 72bd77cf78387b72b7b3ea870459077672bf75c3b5Greg Hartman#endif /* SANDBOX_NULL */ 73