1*5c51f124SMoriah Waterland /* 2*5c51f124SMoriah Waterland * CDDL HEADER START 3*5c51f124SMoriah Waterland * 4*5c51f124SMoriah Waterland * The contents of this file are subject to the terms of the 5*5c51f124SMoriah Waterland * Common Development and Distribution License (the "License"). 6*5c51f124SMoriah Waterland * You may not use this file except in compliance with the License. 7*5c51f124SMoriah Waterland * 8*5c51f124SMoriah Waterland * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*5c51f124SMoriah Waterland * or http://www.opensolaris.org/os/licensing. 10*5c51f124SMoriah Waterland * See the License for the specific language governing permissions 11*5c51f124SMoriah Waterland * and limitations under the License. 12*5c51f124SMoriah Waterland * 13*5c51f124SMoriah Waterland * When distributing Covered Code, include this CDDL HEADER in each 14*5c51f124SMoriah Waterland * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*5c51f124SMoriah Waterland * If applicable, add the following below this CDDL HEADER, with the 16*5c51f124SMoriah Waterland * fields enclosed by brackets "[]" replaced with your own identifying 17*5c51f124SMoriah Waterland * information: Portions Copyright [yyyy] [name of copyright owner] 18*5c51f124SMoriah Waterland * 19*5c51f124SMoriah Waterland * CDDL HEADER END 20*5c51f124SMoriah Waterland */ 21*5c51f124SMoriah Waterland 22*5c51f124SMoriah Waterland /* 23*5c51f124SMoriah Waterland * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 24*5c51f124SMoriah Waterland * Use is subject to license terms. 25*5c51f124SMoriah Waterland */ 26*5c51f124SMoriah Waterland 27*5c51f124SMoriah Waterland #ifndef __PKG_PKGINSTALL_H__ 28*5c51f124SMoriah Waterland #define __PKG_PKGINSTALL_H__ 29*5c51f124SMoriah Waterland 30*5c51f124SMoriah Waterland 31*5c51f124SMoriah Waterland #ifdef __cplusplus 32*5c51f124SMoriah Waterland extern "C" { 33*5c51f124SMoriah Waterland #endif 34*5c51f124SMoriah Waterland 35*5c51f124SMoriah Waterland /* cppath() variables */ 36*5c51f124SMoriah Waterland #define DIR_DISPLAY 0x0001 /* display implied directories created */ 37*5c51f124SMoriah Waterland #define MODE_SRC 0x0002 /* set mode to mode of source file */ 38*5c51f124SMoriah Waterland #define MODE_SET 0x0004 /* set mode to mode passed in as argument */ 39*5c51f124SMoriah Waterland #define MODE_0666 0x0008 /* force mode to 0666 */ 40*5c51f124SMoriah Waterland 41*5c51f124SMoriah Waterland /* special stdin for request scripts */ 42*5c51f124SMoriah Waterland #define REQ_STDIN "/dev/tty" 43*5c51f124SMoriah Waterland 44*5c51f124SMoriah Waterland /* response file writability status */ 45*5c51f124SMoriah Waterland #define RESP_WR 0 /* Response file is writable. */ 46*5c51f124SMoriah Waterland #define RESP_RO 1 /* Read only. */ 47*5c51f124SMoriah Waterland 48*5c51f124SMoriah Waterland #ifdef __STDC__ 49*5c51f124SMoriah Waterland #ifndef __P 50*5c51f124SMoriah Waterland #define __P(x) x 51*5c51f124SMoriah Waterland #endif 52*5c51f124SMoriah Waterland #else 53*5c51f124SMoriah Waterland #ifndef __P 54*5c51f124SMoriah Waterland #define __P(x) () 55*5c51f124SMoriah Waterland #endif 56*5c51f124SMoriah Waterland #endif /* __STDC__ */ 57*5c51f124SMoriah Waterland 58*5c51f124SMoriah Waterland extern int cppath __P((int ctrl, char *f1, char *f2, mode_t mode)); 59*5c51f124SMoriah Waterland extern void backup __P((char *path, int mode)); 60*5c51f124SMoriah Waterland extern void pkgvolume __P((struct pkgdev *devp, char *pkg, int part, 61*5c51f124SMoriah Waterland int nparts)); 62*5c51f124SMoriah Waterland extern void quit __P((int exitval)); 63*5c51f124SMoriah Waterland extern void ckreturn __P((int retcode, char *msg)); 64*5c51f124SMoriah Waterland extern int sortmap __P((struct cfextra ***extlist, VFP_T *pkgmapVfp, 65*5c51f124SMoriah Waterland VFP_T *mapvfp, VFP_T *tmpvfp, char *a_zoneName)); 66*5c51f124SMoriah Waterland extern void merginfo __P((struct cl_attr **pclass, int install_from_pspool)); 67*5c51f124SMoriah Waterland extern void set_infoloc __P((char *real_pkgsav)); 68*5c51f124SMoriah Waterland extern int pkgenv __P((char *pkginst, char *p_pkginfo, char *p_pkgmap)); 69*5c51f124SMoriah Waterland extern void instvol __P((struct cfextra **extlist, char *srcinst, int part, 70*5c51f124SMoriah Waterland int nparts, VFP_T **a_cfVfp, VFP_T **a_cfTmpVfp, 71*5c51f124SMoriah Waterland char **r_updated, char **r_skipped, 72*5c51f124SMoriah Waterland char *a_zoneName)); 73*5c51f124SMoriah Waterland extern int reqexec __P((int update, char *script, int non_abi_scripts, 74*5c51f124SMoriah Waterland boolean_t enable_root_user)); 75*5c51f124SMoriah Waterland extern int chkexec __P((int update, char *script)); 76*5c51f124SMoriah Waterland extern int rdonly_respfile __P((void)); 77*5c51f124SMoriah Waterland extern int is_a_respfile __P((void)); 78*5c51f124SMoriah Waterland extern char *get_respfile __P((void)); 79*5c51f124SMoriah Waterland extern int set_respfile __P((char *respfile, char *pkginst, 80*5c51f124SMoriah Waterland int resp_stat)); 81*5c51f124SMoriah Waterland extern void predepend __P((char *oldpkg)); 82*5c51f124SMoriah Waterland extern void cksetPreinstallCheck __P((boolean_t a_preinstallCheck)); 83*5c51f124SMoriah Waterland extern void cksetZoneName __P((char *a_zoneName)); 84*5c51f124SMoriah Waterland extern int cksetuid __P((void)); 85*5c51f124SMoriah Waterland extern int ckconflct __P((void)); 86*5c51f124SMoriah Waterland extern int ckpkgdirs __P((void)); 87*5c51f124SMoriah Waterland extern int ckspace __P((void)); 88*5c51f124SMoriah Waterland extern int ckdepend __P((void)); 89*5c51f124SMoriah Waterland extern int ckrunlevel __P((void)); 90*5c51f124SMoriah Waterland extern int ckpartial __P((void)); 91*5c51f124SMoriah Waterland extern int ckpkgfiles __P((void)); 92*5c51f124SMoriah Waterland extern int ckpriv __P((void)); 93*5c51f124SMoriah Waterland extern void is_WOS_arch __P((void)); 94*5c51f124SMoriah Waterland extern void ckdirs __P((void)); 95*5c51f124SMoriah Waterland extern char *getinst __P((int *updatingExisting, struct pkginfo *info, 96*5c51f124SMoriah Waterland int npkgs, boolean_t a_preinstallCheck)); 97*5c51f124SMoriah Waterland extern int is_samepkg __P((void)); 98*5c51f124SMoriah Waterland extern int dockspace __P((char *spacefile)); 99*5c51f124SMoriah Waterland 100*5c51f124SMoriah Waterland extern int special_contents_add(int, struct cfextra **, const char *); 101*5c51f124SMoriah Waterland extern boolean_t rm_all_pkg_entries(char *, char *); 102*5c51f124SMoriah Waterland 103*5c51f124SMoriah Waterland #ifdef __cplusplus 104*5c51f124SMoriah Waterland } 105*5c51f124SMoriah Waterland #endif 106*5c51f124SMoriah Waterland 107*5c51f124SMoriah Waterland #endif /* __PKG_PKGINSTALL_H__ */ 108