Remove lib/kdfs from vendor branch: we do not build it, and it will not
be included in future imports.
This commit is contained in:
parent
412870c336
commit
1473734316
@ -1,28 +0,0 @@
|
||||
2002-08-12 Johan Danielsson <joda@pdc.kth.se>
|
||||
|
||||
* k5dfspag.c: don't use ## in string concatenation
|
||||
|
||||
2002-03-11 Assar Westerlund <assar@sics.se>
|
||||
|
||||
* Makefile.am (libkdfs_la_LDFLAGS): set versoin to 0:2:0
|
||||
|
||||
2002-01-23 Assar Westerlund <assar@sics.se>
|
||||
|
||||
* k5dfspag.c: use SIG_DFL and not SIG_IGN for SIGCHLD.
|
||||
from "Todd C. Miller" <Todd.Miller@courtesan.com>
|
||||
|
||||
2001-02-07 Assar Westerlund <assar@sics.se>
|
||||
|
||||
* k5dfspag.c: add config.h
|
||||
|
||||
2000-12-11 Assar Westerlund <assar@sics.se>
|
||||
|
||||
* Makefile.am (libkdfs_la_LDFLAGS): set version to 0:1:0
|
||||
|
||||
2000-07-02 Assar Westerlund <assar@sics.se>
|
||||
|
||||
* k5dfspag.c: use krb5.h instead of krb5_locl.h
|
||||
|
||||
* initial import from Ake Sandgren <ake@cs.umu.se>
|
||||
|
||||
|
@ -1,10 +0,0 @@
|
||||
# $Id: Makefile.am,v 1.3 2002/03/10 23:53:22 assar Exp $
|
||||
|
||||
include $(top_srcdir)/Makefile.am.common
|
||||
|
||||
lib_LTLIBRARIES = libkdfs.la
|
||||
|
||||
libkdfs_la_SOURCES = \
|
||||
k5dfspag.c
|
||||
|
||||
libkdfs_la_LDFLAGS = -version-info 0:2:0
|
@ -1,713 +0,0 @@
|
||||
# Makefile.in generated by automake 1.7.9 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
||||
# Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
|
||||
# $Id: Makefile.am,v 1.3 2002/03/10 23:53:22 assar Exp $
|
||||
|
||||
# $Id: Makefile.am.common,v 1.5 2002/05/19 18:35:37 joda Exp $
|
||||
|
||||
# $Id: Makefile.am.common,v 1.37.2.2 2003/10/13 13:15:39 joda Exp $
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ../..
|
||||
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
host_triplet = @host@
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AIX4_FALSE = @AIX4_FALSE@
|
||||
AIX4_TRUE = @AIX4_TRUE@
|
||||
AIX_DYNAMIC_AFS_FALSE = @AIX_DYNAMIC_AFS_FALSE@
|
||||
AIX_DYNAMIC_AFS_TRUE = @AIX_DYNAMIC_AFS_TRUE@
|
||||
AIX_EXTRA_KAFS = @AIX_EXTRA_KAFS@
|
||||
AIX_FALSE = @AIX_FALSE@
|
||||
AIX_TRUE = @AIX_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CANONICAL_HOST = @CANONICAL_HOST@
|
||||
CATMAN = @CATMAN@
|
||||
CATMANEXT = @CATMANEXT@
|
||||
CATMAN_FALSE = @CATMAN_FALSE@
|
||||
CATMAN_TRUE = @CATMAN_TRUE@
|
||||
CC = @CC@
|
||||
CFLAGS = @CFLAGS@
|
||||
COMPILE_ET = @COMPILE_ET@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DBLIB = @DBLIB@
|
||||
DCE_FALSE = @DCE_FALSE@
|
||||
DCE_TRUE = @DCE_TRUE@
|
||||
DEFS = @DEFS@
|
||||
DIR_com_err = @DIR_com_err@
|
||||
DIR_des = @DIR_des@
|
||||
DIR_roken = @DIR_roken@
|
||||
ECHO = @ECHO@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
EXTRA_LIB45 = @EXTRA_LIB45@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
GROFF = @GROFF@
|
||||
HAVE_DB1_FALSE = @HAVE_DB1_FALSE@
|
||||
HAVE_DB1_TRUE = @HAVE_DB1_TRUE@
|
||||
HAVE_DB3_FALSE = @HAVE_DB3_FALSE@
|
||||
HAVE_DB3_TRUE = @HAVE_DB3_TRUE@
|
||||
HAVE_DLOPEN_FALSE = @HAVE_DLOPEN_FALSE@
|
||||
HAVE_DLOPEN_TRUE = @HAVE_DLOPEN_TRUE@
|
||||
HAVE_NDBM_FALSE = @HAVE_NDBM_FALSE@
|
||||
HAVE_NDBM_TRUE = @HAVE_NDBM_TRUE@
|
||||
HAVE_OPENSSL_FALSE = @HAVE_OPENSSL_FALSE@
|
||||
HAVE_OPENSSL_TRUE = @HAVE_OPENSSL_TRUE@
|
||||
HAVE_X_FALSE = @HAVE_X_FALSE@
|
||||
HAVE_X_TRUE = @HAVE_X_TRUE@
|
||||
INCLUDES_roken = @INCLUDES_roken@
|
||||
INCLUDE_des = @INCLUDE_des@
|
||||
INCLUDE_hesiod = @INCLUDE_hesiod@
|
||||
|
||||
INCLUDE_krb4 = @INCLUDE_krb4@
|
||||
|
||||
INCLUDE_openldap = @INCLUDE_openldap@
|
||||
|
||||
INCLUDE_readline = @INCLUDE_readline@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
IRIX_FALSE = @IRIX_FALSE@
|
||||
IRIX_TRUE = @IRIX_TRUE@
|
||||
KRB4_FALSE = @KRB4_FALSE@
|
||||
KRB4_TRUE = @KRB4_TRUE@
|
||||
KRB5_FALSE = @KRB5_FALSE@
|
||||
KRB5_TRUE = @KRB5_TRUE@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LEX = @LEX@
|
||||
|
||||
LEXLIB = @LEXLIB@
|
||||
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_AUTH_SUBDIRS = @LIB_AUTH_SUBDIRS@
|
||||
LIB_NDBM = @LIB_NDBM@
|
||||
LIB_XauFileName = @LIB_XauFileName@
|
||||
|
||||
LIB_XauReadAuth = @LIB_XauReadAuth@
|
||||
LIB_XauWriteAuth = @LIB_XauWriteAuth@
|
||||
LIB_bswap16 = @LIB_bswap16@
|
||||
LIB_bswap32 = @LIB_bswap32@
|
||||
LIB_com_err = @LIB_com_err@
|
||||
LIB_com_err_a = @LIB_com_err_a@
|
||||
LIB_com_err_so = @LIB_com_err_so@
|
||||
LIB_crypt = @LIB_crypt@
|
||||
LIB_db_create = @LIB_db_create@
|
||||
LIB_dbm_firstkey = @LIB_dbm_firstkey@
|
||||
LIB_dbopen = @LIB_dbopen@
|
||||
LIB_des = @LIB_des@
|
||||
LIB_des_a = @LIB_des_a@
|
||||
LIB_des_appl = @LIB_des_appl@
|
||||
LIB_des_so = @LIB_des_so@
|
||||
LIB_dlopen = @LIB_dlopen@
|
||||
LIB_dn_expand = @LIB_dn_expand@
|
||||
LIB_el_init = @LIB_el_init@
|
||||
LIB_freeaddrinfo = @LIB_freeaddrinfo@
|
||||
LIB_gai_strerror = @LIB_gai_strerror@
|
||||
LIB_getaddrinfo = @LIB_getaddrinfo@
|
||||
LIB_gethostbyname = @LIB_gethostbyname@
|
||||
LIB_gethostbyname2 = @LIB_gethostbyname2@
|
||||
LIB_getnameinfo = @LIB_getnameinfo@
|
||||
LIB_getpwnam_r = @LIB_getpwnam_r@
|
||||
LIB_getsockopt = @LIB_getsockopt@
|
||||
LIB_hesiod = @LIB_hesiod@
|
||||
LIB_hstrerror = @LIB_hstrerror@
|
||||
LIB_kdb = @LIB_kdb@
|
||||
LIB_krb4 = @LIB_krb4@
|
||||
LIB_krb_disable_debug = @LIB_krb_disable_debug@
|
||||
LIB_krb_enable_debug = @LIB_krb_enable_debug@
|
||||
LIB_krb_get_kdc_time_diff = @LIB_krb_get_kdc_time_diff@
|
||||
LIB_krb_get_our_ip_for_realm = @LIB_krb_get_our_ip_for_realm@
|
||||
LIB_krb_kdctimeofday = @LIB_krb_kdctimeofday@
|
||||
LIB_loadquery = @LIB_loadquery@
|
||||
LIB_logout = @LIB_logout@
|
||||
LIB_logwtmp = @LIB_logwtmp@
|
||||
LIB_openldap = @LIB_openldap@
|
||||
LIB_openpty = @LIB_openpty@
|
||||
LIB_otp = @LIB_otp@
|
||||
LIB_pidfile = @LIB_pidfile@
|
||||
LIB_readline = @LIB_readline@
|
||||
LIB_res_nsearch = @LIB_res_nsearch@
|
||||
LIB_res_search = @LIB_res_search@
|
||||
LIB_roken = @LIB_roken@
|
||||
LIB_security = @LIB_security@
|
||||
LIB_setsockopt = @LIB_setsockopt@
|
||||
LIB_socket = @LIB_socket@
|
||||
LIB_syslog = @LIB_syslog@
|
||||
LIB_tgetent = @LIB_tgetent@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
NEED_WRITEAUTH_FALSE = @NEED_WRITEAUTH_FALSE@
|
||||
NEED_WRITEAUTH_TRUE = @NEED_WRITEAUTH_TRUE@
|
||||
NROFF = @NROFF@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTP_FALSE = @OTP_FALSE@
|
||||
OTP_TRUE = @OTP_TRUE@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
VOID_RETSIGTYPE = @VOID_RETSIGTYPE@
|
||||
WFLAGS = @WFLAGS@
|
||||
WFLAGS_NOIMPLICITINT = @WFLAGS_NOIMPLICITINT@
|
||||
WFLAGS_NOUNUSED = @WFLAGS_NOUNUSED@
|
||||
X_CFLAGS = @X_CFLAGS@
|
||||
X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
||||
X_LIBS = @X_LIBS@
|
||||
X_PRE_LIBS = @X_PRE_LIBS@
|
||||
YACC = @YACC@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
datadir = @datadir@
|
||||
do_roken_rename_FALSE = @do_roken_rename_FALSE@
|
||||
do_roken_rename_TRUE = @do_roken_rename_TRUE@
|
||||
dpagaix_cflags = @dpagaix_cflags@
|
||||
dpagaix_ldadd = @dpagaix_ldadd@
|
||||
dpagaix_ldflags = @dpagaix_ldflags@
|
||||
el_compat_FALSE = @el_compat_FALSE@
|
||||
el_compat_TRUE = @el_compat_TRUE@
|
||||
exec_prefix = @exec_prefix@
|
||||
have_err_h_FALSE = @have_err_h_FALSE@
|
||||
have_err_h_TRUE = @have_err_h_TRUE@
|
||||
have_fnmatch_h_FALSE = @have_fnmatch_h_FALSE@
|
||||
have_fnmatch_h_TRUE = @have_fnmatch_h_TRUE@
|
||||
have_glob_h_FALSE = @have_glob_h_FALSE@
|
||||
have_glob_h_TRUE = @have_glob_h_TRUE@
|
||||
have_ifaddrs_h_FALSE = @have_ifaddrs_h_FALSE@
|
||||
have_ifaddrs_h_TRUE = @have_ifaddrs_h_TRUE@
|
||||
have_vis_h_FALSE = @have_vis_h_FALSE@
|
||||
have_vis_h_TRUE = @have_vis_h_TRUE@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
oldincludedir = @oldincludedir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
|
||||
SUFFIXES = .et .h .x .1 .3 .5 .8 .cat1 .cat3 .cat5 .cat8
|
||||
|
||||
INCLUDES = -I$(top_builddir)/include $(INCLUDES_roken)
|
||||
|
||||
@do_roken_rename_TRUE@ROKEN_RENAME = -DROKEN_RENAME
|
||||
|
||||
AM_CFLAGS = $(WFLAGS)
|
||||
|
||||
CP = cp
|
||||
|
||||
buildinclude = $(top_builddir)/include
|
||||
LIB_getattr = @LIB_getattr@
|
||||
LIB_getpwent_r = @LIB_getpwent_r@
|
||||
LIB_odm_initialize = @LIB_odm_initialize@
|
||||
LIB_setpcred = @LIB_setpcred@
|
||||
|
||||
HESIODLIB = @HESIODLIB@
|
||||
HESIODINCLUDE = @HESIODINCLUDE@
|
||||
|
||||
NROFF_MAN = groff -mandoc -Tascii
|
||||
|
||||
LIB_kafs = $(top_builddir)/lib/kafs/libkafs.la $(AIX_EXTRA_KAFS)
|
||||
|
||||
@KRB5_TRUE@LIB_krb5 = $(top_builddir)/lib/krb5/libkrb5.la \
|
||||
@KRB5_TRUE@ $(top_builddir)/lib/asn1/libasn1.la
|
||||
|
||||
@KRB5_TRUE@LIB_gssapi = $(top_builddir)/lib/gssapi/libgssapi.la
|
||||
|
||||
@DCE_TRUE@LIB_kdfs = $(top_builddir)/lib/kdfs/libkdfs.la
|
||||
|
||||
lib_LTLIBRARIES = libkdfs.la
|
||||
|
||||
libkdfs_la_SOURCES = \
|
||||
k5dfspag.c
|
||||
|
||||
|
||||
libkdfs_la_LDFLAGS = -version-info 0:2:0
|
||||
subdir = lib/kdfs
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = $(top_builddir)/include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||
|
||||
libkdfs_la_LIBADD =
|
||||
am_libkdfs_la_OBJECTS = k5dfspag.lo
|
||||
libkdfs_la_OBJECTS = $(am_libkdfs_la_OBJECTS)
|
||||
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include
|
||||
depcomp =
|
||||
am__depfiles_maybe =
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
|
||||
$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
DIST_SOURCES = $(libkdfs_la_SOURCES)
|
||||
DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.am.common \
|
||||
$(top_srcdir)/cf/Makefile.am.common ChangeLog Makefile.am
|
||||
SOURCES = $(libkdfs_la_SOURCES)
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .et .h .x .1 .3 .5 .8 .cat1 .cat3 .cat5 .cat8 .c .lo .o .obj
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/Makefile.am.common $(top_srcdir)/cf/Makefile.am.common $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign lib/kdfs/Makefile
|
||||
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
|
||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
$(mkinstalldirs) $(DESTDIR)$(libdir)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$f"; \
|
||||
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$f; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-libLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p="`echo $$p | sed -e 's|^.*/||'`"; \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
|
||||
done
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" = "$$p" && dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libkdfs.la: $(libkdfs_la_OBJECTS) $(libkdfs_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(libdir) $(libkdfs_la_LDFLAGS) $(libkdfs_la_OBJECTS) $(libkdfs_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT) core *.core
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
.c.o:
|
||||
$(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
|
||||
|
||||
.c.obj:
|
||||
$(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
|
||||
|
||||
.c.lo:
|
||||
$(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
|
||||
ETAGS = etags
|
||||
ETAGSFLAGS =
|
||||
|
||||
CTAGS = ctags
|
||||
CTAGSFLAGS =
|
||||
|
||||
tags: TAGS
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|
||||
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
|
||||
top_distdir = ../..
|
||||
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(mkinstalldirs) $(distdir)/../.. $(distdir)/../../cf
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkinstalldirs) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$(top_distdir)" distdir="$(distdir)" \
|
||||
dist-hook
|
||||
check-am: all-am
|
||||
$(MAKE) $(AM_MAKEFLAGS) check-local
|
||||
check: check-am
|
||||
all-am: Makefile $(LTLIBRARIES) all-local
|
||||
|
||||
installdirs:
|
||||
$(mkinstalldirs) $(DESTDIR)$(libdir)
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
|
||||
|
||||
install-exec-am: install-libLTLIBRARIES
|
||||
@$(NORMAL_INSTALL)
|
||||
$(MAKE) $(AM_MAKEFLAGS) install-exec-hook
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am all-local check check-am check-local \
|
||||
clean clean-generic clean-libLTLIBRARIES clean-libtool ctags \
|
||||
distclean distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am info info-am install \
|
||||
install-am install-data install-data-am install-exec \
|
||||
install-exec-am install-info install-info-am \
|
||||
install-libLTLIBRARIES install-man install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-info-am \
|
||||
uninstall-libLTLIBRARIES
|
||||
|
||||
|
||||
install-suid-programs:
|
||||
@foo='$(bin_SUIDS)'; \
|
||||
for file in $$foo; do \
|
||||
x=$(DESTDIR)$(bindir)/$$file; \
|
||||
if chown 0:0 $$x && chmod u+s $$x; then :; else \
|
||||
echo "*"; \
|
||||
echo "* Failed to install $$x setuid root"; \
|
||||
echo "*"; \
|
||||
fi; done
|
||||
|
||||
install-exec-hook: install-suid-programs
|
||||
|
||||
install-build-headers:: $(include_HEADERS) $(build_HEADERZ)
|
||||
@foo='$(include_HEADERS) $(nodist_include_HEADERS) $(build_HEADERZ)'; \
|
||||
for f in $$foo; do \
|
||||
f=`basename $$f`; \
|
||||
if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \
|
||||
else file="$$f"; fi; \
|
||||
if cmp -s $$file $(buildinclude)/$$f 2> /dev/null ; then \
|
||||
: ; else \
|
||||
echo " $(CP) $$file $(buildinclude)/$$f"; \
|
||||
$(CP) $$file $(buildinclude)/$$f; \
|
||||
fi ; \
|
||||
done
|
||||
|
||||
all-local: install-build-headers
|
||||
|
||||
check-local::
|
||||
@if test '$(CHECK_LOCAL)'; then \
|
||||
foo='$(CHECK_LOCAL)'; else \
|
||||
foo='$(PROGRAMS)'; fi; \
|
||||
if test "$$foo"; then \
|
||||
failed=0; all=0; \
|
||||
for i in $$foo; do \
|
||||
all=`expr $$all + 1`; \
|
||||
if ./$$i --version > /dev/null 2>&1; then \
|
||||
echo "PASS: $$i"; \
|
||||
else \
|
||||
echo "FAIL: $$i"; \
|
||||
failed=`expr $$failed + 1`; \
|
||||
fi; \
|
||||
done; \
|
||||
if test "$$failed" -eq 0; then \
|
||||
banner="All $$all tests passed"; \
|
||||
else \
|
||||
banner="$$failed of $$all tests failed"; \
|
||||
fi; \
|
||||
dashes=`echo "$$banner" | sed s/./=/g`; \
|
||||
echo "$$dashes"; \
|
||||
echo "$$banner"; \
|
||||
echo "$$dashes"; \
|
||||
test "$$failed" -eq 0; \
|
||||
fi
|
||||
|
||||
.x.c:
|
||||
@cmp -s $< $@ 2> /dev/null || cp $< $@
|
||||
#NROFF_MAN = nroff -man
|
||||
.1.cat1:
|
||||
$(NROFF_MAN) $< > $@
|
||||
.3.cat3:
|
||||
$(NROFF_MAN) $< > $@
|
||||
.5.cat5:
|
||||
$(NROFF_MAN) $< > $@
|
||||
.8.cat8:
|
||||
$(NROFF_MAN) $< > $@
|
||||
|
||||
dist-cat1-mans:
|
||||
@foo='$(man1_MANS)'; \
|
||||
bar='$(man_MANS)'; \
|
||||
for i in $$bar; do \
|
||||
case $$i in \
|
||||
*.1) foo="$$foo $$i";; \
|
||||
esac; done ;\
|
||||
for i in $$foo; do \
|
||||
x=`echo $$i | sed 's/\.[^.]*$$/.cat1/'`; \
|
||||
echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
|
||||
$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
|
||||
done
|
||||
|
||||
dist-cat3-mans:
|
||||
@foo='$(man3_MANS)'; \
|
||||
bar='$(man_MANS)'; \
|
||||
for i in $$bar; do \
|
||||
case $$i in \
|
||||
*.3) foo="$$foo $$i";; \
|
||||
esac; done ;\
|
||||
for i in $$foo; do \
|
||||
x=`echo $$i | sed 's/\.[^.]*$$/.cat3/'`; \
|
||||
echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
|
||||
$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
|
||||
done
|
||||
|
||||
dist-cat5-mans:
|
||||
@foo='$(man5_MANS)'; \
|
||||
bar='$(man_MANS)'; \
|
||||
for i in $$bar; do \
|
||||
case $$i in \
|
||||
*.5) foo="$$foo $$i";; \
|
||||
esac; done ;\
|
||||
for i in $$foo; do \
|
||||
x=`echo $$i | sed 's/\.[^.]*$$/.cat5/'`; \
|
||||
echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
|
||||
$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
|
||||
done
|
||||
|
||||
dist-cat8-mans:
|
||||
@foo='$(man8_MANS)'; \
|
||||
bar='$(man_MANS)'; \
|
||||
for i in $$bar; do \
|
||||
case $$i in \
|
||||
*.8) foo="$$foo $$i";; \
|
||||
esac; done ;\
|
||||
for i in $$foo; do \
|
||||
x=`echo $$i | sed 's/\.[^.]*$$/.cat8/'`; \
|
||||
echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
|
||||
$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
|
||||
done
|
||||
|
||||
dist-hook: dist-cat1-mans dist-cat3-mans dist-cat5-mans dist-cat8-mans
|
||||
|
||||
install-cat-mans:
|
||||
$(SHELL) $(top_srcdir)/cf/install-catman.sh "$(INSTALL_DATA)" "$(mkinstalldirs)" "$(srcdir)" "$(DESTDIR)$(mandir)" '$(CATMANEXT)' $(man_MANS) $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS)
|
||||
|
||||
install-data-hook: install-cat-mans
|
||||
|
||||
.et.h:
|
||||
$(COMPILE_ET) $<
|
||||
.et.c:
|
||||
$(COMPILE_ET) $<
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
@ -1,368 +0,0 @@
|
||||
/*
|
||||
* lib/krb5/os/k5dfspag.c
|
||||
*
|
||||
* New Kerberos module to issue the DFS PAG syscalls.
|
||||
* It also contains the routine to fork and exec the
|
||||
* k5dcecon routine to do most of the work.
|
||||
*
|
||||
* This file is designed to be as independent of DCE
|
||||
* and DFS as possible. The only dependencies are on
|
||||
* the syscall numbers. If DFS not running or not installed,
|
||||
* the sig handlers will catch and the signal and
|
||||
* will continue.
|
||||
*
|
||||
* krb5_dfs_newpag and krb5_dfs_getpag should not be real
|
||||
* Kerberos routines, since they should be setpag and getpag
|
||||
* in the DCE library, but without the DCE baggage.
|
||||
* Thus they don't have context, and don't return a krb5 error.
|
||||
*
|
||||
*
|
||||
*
|
||||
* krb5_dfs_pag()
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
RCSID("$Id: k5dfspag.c,v 1.6 2002/08/12 15:11:58 joda Exp $");
|
||||
|
||||
#include <krb5.h>
|
||||
|
||||
#ifdef DCE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/wait.h>
|
||||
#include <fcntl.h>
|
||||
#include <sys/param.h>
|
||||
|
||||
/* Only run this DFS PAG code on systems with POSIX
|
||||
* All that we are interested in dor:, AIX 4.x,
|
||||
* Solaris 2.5.x, HPUX 10.x Even SunOS 4.1.4, AIX 3.2.5
|
||||
* and SGI 5.3 are OK. This simplifies
|
||||
* the build/configure which I don't want to change now.
|
||||
* All of them also have waitpid as well.
|
||||
*/
|
||||
|
||||
#define POSIX_SETJMP
|
||||
#define POSIX_SIGNALS
|
||||
#define HAVE_WAITPID
|
||||
|
||||
#include <signal.h>
|
||||
#include <setjmp.h>
|
||||
#ifndef POSIX_SETJMP
|
||||
#undef sigjmp_buf
|
||||
#undef sigsetjmp
|
||||
#undef siglongjmp
|
||||
#define sigjmp_buf jmp_buf
|
||||
#define sigsetjmp(j,s) setjmp(j)
|
||||
#define siglongjmp longjmp
|
||||
#endif
|
||||
|
||||
#ifdef POSIX_SIGNALS
|
||||
typedef struct sigaction handler;
|
||||
#define handler_init(H,F) (sigemptyset(&(H).sa_mask), \
|
||||
(H).sa_flags=0, \
|
||||
(H).sa_handler=(F))
|
||||
#define handler_swap(S,NEW,OLD) sigaction(S, &NEW, &OLD)
|
||||
#define handler_set(S,OLD) sigaction(S, &OLD, NULL)
|
||||
#else
|
||||
typedef sigtype (*handler)();
|
||||
#define handler_init(H,F) ((H) = (F))
|
||||
#define handler_swap(S,NEW,OLD) ((OLD) = signal ((S), (NEW)))
|
||||
#define handler_set(S,OLD) (signal ((S), (OLD)))
|
||||
#endif
|
||||
|
||||
#define krb5_sigtype void
|
||||
#define WAIT_USES_INT
|
||||
typedef krb5_sigtype sigtype;
|
||||
|
||||
|
||||
/*
|
||||
* Need some syscall numbers based on different systems.
|
||||
* These are based on:
|
||||
* HPUX 10.10 /opt/dce/include/dcedfs/syscall.h
|
||||
* Solaris 2.5 /opt/dcelocal/share/include/dcedfs/syscall.h
|
||||
* AIX 4.2 - needs some funny games with load and kafs_syscall
|
||||
* to get the kernel extentions. There should be a better way!
|
||||
*
|
||||
* DEE 5/27/97
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#define AFSCALL_SETPAG 2
|
||||
#define AFSCALL_GETPAG 11
|
||||
|
||||
#if defined(sun)
|
||||
#define AFS_SYSCALL 72
|
||||
|
||||
#elif defined(hpux)
|
||||
/* assume HPUX 10 + or is it 50 */
|
||||
#define AFS_SYSCALL 326
|
||||
|
||||
#elif defined(_AIX)
|
||||
#ifndef DPAGAIX
|
||||
#define DPAGAIX LIBEXECDIR "/dpagaix"
|
||||
#endif
|
||||
int *load();
|
||||
static int (*dpagaix)(int, int, int, int, int, int) = 0;
|
||||
|
||||
#elif defined(sgi) || defined(_sgi)
|
||||
#define AFS_SYSCALL 206+1000
|
||||
|
||||
#else
|
||||
#define AFS_SYSCALL (Unknown_DFS_AFS_SYSCALL)
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef WAIT_USES_INT
|
||||
int wait_status;
|
||||
#else /* WAIT_USES_INT */
|
||||
union wait wait_status;
|
||||
#endif /* WAIT_USES_INT */
|
||||
|
||||
#ifndef K5DCECON
|
||||
#define K5DCECON LIBEXECDIR "/k5dcecon"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* mysig()
|
||||
*
|
||||
* signal handler if DFS not running
|
||||
*
|
||||
*/
|
||||
|
||||
static sigjmp_buf setpag_buf;
|
||||
|
||||
static sigtype mysig()
|
||||
{
|
||||
siglongjmp(setpag_buf, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
* krb5_dfs_pag_syscall()
|
||||
*
|
||||
* wrapper for the syscall with signal handlers
|
||||
*
|
||||
*/
|
||||
|
||||
static int krb5_dfs_pag_syscall(opt1,opt2)
|
||||
int opt1;
|
||||
int opt2;
|
||||
{
|
||||
handler sa1, osa1;
|
||||
handler sa2, osa2;
|
||||
int pag = -2;
|
||||
|
||||
handler_init (sa1, mysig);
|
||||
handler_init (sa2, mysig);
|
||||
handler_swap (SIGSYS, sa1, osa1);
|
||||
handler_swap (SIGSEGV, sa2, osa2);
|
||||
|
||||
if (sigsetjmp(setpag_buf, 1) == 0) {
|
||||
|
||||
#if defined(_AIX)
|
||||
if (!dpagaix)
|
||||
dpagaix = load(DPAGAIX, 0, 0);
|
||||
if (dpagaix)
|
||||
pag = (*dpagaix)(opt1, opt2, 0, 0, 0, 0);
|
||||
#else
|
||||
pag = syscall(AFS_SYSCALL, opt1, opt2, 0, 0, 0, 0);
|
||||
#endif
|
||||
|
||||
handler_set (SIGSYS, osa1);
|
||||
handler_set (SIGSEGV, osa2);
|
||||
return(pag);
|
||||
}
|
||||
|
||||
/* syscall failed! return 0 */
|
||||
handler_set (SIGSYS, osa1);
|
||||
handler_set (SIGSEGV, osa2);
|
||||
return(-2);
|
||||
}
|
||||
|
||||
/*
|
||||
* krb5_dfs_newpag()
|
||||
*
|
||||
* issue a DCE/DFS setpag system call to set the newpag
|
||||
* for this process. This takes advantage of a currently
|
||||
* undocumented feature of the Transarc port of DFS.
|
||||
* Even in DCE 1.2.2 for which the source is available,
|
||||
* (but no vendors have released), this feature is not
|
||||
* there, but it should be, or could be added.
|
||||
* If new_pag is zero, then the syscall will get a new pag
|
||||
* and return its value.
|
||||
*/
|
||||
|
||||
int krb5_dfs_newpag(new_pag)
|
||||
int new_pag;
|
||||
{
|
||||
return(krb5_dfs_pag_syscall(AFSCALL_SETPAG, new_pag));
|
||||
}
|
||||
|
||||
/*
|
||||
* krb5_dfs_getpag()
|
||||
*
|
||||
* get the current PAG. Used mostly as a test.
|
||||
*/
|
||||
|
||||
int krb5_dfs_getpag()
|
||||
{
|
||||
return(krb5_dfs_pag_syscall(AFSCALL_GETPAG, 0));
|
||||
}
|
||||
|
||||
/*
|
||||
* krb5_dfs_pag()
|
||||
*
|
||||
* Given a principal and local username,
|
||||
* fork and exec the k5dcecon module to create
|
||||
* refresh or join a new DCE/DFS
|
||||
* Process Authentication Group (PAG)
|
||||
*
|
||||
* This routine should be called after krb5_kuserok has
|
||||
* determined that this combination of local user and
|
||||
* principal are acceptable for the local host.
|
||||
*
|
||||
* It should also be called after a forwarded ticket has
|
||||
* been received, and the KRB5CCNAME environment variable
|
||||
* has been set to point at it. k5dcecon will convert this
|
||||
* to a new DCE context and a new pag and replace KRB5CCNAME
|
||||
* in the environment.
|
||||
*
|
||||
* If there is no forwarded ticket, k5dcecon will attempt
|
||||
* to join an existing PAG for the same principal and local
|
||||
* user.
|
||||
*
|
||||
* And it should be called before access to the home directory
|
||||
* as this may be in DFS, not accessable by root, and require
|
||||
* the PAG to have been setup.
|
||||
*
|
||||
* The krb5_afs_pag can be called after this routine to
|
||||
* use the the cache obtained by k5dcecon to get an AFS token.
|
||||
* DEE - 7/97
|
||||
*/
|
||||
|
||||
int krb5_dfs_pag(context, flag, principal, luser)
|
||||
krb5_context context;
|
||||
int flag; /* 1 if a forwarded TGT is to be used */
|
||||
krb5_principal principal;
|
||||
const char *luser;
|
||||
|
||||
{
|
||||
|
||||
struct stat stx;
|
||||
int fd[2];
|
||||
int i,j;
|
||||
int pid;
|
||||
int new_pag;
|
||||
int pag;
|
||||
char newccname[MAXPATHLEN] = "";
|
||||
char *princ;
|
||||
int err;
|
||||
struct sigaction newsig, oldsig;
|
||||
|
||||
#ifdef WAIT_USES_INT
|
||||
int wait_status;
|
||||
#else /* WAIT_USES_INT */
|
||||
union wait wait_status;
|
||||
#endif /* WAIT_USES_INT */
|
||||
|
||||
if (krb5_unparse_name(context, principal, &princ))
|
||||
return(0);
|
||||
|
||||
/* test if DFS is running or installed */
|
||||
if (krb5_dfs_getpag() == -2)
|
||||
return(0); /* DFS not running, dont try */
|
||||
|
||||
if (pipe(fd) == -1)
|
||||
return(0);
|
||||
|
||||
/* Make sure that telnetd.c's SIGCHLD action don't happen right now... */
|
||||
memset((char *)&newsig, 0, sizeof(newsig));
|
||||
newsig.sa_handler = SIG_DFL;
|
||||
sigaction(SIGCHLD, &newsig, &oldsig);
|
||||
|
||||
pid = fork();
|
||||
if (pid <0)
|
||||
return(0);
|
||||
|
||||
if (pid == 0) { /* child process */
|
||||
|
||||
close(1); /* close stdout */
|
||||
dup(fd[1]); /* point stdout at pipe here */
|
||||
close(fd[0]); /* don't use end of pipe here */
|
||||
close(fd[1]); /* pipe now as stdout */
|
||||
|
||||
execl(K5DCECON, "k5dcecon",
|
||||
(flag) ? "-f" : "-s" ,
|
||||
"-l", luser,
|
||||
"-p", princ, (char *)0);
|
||||
|
||||
exit(127); /* incase execl fails */
|
||||
}
|
||||
|
||||
/* parent, wait for child to finish */
|
||||
|
||||
close(fd[1]); /* dont need this end of pipe */
|
||||
|
||||
/* #if defined(sgi) || defined(_sgi) */
|
||||
/* wait_status.w_status = 0; */
|
||||
/* waitpid((pid_t) pid, &wait_status.w_status, 0); */
|
||||
/* #else */
|
||||
|
||||
|
||||
wait_status = 0;
|
||||
#ifdef HAVE_WAITPID
|
||||
err = waitpid((pid_t) pid, &wait_status, 0);
|
||||
#else /* HAVE_WAITPID */
|
||||
err = wait4(pid, &wait_status, 0, (struct rusage *) NULL);
|
||||
#endif /* HAVE_WAITPID */
|
||||
/* #endif */
|
||||
|
||||
sigaction(SIGCHLD, &oldsig, 0);
|
||||
if (WIFEXITED(wait_status)){
|
||||
if (WEXITSTATUS(wait_status) == 0) {
|
||||
i = 1;
|
||||
j = 0;
|
||||
while (i != 0) {
|
||||
i = read(fd[0], &newccname[j], sizeof(newccname)-1-j);
|
||||
if ( i > 0)
|
||||
j += i;
|
||||
if (j >= sizeof(newccname)-1)
|
||||
i = 0;
|
||||
}
|
||||
close(fd[0]);
|
||||
if (j > 0) {
|
||||
newccname[j] = '\0';
|
||||
esetenv("KRB5CCNAME",newccname,1);
|
||||
sscanf(&newccname[j-8],"%8x",&new_pag);
|
||||
if (new_pag && strncmp("FILE:/opt/dcelocal/var/security/creds/dcecred_", newccname, 46) == 0) {
|
||||
if((pag = krb5_dfs_newpag(new_pag)) != -2) {
|
||||
return(pag);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return(0); /* something not right */
|
||||
}
|
||||
|
||||
#else /* DCE */
|
||||
|
||||
/*
|
||||
* krb5_dfs_pag - dummy version for the lib for systems
|
||||
* which don't have DFS, or the needed setpag kernel code.
|
||||
*/
|
||||
|
||||
krb5_boolean
|
||||
krb5_dfs_pag(context, principal, luser)
|
||||
krb5_context context;
|
||||
krb5_principal principal;
|
||||
const char *luser;
|
||||
{
|
||||
return(0);
|
||||
}
|
||||
|
||||
#endif /* DCE */
|
Loading…
x
Reference in New Issue
Block a user