da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin########################################################################
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# This software is part of the ast package #
3e14f97f673e8a630f076077de35afdd43dc1587Roger A. Faulkner# Copyright (c) 1985-2010 AT&T Intellectual Property #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# and is licensed under the #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Common Public License, Version 1.0 #
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin# by AT&T Intellectual Property #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# A copy of the License is available at #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# http://www.opensource.org/licenses/cpl1.0.txt #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Information and Software Systems Research #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# AT&T Research #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Florham Park NJ #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Glenn Fowler <gsf@research.att.com> #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# David Korn <dgk@research.att.com> #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Phong Vo <kpv@research.att.com> #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# #
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin########################################################################
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin: generate preroot features
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chincase $# in
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin0) ;;
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin*) eval $1
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin shift
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin ;;
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinesac
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinif /etc/preroot / /bin/echo >/dev/null
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinthen cat <<!
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#pragma prototyped
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define FS_PREROOT 1 /* preroot enabled */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define PR_BASE "CCS" /* preroot base env var */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define PR_COMMAND "/etc/preroot" /* the preroot command */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define PR_REAL "/dev/.." /* real root pathname */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#define PR_SILENT "CCSQUIET" /* no command trace */
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinextern char* getpreroot(char*, const char*);
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinextern int ispreroot(const char*);
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinextern int realopen(const char*, int, int);
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinextern void setpreroot(char**, const char*);
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin!
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinelse echo "/* preroot not enabled */"
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinfi