diff --git a/cde/.gitignore b/cde/.gitignore index 0a358afa2..74db1f2bf 100644 --- a/cde/.gitignore +++ b/cde/.gitignore @@ -22,130 +22,14 @@ imports/motif # exports of libraries/headers exports -# admin/IntegTools/ -admin/IntegTools/post_install/*.list -admin/IntegTools/post_install/*.lst - -admin/IntegTools/post_install/linux/CDE-MIN.list -admin/IntegTools/post_install/linux/CDE-MIN.lst -admin/IntegTools/post_install/linux/CDE-RUN.list -admin/IntegTools/post_install/linux/CDE-RUN.lst -admin/IntegTools/post_install/linux/CDE-SHLIBS.list -admin/IntegTools/post_install/linux/CDE-SHLIBS.lst -admin/IntegTools/post_install/linux/CDE-TT.list -admin/IntegTools/post_install/linux/CDE-TT.lst -admin/IntegTools/post_install/linux/configMin -admin/IntegTools/post_install/linux/configRun -admin/IntegTools/post_install/linux/configShlibs -admin/IntegTools/post_install/linux/configTT - -admin/IntegTools/post_install/freebsd/CDE-MIN.list -admin/IntegTools/post_install/freebsd/CDE-MIN.lst -admin/IntegTools/post_install/freebsd/CDE-RUN.list -admin/IntegTools/post_install/freebsd/CDE-RUN.lst -admin/IntegTools/post_install/freebsd/CDE-SHLIBS.list -admin/IntegTools/post_install/freebsd/CDE-SHLIBS.lst -admin/IntegTools/post_install/freebsd/CDE-TT.list -admin/IntegTools/post_install/freebsd/CDE-TT.lst -admin/IntegTools/post_install/freebsd/configMin -admin/IntegTools/post_install/freebsd/configRun -admin/IntegTools/post_install/freebsd/configShlibs -admin/IntegTools/post_install/freebsd/configTT - -admin/IntegTools/post_install/openbsd/CDE-MIN.list -admin/IntegTools/post_install/openbsd/CDE-MIN.lst -admin/IntegTools/post_install/openbsd/CDE-RUN.list -admin/IntegTools/post_install/openbsd/CDE-RUN.lst -admin/IntegTools/post_install/openbsd/CDE-SHLIBS.list -admin/IntegTools/post_install/openbsd/CDE-SHLIBS.lst -admin/IntegTools/post_install/openbsd/CDE-TT.list -admin/IntegTools/post_install/openbsd/CDE-TT.lst -admin/IntegTools/post_install/openbsd/configMin -admin/IntegTools/post_install/openbsd/configRun -admin/IntegTools/post_install/openbsd/configShlibs -admin/IntegTools/post_install/openbsd/configTT - -admin/IntegTools/post_install/netbsd/CDE-MIN.list -admin/IntegTools/post_install/netbsd/CDE-MIN.lst -admin/IntegTools/post_install/netbsd/CDE-RUN.list -admin/IntegTools/post_install/netbsd/CDE-RUN.lst -admin/IntegTools/post_install/netbsd/CDE-SHLIBS.list -admin/IntegTools/post_install/netbsd/CDE-SHLIBS.lst -admin/IntegTools/post_install/netbsd/CDE-TT.list -admin/IntegTools/post_install/netbsd/CDE-TT.lst -admin/IntegTools/post_install/netbsd/configMin -admin/IntegTools/post_install/netbsd/configRun -admin/IntegTools/post_install/netbsd/configShlibs -admin/IntegTools/post_install/netbsd/configTT - -admin/IntegTools/post_install/sun/CDE-MIN.list -admin/IntegTools/post_install/sun/CDE-MIN.lst -admin/IntegTools/post_install/sun/CDE-RUN.list -admin/IntegTools/post_install/sun/CDE-RUN.lst -admin/IntegTools/post_install/sun/CDE-SHLIBS.list -admin/IntegTools/post_install/sun/CDE-SHLIBS.lst -admin/IntegTools/post_install/sun/CDE-TT.list -admin/IntegTools/post_install/sun/CDE-TT.lst -admin/IntegTools/post_install/sun/configMin -admin/IntegTools/post_install/sun/configRun -admin/IntegTools/post_install/sun/configShlibs -admin/IntegTools/post_install/sun/configTT - -admin/IntegTools/post_install/configDemos -admin/IntegTools/post_install/configFonts -admin/IntegTools/post_install/configHelp -admin/IntegTools/post_install/configHelpPrg -admin/IntegTools/post_install/configHelpRun -admin/IntegTools/post_install/configIcons -admin/IntegTools/post_install/configInc -admin/IntegTools/post_install/configMan -admin/IntegTools/post_install/configManDev -admin/IntegTools/post_install/configMsgCat -admin/IntegTools/post_install/configPrg -admin/IntegTools/post_install/configShlibs - -install.dt -install.dt.hp -install.dt.ibm -install.dt.sun -dinstall.dt -dinstallCDE -installCDE -updateCDE - installCDE.*.log cscope.out -# Makefiles (generated by Imakefiles) +# Makefiles Makefile -xmakefile -# generated db files -databases/*\.db -databases/*\.tmp -databases/CDE-MIN.udb -databases/CDE-RUN.udb -databases/CDE-C.udb -databases/CDE-DE.udb -databases/CDE-ES.udb -databases/CDE-FR.udb -databases/CDE-IT.udb -databases/CDE-JP.udb -databases/CDE-INFOLIB-*\.udb -databases/CDE-HELP-*\.udb -databases/CDE-MSG-*\.udb -databases/CDE-SHLIBS\.udb - -# config -config/imake/imake -config/makedepend/makedepend -config/util/lndir -config/util/makestrs -config/util/mergelib -config/util/xmkmf - -# exampls +# examples examples/tt/broadcast # Compiled binaries and misc generated program files @@ -168,7 +52,7 @@ programs/dtimsstart/dtimsstart programs/dtlogin/dtchooser programs/dtlogin/dtgreet programs/dtlogin/dtlogin -programs/dtlogin/config/pam/dtlogin +programs/dtlogin/config/dtlogin programs/dtmail/dtmail/dtmail programs/dtmail/dtmailpr/dtmailpr programs/dtpad/dtpad @@ -185,7 +69,7 @@ programs/dtsession/Dtsession programs/dtsession/dtloadresources programs/dtsession/dtsession programs/dtsession/dtsession_res -programs/dtsession/config/pam/dtsession +programs/dtsession/config/dtsession programs/dtspcd/dtspcd programs/dtspcd/dtspcdenv programs/dtsr/dtsrclean @@ -242,7 +126,6 @@ programs/dtappbuilder/src/ab/.dtcodegen.log programs/dtappbuilder/src/ab/Dtbuilder programs/dtappbuilder/src/ab/Dtbuilder.BAK programs/dtappbuilder/src/ab/Makefile.aix -programs/dtappbuilder/src/ab/Makefile.hpux programs/dtappbuilder/src/ab/Makefile.sunos programs/dtappbuilder/src/ab/Makefile.linux programs/dtappbuilder/src/ab/Makefile.freebsd @@ -368,9 +251,6 @@ programs/dtappbuilder/src/abmf/dtcodegen.cat programs/dtappbuilder/src/libABil/bil_parse.c programs/dtappbuilder/src/libABil/bil_parse.h -# imake -config/imake/Makefile.proto - # doc book.log book.out.idx @@ -2105,7 +1985,6 @@ programs/nsgmls/xentmgr_inst.C # programs/ttsnoop programs/ttsnoop/.dtcodegen.log programs/ttsnoop/Makefile.aix -programs/ttsnoop/Makefile.hpux programs/ttsnoop/Makefile.sunos programs/ttsnoop/Makefile.linux programs/ttsnoop/Makefile.freebsd diff --git a/cde/HISTORY b/cde/HISTORY index 0b9d5d5d3..5243c32cd 100644 --- a/cde/HISTORY +++ b/cde/HISTORY @@ -5,6 +5,96 @@ use 'git log', or peruse the commit history at: https://sourceforge.net/p/cdesktopenv/code/commit_browser + +####################################################################### +### 2.5.2 (stable) 11/18/2023 + +This is mainly a bugfix release addressing various issues. + +Shortlog: + +Cy Schubert (1): + Fix build under LLVM15 + +Jon Trulson (9): + Apply various patches from Giacomo Comes + Patch from Giacomo Comes: rename ksh manpage to ksh-cde + Add DesktopNames=CDE to cde.desktop + pgadmin.dt: set icon from pgadmin to pgadmin3 + dtfile/dterror.ds: fix script defines typo + dtksh: enable SHOPT_ECHOPRINT + dticon, dtpad, dtterm: fix session save issues (sprintf bogosity) + lib/DtHelp: strmove(): return memmove() result + .gitignore: add new locations of dtsession/dtlogin PAM files + +Peter Howkins (3): + (Pascal Stumpf) Makefile.am change several places where ${prefix} should be $(CDE_INSTALLATION_TOP) + (Pascal Stumpf) CDE doesn't provide the ksh binary, don't install the manpage for it + (Pascal Stumpf) dtlogin: On OpenBSD start X as root (it drops privileges later) + +hyousatsu (15): + DtTerm: fix a segfault by allocating a string dynamically. + dtwm: fix a title bar resizing issue. + dtwm: fix compiler warnings. + dtwm: add support for _NET_WM_VISIBLE_NAME and _NET_WM_VISIBLE_ICON_NAME. + dtwm: optimize EWMH processing. + localized: fix the character encoding errors in zh_TW.UTF-8. + dtwm: add a new feature -- window rename. + dtwm: optimize EWMH processing. + dtwm: support _NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW. + dtsession: change the maximum size of cover dialog to fullscreen. + dtlogin: use sessreg to manage utmp/wtmp. + dtwm: fix a segfault. + dtstyle: make the style manager recognize wheel mouse correctly. + tt: make the ttserver process events properly. + dtsession: fix a crash. + + +####################################################################### +### 2.5.1 (stable) 10/1/2022 + +This release fixes up some issues with the 2.5.0 release and removes +some more cruft. In addition, it upgrades ksh93 from 1.0.0beta to +1.0.3. + +Shortlog: + +Chase (9): + configure.ac: remove patch requirement + dtfile/dtcopy: remove duplicate icons + Discontinue HPUX support + dthelp: remove obsolete and non-compiled code + configure: detect libdl + configure: detect libm + Remove detected -lcrypt flag + lib/DtTerm/TermPrim: clean up defines + Generify source code + +Jon Trulson (14): + configure.ac: bump version to 2.5.0a + configure.ac: remove extra -lm check, move dl check to after libm check + C locales: recursively delete C locale directories on make install + doc: re-enable building the dtinfo guides on netbsd + libtt: remove OPT_LOCAL_MOUNT_TYPE, OS_VERSION - never used anywhere + dtlogin: remove HP BLS B1 simple authentication support (BLS) + Kill off OSMAJORVERSION and OSMINORVERSION defines/cpp flags + Delete all unused/obsolete .elist files + #127: dtcm: solaris - use readdir instead of readdir_r + #130: Xserver.src: fix sun X server path + Remove ksh 1.0.0beta + Squashed 'cde/programs/dtksh/ksh93/' content from commit b16c91f01 + Merge commit '97ef0077f06cef6f6bb93b0dae22441078647486' as 'cde/programs/dtksh/ksh93' + Upgrade ksh93 to 1.0.3 + +Liang Chang (5): + fontaliases: install to DESTDIR correctly. + dtdocbook: set locale explicitly. + doc: set locale explicitly for building doc. + dtsession: help applications enable "international". + dtsession: help xterm load the appropriate font. + + + ####################################################################### ### 2.5.0 (stable) 7/23/2022 diff --git a/cde/configure.ac b/cde/configure.ac index c224715e9..f16acd90f 100644 --- a/cde/configure.ac +++ b/cde/configure.ac @@ -1,7 +1,7 @@ dnl When changing the version below, also change the CDE_VERSION_* macros dnl to match further below AC_INIT([Common Desktop Environment], - [2.5.0], + [2.5.2], [https://sourceforge.net/projects/cdesktopenv], [cde], [https://sourceforge.net/projects/cdesktopenv]) @@ -13,7 +13,7 @@ dnl global CDE versioning CDE_VERSION_MAJOR=2 CDE_VERSION_MINOR=5 -CDE_VERSION_MICRO=0 +CDE_VERSION_MICRO=2 dnl this is blank for a release, or contains an alpha character to indicate a dnl dev release. CDE_VERSION_DEV= @@ -61,18 +61,8 @@ build_freebsd=no build_openbsd=no build_netbsd=no build_solaris=no -build_hpux=no build_aix=no -dnl For now, we need to fake the OSMAJORVERSION, OSMINORVERSION. In Linux -dnl this never mattered anyway as it was always the kernel version. We will -dnl choose defaults here. These need to be removed in the code in favor -dnl of actual checks for functionality. So this should be considered -dnl temporary. - -OSMAJORVERSION=4 -OSMINORVERSION=15 - dnl locations of libs/includes if not in 'standard' places like on dnl linux (/usr/...). We build these up based on where X11 is, and dnl other things as we go along. @@ -85,8 +75,6 @@ supports_pam=no case "${build_os}" in linux*) build_linux=yes - OSMAJORVERSION=4 - OSMINORVERSION=15 SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -D_POSIX_SOURCE \ -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE" supports_pam=yes @@ -94,8 +82,6 @@ case "${build_os}" in freebsd*) build_freebsd=yes bsd=yes - OSMAJORVERSION=10 - OSMINORVERSION=0 # fbsd needs the iconv plug to avoid conflict with libiconv # and libc implementations. We prefer the libc impl. SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -DLIBICONV_PLUG" @@ -103,27 +89,18 @@ case "${build_os}" in openbsd*) build_openbsd=yes bsd=yes - OSMAJORVERSION=6 - OSMINORVERSION=2 ;; netbsd*) build_netbsd=yes bsd=yes - OSMAJORVERSION=8 - OSMINORVERSION=0 supports_pam=yes ;; solaris*|sun*) build_solaris=yes - OSMAJORVERSION=5 - OSMINORVERSION=10 ;; aix*) build_aix=yes ;; - hpux*) - build_hpux=yes - ;; esac AM_CONDITIONAL([LINUX], [test "$build_linux" = "yes"]) @@ -133,10 +110,6 @@ AM_CONDITIONAL([OPENBSD], [test "$build_openbsd" = "yes"]) AM_CONDITIONAL([NETBSD], [test "$build_netbsd" = "yes"]) AM_CONDITIONAL([SOLARIS], [test "$build_solaris" = "yes"]) AM_CONDITIONAL([AIX], [test "$build_aix" = "yes"]) -AM_CONDITIONAL([HPUX], [test "$build_hpux" = "yes"]) - -dnl Add osmajor/minor version to cppflags. -OSVERSION="-DOSMAJORVERSION=$OSMAJORVERSION -DOSMINORVERSION=$OSMINORVERSION" dnl set CSRG_BASED define for the BSD's. if test "$bsd" = "yes" @@ -204,11 +177,6 @@ AC_SUBST(LIBMMDB, '$(top_builddir)/lib/DtMmdb/libDtMmdb.la') AC_SUBST(LIBHELP, '$(top_builddir)/lib/DtHelp/libDtHelp.la') AC_SUBST(LIBCSA, '$(top_builddir)/lib/csa/libcsa.la') -AC_SUBST(LIBPAMSVC, '$(top_builddir)/lib/DtPamSvc/libDtPamSvc.la') - -dnl we do not inclue the DtPamSvc library here as it is not needed -dnl for everything. - AC_SUBST(DTCLIENTLIBS, '$(LIBPRINT) $(LIBHELP) $(LIBWIDGET) $(LIBSVC) \ $(LIBTT) $(LIBXIN)') @@ -272,6 +240,48 @@ AC_ARG_ENABLE([xrender], [disable_xrender="yes"], [disable_xrender=""] ) +dnl copied from xdm... + +AC_ARG_WITH(utmp_file, + AS_HELP_STRING([--with-utmp-file=], + [specify file to pass to sessreg -u for current logins]) +AS_HELP_STRING([--without-utmp-file], + [specify passing "none" to sessreg -u to not record logins in utmp]), + [UTMP_FILE="$withval"]) +if test "x$UTMP_FILE" = "xyes" ; then + UTMP_FILE="" +elif test "x$UTMP_FILE" = "xno" ; then + UTMP_FILE="none" +fi +AC_MSG_CHECKING([for path to file listing current logins for sessreg]) +if test "x$UTMP_FILE" = "x" ; then + AC_MSG_RESULT([use sessreg default]) +else + AC_MSG_RESULT([$UTMP_FILE]) +fi +AM_CONDITIONAL(SET_UTMP_FILE, test x$UTMP_FILE != x) +AC_SUBST(UTMP_FILE) + +AC_ARG_WITH(wtmp_file, + AS_HELP_STRING([--with-wtmp-file=], + [specify file to pass to sessreg -w for login history]) +AS_HELP_STRING([--without-wtmp-file], + [specify passing "none" to sessreg -w to not record logins in wtmp]), + [WTMP_FILE="$withval"]) +if test "x$WTMP_FILE" = "xyes" ; then + WTMP_FILE="" +elif test "x$WTMP_FILE" = "xno" ; then + WTMP_FILE="none" +fi +AC_MSG_CHECKING([for path to file listing login history for sessreg]) +if test "x$WTMP_FILE" = "x" ; then + AC_MSG_RESULT([use sessreg default]) +else + AC_MSG_RESULT([$WTMP_FILE]) +fi +AM_CONDITIONAL(SET_WTMP_FILE, test x$WTMP_FILE != x) +AC_SUBST(WTMP_FILE) + dnl hmmm... RM="rm -f" AC_SUBST(RM) @@ -368,7 +378,10 @@ AC_PATH_PROG(KSH, ksh) if test -z "$ac_cv_path_KSH"; then AC_PATH_PROG(KSH, ksh93) if test -z "$ac_cv_path_KSH"; then - MISSING_PROGS="[ksh or ksh93] ${MISSING_PROGS}" + AC_PATH_PROG(KSH, mksh) + if test -z "$ac_cv_path_KSH"; then + MISSING_PROGS="[ksh or ksh93] ${MISSING_PROGS}" + fi fi fi @@ -419,14 +432,14 @@ AC_CHECK_PROGS(GENCAT, gencat) if test -z "$ac_cv_prog_GENCAT"; then MISSING_PROGS="gencat ${MISSING_PROGS}" fi -AC_CHECK_PROGS(PATCH, patch) -if test -z "$ac_cv_prog_PATCH"; then - MISSING_PROGS="patch ${MISSING_PROGS}" -fi AC_CHECK_PROGS(ONSGMLS, onsgmls) if test -z "$ac_cv_prog_ONSGMLS"; then MISSING_PROGS="ONSGMLS ${MISSING_PROGS}" fi +AC_CHECK_PROGS(SESSREG, sessreg) +if test -z "$ac_cv_prog_SESSREG"; then + MISSING_PROGS="SESSREG ${MISSING_PROGS}" +fi dnl Used to check if program 'tic' is available to install terminfo files AC_CHECK_PROGS(TIC, tic, :) @@ -440,6 +453,8 @@ AC_CHECK_HEADERS([X11/extensions/Xrender.h], [], dnl libraries AC_CHECK_LIB(m, cosf) +AC_SEARCH_LIBS(dlopen, [dl dld], [], []) + AC_CHECK_LIB(crypt, crypt) dnl this should be configurable, for now it is required AC_CHECK_LIB(Xinerama, XineramaQueryScreens, @@ -480,6 +495,12 @@ AC_CHECK_LIB(jpeg, jpeg_read_header, [JPEGLIB="-ljpeg"], [${EXTRA_INCS} ${EXTRA_LIBS}]) AC_SUBST(JPEGLIB) +dnl lmdb +AC_CHECK_LIB(lmdb, mdb_version, [LMDBLIB="-llmdb"], + [AC_MSG_ERROR([liblmdb not found, please install it])], + [${EXTRA_INCS} ${EXTRA_LIBS}]) +AC_SUBST(LMDBLIB) + dnl Setup XTOOLLIB - we do it in this specific order to avoid ordering dnl issues XTOOLLIB="" @@ -523,7 +544,9 @@ dnl Right now this only works on linux and netbsd (9.2 tested) if test "$supports_pam" = "yes" then AC_CHECK_LIB(pam, pam_start, - [SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -DHAS_PAM_LIBRARY"]) + [SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -DHAS_PAM_LIBRARY"; + PAMLIB="-lpam"]) + AC_SUBST(PAMLIB) else AC_CHECK_LIB(pam, NOTSUPPORTED) fi @@ -554,7 +577,7 @@ dnl shouldn't be modified. It suggests that you create a special dnl variable and presumably add those to your Makefile.am files. We dnl have 192 of these currently, so... The user will just have to dnl deal, or modify them here directly. -CPPFLAGS="${CPPFLAGS} ${SOURCE_CPP_DEFINES} ${CPP_COMPILER_FLAGS} ${OSVERSION}" +CPPFLAGS="${CPPFLAGS} ${SOURCE_CPP_DEFINES} ${CPP_COMPILER_FLAGS}" CFLAGS="${CFLAGS} ${C_COMPILER_FLAGS} ${EXTRA_INCS} ${PTHREAD_CFLAGS}" CXXFLAGS="${CXXFLAGS} ${CXX_COMPILER_FLAGS} ${EXTRA_INCS} ${PTHREAD_CFLAGS}" LIBS="${EXTRA_LIBS} ${LIBS} ${PTHREAD_LIBS}" @@ -594,8 +617,6 @@ lib/tt/bin/ttsession/Makefile lib/DtSvc/Makefile -lib/DtPamSvc/Makefile - lib/DtSearch/Makefile lib/DtSearch/raima/Makefile @@ -621,7 +642,6 @@ lib/DtMmdb/HardCopy/Makefile lib/DtMmdb/StyleSheet/Makefile lib/DtMmdb/api/Makefile lib/DtMmdb/btree/Makefile -lib/DtMmdb/btree_berkeley/Makefile lib/DtMmdb/compression/Makefile lib/DtMmdb/diskhash/Makefile lib/DtMmdb/dstr/Makefile diff --git a/cde/contrib/desktopentry/cde.desktop b/cde/contrib/desktopentry/cde.desktop index 0b971132a..bf7b21a83 100644 --- a/cde/contrib/desktopentry/cde.desktop +++ b/cde/contrib/desktopentry/cde.desktop @@ -1,5 +1,6 @@ [Desktop Entry] Name=CDE +DesktopNames=CDE Comment=Use this session to boot into the Common Desktop Environment Keywords=Common Desktop Environment Exec=/usr/dt/bin/Xsession diff --git a/cde/contrib/rc/netbsd/dtlogin b/cde/contrib/rc/netbsd/dtlogin new file mode 100755 index 000000000..5fafbfb8e --- /dev/null +++ b/cde/contrib/rc/netbsd/dtlogin @@ -0,0 +1,16 @@ +#!/bin/sh +# PROVIDE: dtlogin +# REQUIRE: DAEMON LOGIN wscons +# KEYWORD: shutdown + +$_rc_subr_loaded . /etc/rc.subr + +name="dtlogin" +rcvar=$name +command="/usr/dt/bin/${name}" +command_args="-daemon" +pidfile=/var/dt/Xpid +extra_commands="" + +load_rc_config $name +run_rc_command "$1" diff --git a/cde/contrib/rc/openbsd/cmsd b/cde/contrib/rc/openbsd/cmsd new file mode 100755 index 000000000..407a821f8 --- /dev/null +++ b/cde/contrib/rc/openbsd/cmsd @@ -0,0 +1,11 @@ +daemon="/usr/dt/bin/rpc.cmsd &" + +. /etc/rc.d/rc.subr + +pexp="rpc.cmsd: ${daemon}${daemon_flags:+ ${daemon_flags}} \[listener\].*" + +rc_reload() { + ${daemon} ${daemon_flags} -t && pkill -HUP -xf "${pexp}" +} + +rc_cmd $1 diff --git a/cde/contrib/rc/openbsd/dtlogin b/cde/contrib/rc/openbsd/dtlogin new file mode 100755 index 000000000..73838e22a --- /dev/null +++ b/cde/contrib/rc/openbsd/dtlogin @@ -0,0 +1,25 @@ +#!/bin/ksh + +daemon="/usr/dt/bin/dtlogin" + +. /etc/rc.d/rc.subr + +rc_reload=NO + +if [ -n "${INRC}" ]; then +# on boot: make sure we don't hang in _rc_wait +_rc_wait() { + return 0 +} +# on boot: wait for ttys to be initialized +rc_start() { + ( local i=0 + while ! pgrep -qf "^/usr/libexec/getty "; do + sleep 1 + [ $((i++)) -ge 10 ] && return 1 + done + ${rcexec} "${daemon} ${daemon_flags}" ) & +} +fi + +rc_cmd $1 diff --git a/cde/contrib/rc/systemd/dtlogin.service b/cde/contrib/rc/systemd/dtlogin.service new file mode 100644 index 000000000..cdf5dbfe0 --- /dev/null +++ b/cde/contrib/rc/systemd/dtlogin.service @@ -0,0 +1,11 @@ +[Unit] +Description=CDE login service +Documentation=man:dtlogin(1) +Requires=rpcbind.service +After=systemd-user-sessions.service + +[Service] +ExecStart=/usr/dt/bin/dtlogin -nodaemon + +[Install] +Alias=display-manager.service diff --git a/cde/doc/Makefile.am b/cde/doc/Makefile.am index 7812923ae..7b91bb241 100644 --- a/cde/doc/Makefile.am +++ b/cde/doc/Makefile.am @@ -21,3 +21,7 @@ endif if JAPANESE SUBDIRS += ja_JP.UTF-8 endif + +install-data-hook: + $(RM) $(DESTDIR)$(CDE_INSTALLATION_TOP)/man + cd $(DESTDIR)$(CDE_INSTALLATION_TOP)/ && $(LN_S) $(mandir) man diff --git a/cde/doc/common/guides/guides_env.am b/cde/doc/common/guides/guides_env.am index 1ca0bb128..e986d154c 100644 --- a/cde/doc/common/guides/guides_env.am +++ b/cde/doc/common/guides/guides_env.am @@ -9,8 +9,8 @@ INFOLIBNAME = -n cde # orig: INFOLIBDESC = -d InfoLibDesc SSENTS = -m common/catalog -DGENV = LC_CTYPE=$(LANG) SGML_SEARCH_PATH=".:.." -DTINFOGENOPTIONS = $(SSENTS) $(INFOLIBNAME) -d $(INFOLIBDESC) +DGENV = SGML_SEARCH_PATH=".:.." +DTINFOGENOPTIONS = -L $(LANG) $(SSENTS) $(INFOLIBNAME) -d $(INFOLIBDESC) # Note the quad-dollar sign - this escapes $$ (pid) for the tmp # dir. This is required for multi-core builds to work. diff --git a/cde/doc/common/help/sdl-docs.am b/cde/doc/common/help/sdl-docs.am index aaf5cd856..f5aa875c5 100644 --- a/cde/doc/common/help/sdl-docs.am +++ b/cde/doc/common/help/sdl-docs.am @@ -19,7 +19,7 @@ DTHELP_HTAG2 = $(top_builddir)/programs/dthelp/parser/pass2/parser/dthelp_htag2 # but the $(basename...) seems to add a space for some reason %.sdl: - LC_CTYPE=$(LANG) SGML_SEARCH_PATH=".:.." \ + SGML_SEARCH_PATH=".:.." \ $(KSH) $(DTDOCBOOK) -H $(DTHELP_HTAG2) -L $(LANG) \ -o $@ `basename $@ .sdl`/book.sgm diff --git a/cde/doc/de_DE.UTF-8/help/FPanel/Ref.sgm b/cde/doc/de_DE.UTF-8/help/FPanel/Ref.sgm index 222f0d458..ca6257c32 100644 --- a/cde/doc/de_DE.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/de_DE.UTF-8/help/FPanel/Ref.sgm @@ -700,6 +700,39 @@ indem im Dialogfenster 'Neustart' des Umgebungsmanagers die Option 'Standardsitz festlegen' ausgewählt wird. + +Dialogfeld zum Umbenennen von Fenstern + + + +Geben Sie den neuen Namen in das Textfeld ein (lassen Sie es leer, um +den Standardfenstertitel wiederherzustellen). + + + +OK + + +Benennen Sie das Fenster um und schließen Sie den Umbenennen Dialog. + + + + +Abbrechen + + +Brechen Sie das Umbenennen ab und schließen Sie den Umbenennen Dialog. + + + + +Hilfe + +Zeigt dieses Hilfethema an. + + + + Bestätigung der Sitzungserstellung<anchor id="ConfirmSessionCreation"> diff --git a/cde/doc/en_US.UTF-8/Makefile.am b/cde/doc/en_US.UTF-8/Makefile.am index a8b049e27..08b152303 100644 --- a/cde/doc/en_US.UTF-8/Makefile.am +++ b/cde/doc/en_US.UTF-8/Makefile.am @@ -1,8 +1,3 @@ MAINTAINERCLEANFILES = Makefile.in -if !NETBSD SUBDIRS = m-guides man guides help -else -# building the guides on netbsd (9.2) doesn't work currently -SUBDIRS = m-guides man help -endif diff --git a/cde/doc/en_US.UTF-8/guides/Makefile.am b/cde/doc/en_US.UTF-8/guides/Makefile.am index 776dc50c4..c07f3dd97 100644 --- a/cde/doc/en_US.UTF-8/guides/Makefile.am +++ b/cde/doc/en_US.UTF-8/guides/Makefile.am @@ -73,5 +73,5 @@ CLEANFILES += $(cdedti_DATA) $(cdedtidoc_DATA) $(cdedtidocsearch_DATA) # link the en_US.UTF-8 version to C install-data-hook: - $(RM) $(DESTDIR)$(CDE_INSTALLATION_TOP)/infolib/C + $(RM) -rf $(DESTDIR)$(CDE_INSTALLATION_TOP)/infolib/C cd $(DESTDIR)$(CDE_INSTALLATION_TOP)/infolib && $(LN_S) en_US.UTF-8 C diff --git a/cde/doc/en_US.UTF-8/guides/man/man1_dt/docbook2infolib.sgm b/cde/doc/en_US.UTF-8/guides/man/man1_dt/docbook2infolib.sgm index 621b5badf..34f877ee5 100644 --- a/cde/doc/en_US.UTF-8/guides/man/man1_dt/docbook2infolib.sgm +++ b/cde/doc/en_US.UTF-8/guides/man/man1_dt/docbook2infolib.sgm @@ -22,10 +22,12 @@ dtdocbook2infolib admin -h +-L Locale dtdocbook2infolib build -h +-L Locale -T TmpDir -m CatalogFile -l Library @@ -36,6 +38,7 @@ dtdocbook2infolib tocgen -h +-L Locale -T TmpDir -m CatalogFile -id TOCid @@ -46,6 +49,7 @@ dtdocbook2infolib update -h +-L Locale -T TmpDir -m CatalogFile -b BookcaseName @@ -55,6 +59,7 @@ dtdocbook2infolib validate -h +-L Locale -T TmpDir -m CatalogFile SGMLdocument @@ -113,12 +118,16 @@ DocBook.DTD. Displays a help message for each available option. +-L Locale +Specifies the locale of the information library. + + -T TmpDir Specifies the directory in which temporary files are placed during the build process. The default is to use the environment variable TMPDIR. If variable TMPDIR is not set, -/usr/tmp is used. +/tmp is used. @@ -207,9 +216,9 @@ administration functions to perform on a specified information library: Example -Enter the dtdocbook2infolib admin command in a shell window: +Enter the dtdocbook2infolib admin -L en_US.UTF-8 command in a shell window: -dtdocbook2infolib admin +dtdocbook2infolib admin -L en_US.UTF-8 The following menu appears: @@ -224,8 +233,7 @@ Please enter your choice [1-6] Enter the number associated with the administrative task you want to perform. -dtdocbook2infolib admin prompts for additional input as -required. +dtdocbook2infolib admin -L en_US.UTF-8 prompts for additional input as required. @@ -238,14 +246,14 @@ It also creates a full-text search index. Example -Enter the dtdocbook2infolib build command in a shell -window. +Enter the dtdocbook2infolib build -L en_US.UTF-8 +command in a shell window. To build an information library containing multiple bookcases, an example command might be: -build -l +dtdocbook2infolib build -L en_US.UTF-8 -l UNIXLib -T /usr/pers ProgBooks @@ -269,14 +277,14 @@ source file(s) for a book and generates a hypertext table of contents. Example -Enter the dtdocbook2infolib tocgen command in a shell -window. +Enter the dtdocbook2infolib tocgen -L en_US.UTF-8 +command in a shell window. To generate a hypertext table of contents for a book containing six SGML book source files, each of which contains a separate chapter, an example command might be: -dtdocbook2infolib tocgen -T +dtdocbook2infolib tocgen -L en_US.UTF-8 -T /usr/pers -f Perl.TOC -id Perl0594 @@ -302,18 +310,21 @@ during processing. update -The dtdocbook2infolib update command dynamically replaces -existing style sheets in the DtInfo document database. +The dtdocbook2infolib update -L en_US.UTF-8 +command dynamically replaces existing style sheets in the DtInfo document +database. Example -Enter the dtdocbook2infolib update command in a shell window. +Enter the dtdocbook2infolib update -L en_US.UTF-8 +command in a shell window. -Here is an example of a dtdocbook2infolib update command used -to reformat the documents and/or document sections that use the +Here is an example of a dtdocbook2infolib update -L en_US.UTF-8 + +command used to reformat the documents and/or document sections that use the specified style sheet: -dtdocbook2infolib update -T +dtdocbook2infolib update -L en_US.UTF-8 -T /usr/pers -b ICE9 -l Brunn style @@ -327,19 +338,21 @@ that is specified in the bookcase named ICE9. validate -The dtdocbook2infolib validate command performs SGML -validation on bookcase specifications, on individual book source files, -or any SGML document. +The dtdocbook2infolib validate -L en_US.UTF-8 +command performs SGML validation on bookcase specifications, on individual book +source files, or any SGML document. Examples -Enter the dtdocbook2infolib validate in a shell window. +Enter the dtdocbook2infolib validate -L en_US.UTF-8 +in a shell window. -Here is an example of a dtdocbook2infolib validate command -that performs validation on three SGML book source files: +Here is an example of a dtdocbook2infolib validate -L en_US.UTF-8 + +command that performs validation on three SGML book source files: -dtdocbook2infolib validate +dtdocbook2infolib validate -L en_US.UTF-8 03.Structure.N 04.Process.N 05.BookArea.N diff --git a/cde/doc/en_US.UTF-8/guides/man/man1_dt/ksh.sgm b/cde/doc/en_US.UTF-8/guides/man/man1_dt/ksh.sgm index a1bc383bb..85c8443b5 100644 --- a/cde/doc/en_US.UTF-8/guides/man/man1_dt/ksh.sgm +++ b/cde/doc/en_US.UTF-8/guides/man/man1_dt/ksh.sgm @@ -32,7 +32,7 @@ Inc.--> DESCRIPTION -The dtksh utility is a version of the sh utility (defined in the &str-ZC;) ]]>extended +The dtksh utility is a version of the ksh-cde utility (defined in the &str-ZC;) ]]>extended to support: @@ -68,10 +68,10 @@ using the &str-XZ; customization tool OPTIONS -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> OPERANDS -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> RESOURCES The dtksh interpreter has no relevant resources outside @@ -80,14 +80,14 @@ a dtksh script. Refer to the manual page of the relevant widget for information on the resources that apply to that widget. STDIN -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> INPUT FILES -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> ENVIRONMENT VARIABLES The following information describes the environment variables that dtksh uses that are in addition to those documented in the manual -page for the sh command language interpreter. +page for the ksh-cde command language interpreter. Immediate Return Value (-) Many of the category 3 commands (as described in Return Values From Built-in Commands section) ]]>XtRemoveInput. Default. STDOUT -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> STDERR -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> OUTPUT FILES None. EXTENDED DESCRIPTION -The capabilities described here are extensions to those of the sh command language interpreter. See sh(1). ]]>sh in the &str-ZC;. ]]>The +The capabilities described here are extensions to those of the ksh-cde command language interpreter. See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]>The following subsections give a synopsis of each of the built-in commands added -by dtksh to sh. In general, argument +by dtksh to ksh-cde. In general, argument ordering and types are the same as for corresponding C procedures, with exceptions noted. For more detail on the functionality and arguments of a command, see the standard documentation for the corresponding X11, Xt, Motif or Desktop @@ -2970,10 +2970,10 @@ the resource name. EXIT STATUS -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> CONSEQUENCES OF ERRORS -See sh(1). ]]>sh in the &str-ZC;. ]]> +See ksh-cde(1). ]]>ksh-cde in the &str-ZC;. ]]> APPLICATION USAGE @@ -3229,7 +3229,7 @@ labelString:$(catgets $MSG_CAT_ID 1 3 "Cancel") catclose $MSG_CAT_ID The file descriptor returned by catopen must be closed -using catclose, and not using the sh exec command. +using catclose, and not using the ksh-cde exec command. Using the dtksh Utility to Access X Drawing Functions @@ -3322,6 +3322,6 @@ XtOverrideTranslations $BUTTON2 EXAMPLES None. -SEE ALSO<?Pub Caret>sh(1).]]>sh in the &str-ZC;.]]> +SEE ALSO<?Pub Caret>ksh-cde(1).]]>ksh-cde in the &str-ZC;.]]> diff --git a/cde/doc/en_US.UTF-8/help/FPanel/Ref.sgm b/cde/doc/en_US.UTF-8/help/FPanel/Ref.sgm index 842388c1c..b344f69ce 100644 --- a/cde/doc/en_US.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/en_US.UTF-8/help/FPanel/Ref.sgm @@ -814,6 +814,35 @@ to keep returning. Save a home session by choosing Set Home Session in Style Manager's Startup dialog box. + +Window Rename Dialog + + + +Type the new name in the text field (leave it blank to restore the +default window title). + + + +OK + +Rename the window and close the rename dialog. + + + +Cancel + +Cancel renaming and close the rename dialog. + + + +Help + +Displays this help topic. + + + + diff --git a/cde/doc/en_US.UTF-8/help/Makefile.am b/cde/doc/en_US.UTF-8/help/Makefile.am index b9f15fac3..898dc0676 100644 --- a/cde/doc/en_US.UTF-8/help/Makefile.am +++ b/cde/doc/en_US.UTF-8/help/Makefile.am @@ -13,5 +13,5 @@ include $(top_srcdir)/doc/common/help/sdl-data.am # need to setup a symlink for the C locale to point toward en_US install-data-hook: - $(RM) $(DESTDIR)$(CDE_INSTALLATION_TOP)/appconfig/help/C + $(RM) -rf $(DESTDIR)$(CDE_INSTALLATION_TOP)/appconfig/help/C cd $(DESTDIR)$(CDE_INSTALLATION_TOP)/appconfig/help/ && $(LN_S) en_US.UTF-8 C diff --git a/cde/doc/en_US.UTF-8/man/Makefile.am b/cde/doc/en_US.UTF-8/man/Makefile.am index 669895597..a3415d8b8 100644 --- a/cde/doc/en_US.UTF-8/man/Makefile.am +++ b/cde/doc/en_US.UTF-8/man/Makefile.am @@ -1,11 +1,14 @@ MAINTAINERCLEANFILES = Makefile.in -DBTOMAN = $(top_srcdir)/programs/dtdocbook/doc_utils/dtdocbook2man +# this sets the LANG variables +include $(top_srcdir)/programs/localized/templates/English.am + +DBTOMAN = $(top_srcdir)/programs/dtdocbook/doc_utils/dtdocbook2man $(LANG) # first, the man pages broken down by sections MANSEC1 = man1/tttrace.1 man1/tttar.1 man1/ttsession.1 man1/ttrmdir.1 \ man1/ttrm.1 man1/ttmv.1 man1/ttcp.1 man1/tt_type_comp.1 \ - man1/ksh.1 man1/huffcode.1 man1/dtwm.1 man1/dtudcfonted.1 \ + man1/ksh-cde.1 man1/huffcode.1 man1/dtwm.1 man1/dtudcfonted.1 \ man1/dtudcexch.1 man1/dttypes.1 man1/dtterm.1 man1/dtstyle.1 \ man1/dtsrload.1 man1/dtsrkdump.1 man1/dtsrindex.1 man1/dtsrhan.1 \ man1/dtsrdbrec.1 man1/dtsrcreate.1 man1/dtsession_res.1 \ @@ -520,7 +523,7 @@ man1/dtwm.1: ../guides/man/man1_dt/wm.sgm $(MANDEPS) man1/huffcode.1: ../guides/man/man1_dt/huffcode.sgm $(MANDEPS) $(DBTOMAN) cdedecl.sgm $< $@ -man1/ksh.1: ../guides/man/man1/ksh93.sgm $(MANDEPS) +man1/ksh-cde.1: ../guides/man/man1/ksh93.sgm $(MANDEPS) $(DBTOMAN) cdedecl.sgm $< $@ man1/tt_type_comp.1: ../guides/man/man1/tt_typ_c.sgm $(MANDEPS) diff --git a/cde/doc/es_ES.UTF-8/help/FPanel/Ref.sgm b/cde/doc/es_ES.UTF-8/help/FPanel/Ref.sgm index 7c37754a0..737c5497d 100644 --- a/cde/doc/es_ES.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/es_ES.UTF-8/help/FPanel/Ref.sgm @@ -670,6 +670,41 @@ Establecer sesión de inicio en el cuadro de diálogo Arranque del Gestor de estilos. + +Cuadro de diálogo Cambiar nombre de ventana + + + +Escriba el nuevo nombre en el campo de texto (déjalo en blanco para +restaurar el título de ventana predeterminado). + + + +OK + + +Cambie el nombre de la ventana y cierre el cuadro de diálogo de +cambio de nombre. + + + + +Cancelar + + +Cancele el cambio de nombre y cierre el cuadro de diálogo de cambio +de nombre. + + + + +Ayuda + +Muestra este tema de ayuda. + + + + Confirmación de la creación de una sesión <anchor diff --git a/cde/doc/fr_FR.UTF-8/help/FPanel/Ref.sgm b/cde/doc/fr_FR.UTF-8/help/FPanel/Ref.sgm index 8d4fd01a9..50a3fbbad 100644 --- a/cde/doc/fr_FR.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/fr_FR.UTF-8/help/FPanel/Ref.sgm @@ -731,6 +731,40 @@ session initiale dans la boîte de dialogue Lancement du Gestionnaire de configuration.</para> <!-- MODULE SEConfirmLogoutWithChoiceDE SElogch.DEa --> </sect2> +<Sect2 Id="WMWindowRenameDialogDE"> +<Title>Boîte de dialogue Renommer la fenêtre + + + +Tapez le nouveau nom dans le champ de texte (laissez-le vide pour +restaurer le titre de fenêtre par défaut). + + + +OK + + +Renommez la fenêtre et fermez la boîte de dialogue de renommage. + + + + +Annuler + + +Annuler le changement de nom et fermez la boîte de dialogue de +changement de nom. + + + + +Aide + +Affiche l'aide. + + + + Confirmation de création de session<anchor id="ConfirmSessionCreation"> diff --git a/cde/doc/it_IT.UTF-8/help/FPanel/Ref.sgm b/cde/doc/it_IT.UTF-8/help/FPanel/Ref.sgm index 7eb6f6b41..bfde1e1e6 100644 --- a/cde/doc/it_IT.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/it_IT.UTF-8/help/FPanel/Ref.sgm @@ -664,6 +664,40 @@ scegliere Impostare sessione iniziale nel riquadro di dialogo Avvio della Gestione degli stili. + +Finestra di dialogo Rinomina finestra + + + +Digitare il nuovo nome nel campo di testo (lasciarlo vuoto per +ripristinare il titolo predefinito della finestra). + + + +OK + + +Rinominare la finestra e chiudere la finestra di dialogo Rinomina. + + + + +Annullare + + +Annulla la ridenominazione e chiudi la finestra di dialogo per la +ridenominazione. + + + + +Aiuto + +Visualizza queste informazioni di aiuto. + + + + Conferma della creazione di una sessione<anchor id="confirmsessioncreation"> diff --git a/cde/doc/ja_JP.UTF-8/help/FPanel/Ref.sgm b/cde/doc/ja_JP.UTF-8/help/FPanel/Ref.sgm index 68258e5f4..ad155b348 100644 --- a/cde/doc/ja_JP.UTF-8/help/FPanel/Ref.sgm +++ b/cde/doc/ja_JP.UTF-8/help/FPanel/Ref.sgm @@ -764,6 +764,35 @@ [スタイル・マネージャの起動] ダイアログ・ボックスの [ホームセッションを設定] を選択して、ホーム・セッションを保存してください。 + +ウィンドウの名前の変更・ダイアログ + + + +テキストフィールドに新しい名前を入力します(空白のままにすると、 +デフォルトのウィンドウ タイトルが復元されます)。 + + + +了解 + +ウィンドウの名前を変更し、名前の変更ダイアログを閉じます。 + + + +取消し + +名前の変更をキャンセルし、名前の変更ダイアログを閉じます。 + + + +ヘルプ + +ヘルプ・トピックを表示します。 + + + + diff --git a/cde/examples/dtaction/Makefile.hp b/cde/examples/dtaction/Makefile.hp deleted file mode 100644 index e9215e214..000000000 --- a/cde/examples/dtaction/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:42:21 drk $ -########################################################################## -# -# Makefile for dtdts examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = actions -SOURCES = actions.c -OBJECTS = actions.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -ltt -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtcalendar/Makefile.hp b/cde/examples/dtcalendar/Makefile.hp deleted file mode 100644 index 263a470e2..000000000 --- a/cde/examples/dtcalendar/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:43:48 drk $ -########################################################################## -# -# Makefile for dtcalendar examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = attributes -SOURCES = attributes.c -OBJECTS = attributes.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lcsa -X11LIBS = -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtdnd/Makefile.hp b/cde/examples/dtdnd/Makefile.hp deleted file mode 100644 index 68416fc69..000000000 --- a/cde/examples/dtdnd/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:45:18 drk $ -########################################################################## -# -# Makefile for dtdnddemo -# -# HP Platform -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of -# Novell, Inc. -########################################################################## - -PROGRAM = dtdnddemo -SOURCES = demo.c icon.c text.c file.c buff.c -OBJECTS = demo.o icon.o text.o file.o buff.o -APPDEFAULTS = Dtdnddemo - -DEFINES = -D_HPUX_SOURCE -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -ltt -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) $(APPDEFAULTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - rm -f $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtdts/Makefile.hp b/cde/examples/dtdts/Makefile.hp deleted file mode 100644 index b3132b0e6..000000000 --- a/cde/examples/dtdts/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:47:02 drk $ -########################################################################## -# -# Makefile for dtdts examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = datatyping -SOURCES = datatyping.c -OBJECTS = datatyping.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtscreen/Makefile.hp b/cde/examples/dtscreen/Makefile.hp deleted file mode 100644 index f8275d53a..000000000 --- a/cde/examples/dtscreen/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:48:11 drk $ -########################################################################## -# -# Makefile for dtsession examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = screensaver -SOURCES = screensaver.c -OBJECTS = screensaver.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = -lm - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtsession/Makefile.hp b/cde/examples/dtsession/Makefile.hp deleted file mode 100644 index 6a2a87819..000000000 --- a/cde/examples/dtsession/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:49:37 drk $ -########################################################################## -# -# Makefile for dtsession examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = session -SOURCES = session.c -OBJECTS = session.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtterm/Makefile.hp b/cde/examples/dtterm/Makefile.hp deleted file mode 100644 index 6f2545afc..000000000 --- a/cde/examples/dtterm/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:51:00 drk $ -########################################################################## -# -# Makefile for dtterm examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = term -SOURCES = term.c -OBJECTS = term.o - -DEFINES = -D_HPUX_SOURCE -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtTerm -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/examples/dtwidget/Makefile.hp b/cde/examples/dtwidget/Makefile.hp deleted file mode 100644 index 412708a51..000000000 --- a/cde/examples/dtwidget/Makefile.hp +++ /dev/null @@ -1,53 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:52:14 drk $ -########################################################################## -# -# Makefile for dtwidget examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM1 = controls -SOURCES1 = controls.c -OBJECTS1 = controls.o - -PROGRAM2 = editor -SOURCES2 = editor.c -OBJECTS2 = editor.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtWidget -lDtSvc -ltt -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM1) $(PROGRAM2) - -$(PROGRAM1):: $(OBJECTS1) - $(CC) -o $(PROGRAM1) $(LDFLAGS) $(OBJECTS1) $(LIBRARIES) - -$(PROGRAM2):: $(OBJECTS2) - $(CC) -o $(PROGRAM2) $(LDFLAGS) $(OBJECTS2) $(LIBRARIES) - -clean:: - $(RM) $(PROGRAM1) $(OBJECTS1) - $(RM) $(PROGRAM2) $(OBJECTS2) diff --git a/cde/examples/dtwsm/Makefile.hp b/cde/examples/dtwsm/Makefile.hp deleted file mode 100644 index 8a93974f0..000000000 --- a/cde/examples/dtwsm/Makefile.hp +++ /dev/null @@ -1,53 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:53:35 drk $ -########################################################################## -# -# Makefile for dtwidget examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM1 = occupy -SOURCES1 = occupy.c -OBJECTS1 = occupy.o - -PROGRAM2 = wsinfo -SOURCES2 = wsinfo.c -OBJECTS2 = wsinfo.o - -DEFINES = -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtSvc -ltt -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM1) $(PROGRAM2) - -$(PROGRAM1):: $(OBJECTS1) - $(CC) -o $(PROGRAM1) $(LDFLAGS) $(OBJECTS1) $(LIBRARIES) - -$(PROGRAM2):: $(OBJECTS2) - $(CC) -o $(PROGRAM2) $(LDFLAGS) $(OBJECTS2) $(LIBRARIES) - -clean:: - $(RM) $(PROGRAM1) $(OBJECTS1) - $(RM) $(PROGRAM2) $(OBJECTS2) diff --git a/cde/examples/template/Makefile.hp b/cde/examples/template/Makefile.hp deleted file mode 100644 index 21e8820f0..000000000 --- a/cde/examples/template/Makefile.hp +++ /dev/null @@ -1,107 +0,0 @@ -# $XConsortium: Makefile.hp /main/3 1996/05/13 12:00:59 drk $ -########################################################################## -# -# Makefile for template example (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f -DTHELPTAG = dthelptag -GENCAT = gencat -MKDIR = mkdir -p -CP = cp -CHMODEXE = chmod a+x - -LOCALE = C - -PACKAGE = template -APPGROUPNAME = template -PROGRAM = templatebin -SOURCES = template.c -OBJECTS = template.o -HELPSOURCE = $(LOCALE)/template.htg -HELPFILE = $(LOCALE)/template.sdl -MSGSOURCE = $(LOCALE)/template.msg -MSGFILE = $(LOCALE)/template.cat -TYPEFILE = $(LOCALE)/template.dt -ICONFILES = \ - $(LOCALE)/template.t.pm $(LOCALE)/template.t.bm \ - $(LOCALE)/template.s.pm $(LOCALE)/template.s.bm \ - $(LOCALE)/template.m.pm $(LOCALE)/template.m.bm \ - $(LOCALE)/template.l.pm $(LOCALE)/template.l.bm \ - $(LOCALE)/template_icon.pm $(LOCALE)/template_icon_m.bm \ - $(LOCALE)/template-brush.bm -APPDEFAULTSSRC = $(LOCALE)/Template.ad -APPDEFAULTS = $(LOCALE)/Template -README = $(LOCALE)/README -EXAMPLES = $(LOCALE)/example.template -ACTIONS = TemplateNew TemplateOpen TemplatePrint - -DEFINES = -D_INCLUDE_XOPEN_SOURCE -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -lDtHelp -lDtSvc -lXm -ltt -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - $(CC) -c $(CFLAGS) $(INCLUDES) $< - -#all:: $(PACKAGE) - -$(PACKAGE):: $(PROGRAM) $(HELPFILE) $(MSGFILE) $(APPDEFAULTS) \ - $(ICONFILES) $(TYPEFILE) $(README) $(EXAMPLES) $(ACTIONS) - - $(RM) -r $(PACKAGE) - - $(MKDIR) $(PACKAGE)/bin - $(MKDIR) $(PACKAGE)/app-defaults/C - $(MKDIR) $(PACKAGE)/msg/C - - $(CP) $(PROGRAM) $(PACKAGE)/bin - $(CP) $(MSGFILE) $(PACKAGE)/msg/C - $(CP) $(APPDEFAULTS) $(PACKAGE)/app-defaults/C - - $(MKDIR) $(PACKAGE)/dt/appconfig/icons/C - $(MKDIR) $(PACKAGE)/dt/appconfig/help/C - $(MKDIR) $(PACKAGE)/dt/appconfig/types/C - $(MKDIR) $(PACKAGE)/dt/appconfig/appmanager/$(LOCALE)/$(APPGROUPNAME) - - $(CP) $(ICONFILES) $(PACKAGE)/dt/appconfig/icons/C - $(CP) $(HELPFILE) $(PACKAGE)/dt/appconfig/help/C - $(CP) $(TYPEFILE) $(PACKAGE)/dt/appconfig/types/C - $(CHMODEXE) $(ACTIONS) - $(CP) $(README) $(EXAMPLES) $(ACTIONS) \ - $(PACKAGE)/dt/appconfig/appmanager/$(LOCALE)/$(APPGROUPNAME) - -$(PROGRAM):: $(OBJECTS) - $(CC) -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -$(APPDEFAULTS):: $(APPDEFAULTSSRC) - $(CP) $(APPDEFAULTSSRC) $(APPDEFAULTS) - -$(HELPFILE):: $(HELPSOURCE) - $(DTHELPTAG) $(HELPSOURCE) - -$(MSGFILE):: $(MSGSOURCE) - $(GENCAT) $(MSGFILE) $(MSGSOURCE) - -clean:: - $(RM) $(PROGRAM) $(OBJECTS) $(MSGFILE) $(APPDEFAULTS) - $(DTHELPTAG) -clean $(HELPSOURCE) - $(RM) -r template diff --git a/cde/examples/tt/Makefile.hp b/cde/examples/tt/Makefile.hp deleted file mode 100644 index 6d9cb15ac..000000000 --- a/cde/examples/tt/Makefile.hp +++ /dev/null @@ -1,45 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 12:02:22 drk $ -########################################################################## -# -# Makefile for ToolTalk examples (HP) -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Novell, Inc. -# -########################################################################## - -CC = cc -RM = rm -f - -PROGRAM = broadcast -SOURCES = broadcast.c -OBJECTS = broadcast.o - -DEFINES = -D_HPUX_SOURCE -CDEBUGFLAGS = -O -CFLAGS = -Aa -z $(DEFINES) $(CDEBUGFLAGS) - -DTINCLUDE = -I/usr/dt/include -X11INCLUDE = -I/usr/include/X11R5 - -INCLUDES = $(DTINCLUDE) $(X11INCLUDE) - -DTLIBS = -L/usr/dt/lib -ltt -lXm -X11LIBS = -L/usr/lib/X11R5 -lXt -lX11 -SYSLIBS = - -LIBRARIES = $(DTLIBS) $(X11LIBS) $(SYSLIBS) -LDFLAGS = - -.c.o: - ${CC} -c $(CFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - ${CC} -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - ${RM} $(PROGRAM) $(OBJECTS) diff --git a/cde/include/Dt/PamSvc.h b/cde/include/Dt/PamSvc.h deleted file mode 100644 index d76ff3e33..000000000 --- a/cde/include/Dt/PamSvc.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: pam_svc.h /main/3 1996/10/30 11:13:40 drk $ */ -/******************************************************************************* -** -** "@(#)pam_svc.h 1.4 95/09/12 -** -** Copyright 1993, 1994, 1995 Sun Microsystems, Inc. All rights reserved. -** -** This file contains header info related to use of PAM -** (Pluggable Authentication Module) library. -** -*******************************************************************************/ -/* * - * (c) Copyright 1993, 1994 Hewlett-Packard Company * - * (c) Copyright 1993, 1994 International Business Machines Corp. * - * (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc. * - * (c) Copyright 1993, 1994 Novell, Inc. * - */ - -#ifndef _DT_PAM_SVC_H -#define _DT_PAM_SVC_H - -#include - -#define DT_BAD_GID 29 /* Invalid Group ID */ -#define DT_INITGROUP_FAIL 30 /* group IDs init failed */ -#define DT_BAD_UID 31 /* Invaid User ID */ - -/* - * External procedure declarations - */ - -extern int _DtAuthentication(char*, char*, char*, char*, char*); -extern int _DtAccounting(char*, char*, char[], char*, char*, pid_t, int, int); -extern int _DtSetCred(char*, char *, uid_t, gid_t); - -#endif /* _DT_PAM_SVC_H */ diff --git a/cde/include/Dt/SearchP.h b/cde/include/Dt/SearchP.h index e4a1b090d..d9e75bc5f 100644 --- a/cde/include/Dt/SearchP.h +++ b/cde/include/Dt/SearchP.h @@ -154,13 +154,6 @@ #define UNIX /* used in vista.h and elsewhere */ #endif -#ifdef HP_COMPILER -#define _INCLUDE_HPUX_SOURCE -#define _INCLUDE_POSIX_SOURCE -#define _INCLUDE_XOPEN_SOURCE -#endif - - /*----------------------- AUSTEXT.H --------------------- * DBMS record/key structure and constant declarations. * These represent the database schema formerly in austext.h diff --git a/cde/programs/dthelp/parser/canon1/parser/openent.c b/cde/include/Dt/SvcPam.h similarity index 65% rename from cde/programs/dthelp/parser/canon1/parser/openent.c rename to cde/include/Dt/SvcPam.h index 8023718af..eeb282885 100644 --- a/cde/programs/dthelp/parser/canon1/parser/openent.c +++ b/cde/include/Dt/SvcPam.h @@ -20,17 +20,17 @@ * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth * Floor, Boston, MA 02110-1301 USA */ -/* $XConsortium: openent.c /main/3 1995/11/08 09:39:07 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ -/* Default open SYSTEM entity procedure */ +#ifndef _DT_SVC_PAM_H +#define _DT_SVC_PAM_H -#include "userinc.h" -#include "globdec.h" - -void *m_openent(entcontent) - M_WCHAR *entcontent ; - { - return((void *) fopen(entcontent, "r")) ; - } +int _DtSvcPamAuthenticate(const char *service_name, const char *user, + const char *display_name, const char *user_passwd); +int _DtSvcPamOpenSession(const char *service_name, const char *user, + const char *display_name); +int _DtSvcPamCloseSession(const char *service_name, const char *user, + const char *display_name); +int _DtSvcPamSetcred(const char *service_name, const char *user, + const char *display_name); +#endif diff --git a/cde/include/Dt/TermPrimP.h b/cde/include/Dt/TermPrimP.h index 6da67cac3..2a34e7554 100644 --- a/cde/include/Dt/TermPrimP.h +++ b/cde/include/Dt/TermPrimP.h @@ -51,13 +51,8 @@ ** (is it worth making resources for defaultShell ** and defaultShellArgv0?) JRM */ -#ifdef hpV4 -# define DEFAULT_SHELL "/usr/bin/sh" -# define DEFAULT_SHELL_ARGV0 "sh" -#else /* hpV4 */ -# define DEFAULT_SHELL "/bin/sh" -# define DEFAULT_SHELL_ARGV0 "sh" -#endif /* hpV4 */ +#define DEFAULT_SHELL "/bin/sh" +#define DEFAULT_SHELL_ARGV0 "sh" #ifdef __cplusplus extern "C" { diff --git a/cde/include/Dt/XlationSvc.h b/cde/include/Dt/XlationSvc.h index 4cbf865ba..552239c35 100644 --- a/cde/include/Dt/XlationSvc.h +++ b/cde/include/Dt/XlationSvc.h @@ -123,11 +123,9 @@ platforms as part of a translation. #define _DtPLATFORM_UNKNOWN ((const char *)0) #define _DtPLATFORM_CURRENT ((const char *)0) #define _DtPLATFORM_CDE "CDE" -#define _DtPLATFORM_HPUX "HP-UX" #define _DtPLATFORM_AIX "AIX" #define _DtPLATFORM_SUNOS "SunOS" #define _DtPLATFORM_SOLARIS "Solaris" /* verify */ -#define _DtPLATFORM_XENIX "Xenix" /* verify */ /*$END$*/ diff --git a/cde/include/Dt/dproto.h b/cde/include/Dt/dproto.h index 2baa462f7..37f592a3a 100644 --- a/cde/include/Dt/dproto.h +++ b/cde/include/Dt/dproto.h @@ -189,10 +189,10 @@ int d_cmtype(int, int *, int); /* cmtype.c */ int d_connect(int, int); /* connect.c */ int d_cotype(int, int *, int); /* cotype.c */ int d_crget(DB_ADDR *, int); /* crget.c */ -int d_crread(long, char *, int); /* crread.c */ +int d_crread(long, void *, int); /* crread.c */ int d_crset(DB_ADDR *, int); /* crset.c */ int d_crtype(int *, int); /* crtype.c */ -int d_crwrite(long, char *, int); /* crwrite.c */ +int d_crwrite(long, void *, int); /* crwrite.c */ int d_csmget(int, DB_ADDR *, int); /* csmget.c */ int d_csmread(int, long, char *, int); /* csmread.c */ @@ -217,7 +217,7 @@ int d_recnext(int); /* recnext.c */ int d_recprev(int); /* recprev.c */ int d_destroy(const char *); /* destroy.c */ int d_discon(int, int); /* discon.c */ -int d_fillnew(int, const char *, int); /* fillnew.c */ +int d_fillnew(int, const void *, int); /* fillnew.c */ int d_findco(int, int); /* findco.c */ int d_findfm(int, int); /* findfm.c */ int d_findlm(int, int); /* findlm.c */ @@ -258,9 +258,9 @@ int d_reclast(int, int); /* reclast.c */ int d_reclock(int, char *, int); /* dblfcns.c */ int d_reclstat(int, char *, int); /* dblfcns.c */ int d_recover(const char *); /* recover.c */ -int d_recread(char *, int); /* recread.c */ +int d_recread(void *, int); /* recread.c */ int d_recset(int, int); /* recset.c */ -int d_recwrite(const char *, int); /* recwrite.c */ +int d_recwrite(const void *, int); /* recwrite.c */ int d_renfile(const char *dbn, FILE_NO fno, const char *fnm); /* renfile.c */ int d_retries(int); /* dblfcns.c */ int d_rlbclr(void); /* dblfcns.c */ diff --git a/cde/include/Dt/vista.h b/cde/include/Dt/vista.h index a0ace5376..ac47147f7 100644 --- a/cde/include/Dt/vista.h +++ b/cde/include/Dt/vista.h @@ -86,7 +86,6 @@ # define __SVR4_I386_ABI_L1__ #endif #include /* pickup WORD_BIT, LONG_BIT */ -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) # undef __SVR4_I386_ABI_L1__ # ifndef WORD_BIT # define WORD_BIT 32 @@ -94,7 +93,6 @@ # ifndef LONG_BIT # define LONG_BIT 32 # endif -#endif #define db_VERSION "3.dt" /* was "3.10" */ #define dbd_VERSION "V3.dt\032" /* was "V3.00\032" */ @@ -302,9 +300,6 @@ typedef struct {DB_ADDR *ptr; LOCK_DESC} DB_ADDR_P; #ifdef ANSI #define Piv(t) ,... /* begining of variable number of parameters */ #define Pv(t) /**/ /* function has 0 or more parameters */ -#else -#define Piv(t) , /* [XENIX] begining of variable number of parameters */ -#define Pv(t) , /* [XENIX] function has 0 or more parameters */ #endif #else #define P0 /**/ diff --git a/cde/include/EUSCompat.h b/cde/include/EUSCompat.h index 320e6ccfd..68140abe8 100644 --- a/cde/include/EUSCompat.h +++ b/cde/include/EUSCompat.h @@ -52,9 +52,7 @@ extern "C" { ** System V R4 based systems define the stuff we need in ** sys/types.h. Include that and then we are done. */ -#if defined(HPUX) || defined(__linux__) || defined(SunOS) || defined(CSRG_BASED) -# include -#endif +#include #if defined(CSRG_BASED) || defined(__linux__) # include @@ -69,44 +67,6 @@ extern "C" { #endif #endif /* sun && _XOPEN_SOURCE */ -/* -** HPUX defines most of what we need, if we set the right -** include options before including the system files. -*/ -#if defined(HPUX) - -#ifndef _INCLUDE_POSIX_SOURCE -#define _INCLUDE_POSIX_SOURCE -#endif - -#ifndef _INCLUDE_XOPEN_SOURCE -#define _INCLUDE_XOPEN_SOURCE -#endif - -#ifndef _INCLUDE_AES_SOURCE -#define _INCLUDE_AES_SOURCE -#endif - -#ifndef _INCLUDE_HPUX_SOURCE -#define _INCLUDE_HPUX_SOURCE -#endif - -#ifndef hpV4 -typedef unsigned long ulong_t; -#endif /* hpV4 */ -typedef unsigned char uchar_t; -typedef enum {B_FALSE, B_TRUE} boolean_t; - -#define _SC_PAGESIZE _SC_PAGE_SIZE - -#ifndef MAXPATHLEN -#include -#endif - -#define MAXNAMELEN 256 - -#endif /* HPUX */ - #if defined(__linux__) || defined(CSRG_BASED) #include /* memset for libcsa and others */ typedef enum {B_FALSE, B_TRUE} boolean_t; @@ -115,7 +75,7 @@ typedef enum {B_FALSE, B_TRUE} boolean_t; /* -** AIX, like HPUX defines most of what we need. +** AIX defines */ #if defined(AIX) @@ -130,7 +90,6 @@ typedef enum {B_FALSE, B_TRUE} boolean_t; #include #define _SC_PAGESIZE _SC_PAGE_SIZE -#define vfork fork #ifndef MAXPATHLEN #include diff --git a/cde/include/Makefile.am b/cde/include/Makefile.am index 5db7f3a8b..0a1022c5f 100644 --- a/cde/include/Makefile.am +++ b/cde/include/Makefile.am @@ -28,7 +28,4 @@ nobase_include_HEADERS = Dt/Editor.h \ Dt/Search.h \ Dt/Mmdb.h \ Dt/DtXinerama.h \ - Dt/PamSvc.h - - - + Dt/SvcPam.h diff --git a/cde/include/SPC/spc-proto.h b/cde/include/SPC/spc-proto.h index c22b8a82f..d459baca5 100644 --- a/cde/include/SPC/spc-proto.h +++ b/cde/include/SPC/spc-proto.h @@ -110,7 +110,6 @@ #define DELETE_LOGFILE 21 -#define RESET_TERMIO 22 /* This is obsolete, (hpux binary version) */ #define RESET_TERMIOS 23 /* New B.00 protocol requests */ diff --git a/cde/include/bms/sbport.h b/cde/include/bms/sbport.h index 8f26b028e..000524c16 100644 --- a/cde/include/bms/sbport.h +++ b/cde/include/bms/sbport.h @@ -44,7 +44,6 @@ __cplusplus - Will be set for C++ compilers __STDCPP__ - Will be set for ANSI and C++ compilers - __hpux - Will be set for HP-UX systems __sun - Will be set for SUN systems __aix - Will be set for IBM (AIX) systems @@ -88,27 +87,12 @@ # define __sun #endif -#if defined(hpux) && !defined(__hpux) -# define __hpux -#endif - #if defined(_AIX) && !defined(__aix) # define __aix # define OSF_MOTIF_1_1_1 # define OSF_BUG #endif -#ifdef __hpux -# define __sysv -/* __hp9000s300 or __hp9000s800 is defined by HP-UX cpp */ -# if !defined (__hpux_8_0) -# define __hp_7_0 -# endif -# define __hp_nls_16 -# define __hp_color_object -# define __unsigned_char_ptr_yytext -#endif /* __hpux */ - #ifdef __sun # if defined(sparc) && !defined(__sparc) # define __sparc @@ -181,7 +165,7 @@ /* about above. So, declare them only if we don't already have them */ /* ----------------------------------------------------------------- */ -#if defined(_HPUX_SOURCE) || defined(__sun) || defined(_INCLUDE_BSD_SOURCE) || defined(__aix) || defined(__linux__) +#if defined(__sun) || defined(_INCLUDE_BSD_SOURCE) || defined(__aix) || defined(__linux__) /* the "u_types" are defined in standard files */ # undef _INCLUDE_BSD_SOURCE #else diff --git a/cde/lib/DtHelp/AccessCCDF.c b/cde/lib/DtHelp/AccessCCDF.c index b301c67b2..9fb60eb5d 100644 --- a/cde/lib/DtHelp/AccessCCDF.c +++ b/cde/lib/DtHelp/AccessCCDF.c @@ -59,6 +59,8 @@ extern int errno; #endif +extern char *_DtHelpGetLocale(void); + /* * Canvas Engine includes */ diff --git a/cde/lib/DtHelp/FormatSDL.c b/cde/lib/DtHelp/FormatSDL.c index e863cd8da..a6b960e99 100644 --- a/cde/lib/DtHelp/FormatSDL.c +++ b/cde/lib/DtHelp/FormatSDL.c @@ -4366,7 +4366,7 @@ FindSnbEntry( * but safe for overlapping regions. */ static void *strmove(void *dest, const void *src) { - memmove(dest, src, strlen(src) + 1); + return memmove(dest, src, strlen(src) + 1); } /****************************************************************************** diff --git a/cde/lib/DtHelp/HP-UX.lcx b/cde/lib/DtHelp/HP-UX.lcx deleted file mode 100644 index 0acd5600b..000000000 --- a/cde/lib/DtHelp/HP-UX.lcx +++ /dev/null @@ -1,606 +0,0 @@ -!!!!!!!!!!!!!! HP-UX Locale-Related Translations !!!!!!!!!!!!!! -! File: HP-UX.lcx -! Default location: /usr/dt/config/svc/HP-UX.lcx -! Purpose: -! Define the HP-specific set of locale-related translations. -! Description: -! This file contains the set of all locale-related translations -! that can occur during _DtLcxXlateOpToStd() and _DtLcxStdToOp() -! calls on HP platforms. Note that platform-specific tables may -! include more than one translation to and from CDE standard -! strings if they can be distinguished by version, operation, or -! pattern matching. -! -! It is important that additional CDE standard strings only -! be created by the CDE owner of the _DtLcx translation service -! and NOT be created by an individual vendor or user. This be because -! the purpose of adopting a set of CDE standard strings is to -! support interoperability across platforms. If individual vendors -! add their own "standard" strings and these strings are not -! known on other platforms, then the goal of interoperability -! will be defeated. -! -! If you feel that a new CDE standard string is needed, -! contact your CDE representative/vendor with a specific -! proposal and justification and have them forward it to -! the owner of the CDE _DtLcx service. -! -! Note that it is allowed for vendors and users to add new -! operations for which translations are specified and which -! utilize the standard strings. If the operations are of -! general utility, please bring them to the attention of -! your CDE representative/vendor for forwarding to the -! _DtLcx owner. -! Invoked by: -! This table is used by the _DtLcx translation service -! Product: @(#)Cde1 -! Revision: $XConsortium: HP-UX.lcx /main/3 1995/10/26 12:23:15 rswiston $ -! Defects: -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -!!!!!!!!!!!!!!!! translation specification syntax !!!!!!!!!!!!!!!!!!! -! Introductory fields: -! ==================== -! The _DtLcx translation specifications have a fixed number of -! introductory fields followed by a several standard value -! fields and the operation-specific value. -! The introductory fields are: -! ... -! -! Platform generally is the same string as uname(1) -s. -! Version range utilizes normalized version numbers that -! are acquired using the 'version' translations. -! Operations are one or more comma-separated strings that -! uniquely identify the operation associated with the -! operation-specific value. This string is specified -! as part of the request for a translation. -! -! Kinds of translations allow the mechanism to support several modes -! of operation, each useful for different purposes. When -! reading or writing a specification, pay particular attention -! to the kind of specification, as this guides the usage of it. -! -! Specification kinds: -! .=. means a valid bi-directional translation requiring the op-value -! in the translation specification to exactly match the op-value of -! the call to _DtLcxXlateOpToStd(), e.g. foo matches only foo -! .~. means a valid bi-directional translation requiring the op-value -! in the translation specification to match the beginning of the -! op-value of the call to _DtLcxXlateOpToStd(), e.g. foo matches -! foo@bar. This is often useful, e.g. for operation-specific -! locale strings that may also contain modifier suffixes. -! .>. means only from standard to op-specific (generally a -! compatibility translation, meaning on op-specific value -! that will work for the standard, although that is not -! the straight mapping) -! .<. means only from op-specific to standard (generally a -! regex in the op-value which is used to map a class of -! op values to a standard value) -! .0. means that translation is not supported and if a translation -! request matches the specification, the request will fail. -! -! Standard values: -! ================ -! _DtLcx defines the order of the standard values in the -! translations it utilizes. All translation specifications -! must adhere to this order. -! .. -! In CDE 1.0, no modifiers are standardized and that -! portion of the table is unspecified. This means -! that no CDE standard modifiers are available across -! platforms. Operations that use only the -! should specify the wildcard character ("?") for the -! value. -! -! Operation-specific value: -! ========================= -! The operation-specific value is a string that is used -! according to the kind of translation. The syntax is -! : -! or : "", if it contains white space -! -! Filling in the table of translations: -! ===================================== -! The person preparing the translation table should know -! the minimum version of the target platform that is -! be supported. For example, assume that we must -! complete the table for all versions 9.00 and higher. -! -! The objective is then to provide two sets of translations: -! a full set of translations from CDE standard locales to -! valid platform locales, and a full set of translations -! from valid platform locales to some or all CDE standard -! locales. -! -! Translations from CDE standard locales to valid platform -! locales must use the .~. .=. or .>. mappings. When there -! is a 1:1 mapping between a CDE locale and a platform locale, -! use the .~. or .=. mapping. See the comment below to -! decide which to use. When there is no 1:1 mapping between -! CDE locale and platform locale, use the .>. mapping. This -! provides a valid translation from the CDE locale to the -! best-suitable platform locale, but never translates from -! that platform locale to the CDE locale. -! -! Translations from every platform locale to the appropriate -! CDE locale must use the .~. .=. or .<. mappings. -! When there is a 1:1 mapping between a platform locale and -! a CDE standard locale, use the .~. or .=. mapping. See the -! comment below to decide which to use. If there is a 1:1 -! mapping, but the platform locale pattern uses a regular -! expression, or if more than one platform locale can -! be translated to one CDE standard locale, the .<. mapping must -! be used. -! -! If no appropriate CDE standard locale can be found, you have -! identified the need for a new CDE standard locale. Refer to -! the instructions at the head of this file for how to go about -! registering a new CDE standard locale. You should not create -! a new "standard" locale (the left hand side of the translation -! specification) without registering it with CDE, because this -! will hinder the free exchange of information across locales -! and platforms. -! -! The .=. and .~. mappings are similar. The difference is -! that the .=. mapping requires an exact string match between -! the platform locale and the string provided to the -! translation routine. Generally speaking, this mapping -! is risky unless exact matchings can be guaranteed in -! all DtLcx clients for the particular operation in question. -! The .~. mapping is to be preferred, but the .=. translation -! is useful in limited situations, where similar strings may -! occur. -! -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - -! uncomment this resource to debug/test the translation db -!*debugDtXlate: True - -!!!!!!!!!!!!!!!! HP Version Identificaton !!!!!!!!!!!!!!!!! -! These translations are used by the _DtXlateGetXlateEnv() -! call to determine the version number to use. -! -! To understand the translation, realize that the -! operation-specific regexp(5) pattern on the right -! hand side is matched against the strings returned -! by uname(2). The best match determines the "normalized" -! version number of the platform, which should range from -! 001 and up. By convention, major release numbers -! map to centuries and minor release numbers to within -! the century. -! -! To determine the string that the regular expression on the -! right hand side is matching against, use uname(1) and run -! 'uname -r' and 'uname -v' and note the strings. During execution, -! the strings returned by this command are retrieved and -! concatenated "rv"--in that order, no extra spaces. -! This is the string that the pattern must match. -! -! Sometimes this string may not be intuitive. For example, -! note that AIX 3.2 returns 2 for 'uname -r' and 3 for 'uname -v'. -! So the pattern string must be 23, not 32. Do not go by -! the order of 'uname -rv' or 'uname -vr', as that is not used. -!!! -HP-UX.?.version.<.1000: "[A-Z]\\.10\\.00" !! any HPUX 10.00 version -HP-UX.?.version.<.1001: "[A-Z]\\.10\\..*" !! any HPUX 10.x version -HP-UX.?.version.<.900: "[A-Z]\\.09\\..*" !! any HPUX 9.x version -HP-UX.?.version.<.903: "[A-Z]\\.09\\.0[3-9].*" !! any HPUX 9.03-9.09 version -HP-UX.?.version.<.910: "[A-Z]\\.09\\.[1-9].*" !! any HPUX 9.1+ version -HP-UX.?.version.<.800: "[A-Z]\\.08\\..*" !! any HPUX 8.x version - - -!!!!!!!!!!!!!!!! HP-specific setlocale translations !!!!!!!!!!!!!!!!!!! -! These translations are for the string returned by the -! getlocale() or setlocale(LC_xxx,NULL) operations, but not -! setlocale(LC_ALL,NULL) operation. -! -! It provides translations from HP operation-specific -! to CDE standard strings and back again. -! -! Some language,territory combinations have the following comments: -! (1) These ISO territory names may be subject to change -! However, their CDE names will continue to be supported -! (2) No ISO "territory" name exists for the Arabic-speaking regions of the -! world as a whole. Vendors have sometimes supplied their own. -! Those names, when conformant to the ISO model, will be adopted for CDE. -! -!Platform Operation Lang_Terr Op-Value Language,Territory Who has -!--- --------- ----- -------- ------------------ ------- -! Version Kind Codeset -! ---- - --------- - -! setlocales Compliance -HP-UX.700+.setlocale.~.C.HP-ROMAN8: C ! setlocales compliance ,IBM, HP, Sun , -HP-UX.700+.setlocale.<.C.HP-ROMAN8: C.roman8 ! setlocales compliance ,IBM, HP, Sun , -HP-UX.700+.setlocale.~.C.ISO-8859-1: C.iso88591 ! setlocales compliance ,IBM, HP, Sun , -HP-UX.700+.setlocale.~.POSIX.HP-ROMAN8: POSIX ! setlocales compliance ,IBM, HP, Sun , -HP-UX.700+.setlocale.<.POSIX.HP-ROMAN8: POSIX.roman8 ! setlocales compliance ,IBM, HP, Sun , -HP-UX.700+.setlocale.~.POSIX.ISO-8859-1: POSIX.iso88591 ! setlocales compliance ,IBM, HP, Sun , - -! W European/Americas, Latin 1 codeset -HP-UX.700+.setlocale.~.da_DK.ISO-8859-1: danish.iso88591 ! Danish, Denmark XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.de_AT.ISO-8859-1: german.iso88591 ! German,Austria XoJIG, , , , -HP-UX.700+.setlocale.>.de_CH.ISO-8859-1: german.iso88591 ! German,Switzerland XoJIG,IBM, , , -HP-UX.700+.setlocale.~.de_DE.ISO-8859-1: german.iso88591 ! German, Germany XoJIG,IBM, HP, Sun ("de"), -HP-UX.700+.setlocale.>.en_AU.ISO-8859-1: english.iso88591 ! English,Australia , , , , -HP-UX.700+.setlocale.>.en_CA.ISO-8859-1: english.iso88591 ! English,Canada XoJIG, , , , -HP-UX.700+.setlocale.>.en_DK.ISO-8859-1: english.iso88591 ! English, Denmark XoJIG, , , , -HP-UX.700+.setlocale.>.en_GB.ISO-8859-1: english.iso88591 ! English, U.K. XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.en_JP.ISO-8859-1: english.iso88591 ! English, Japan XoJIG,IBM, , , -HP-UX.700+.setlocale.>.en_IE.ISO-8859-1: english.iso88591 ! English, Ireland XoJIG, , , , -HP-UX.700+.setlocale.>.en_KR.ISO-8859-1: english.iso88591 ! English,Korea , , , , -HP-UX.700+.setlocale.>.en_MY.ISO-8859-1: english.iso88591 ! English,Malaysia , , , , -HP-UX.700+.setlocale.>.en_NZ.ISO-8859-1: english.iso88591 ! English,New Zealand , , , , -HP-UX.700+.setlocale.>.en_TW.ISO-8859-1: english.iso88591 ! English,Taiwan , , , , -HP-UX.700+.setlocale.~.en_US.ISO-8859-1: english.iso88591 ! English, USA XoJIG,IBM, HP, Sun , -HP-UX.700+.setlocale.>.es_AR.ISO-8859-1: spanish.iso88591 ! Spanish, Argentina , , , Sun , -HP-UX.700+.setlocale.>.es_BO.ISO-8859-1: spanish.iso88591 ! Spanish, Bolivia , , , Sun -HP-UX.700+.setlocale.>.es_CL.ISO-8859-1: spanish.iso88591 ! Spanish, Chile , , , Sun , -HP-UX.700+.setlocale.>.es_CO.ISO-8859-1: spanish.iso88591 ! Spanish, Columbia , , , Sun -HP-UX.700+.setlocale.>.es_CR.ISO-8859-1: spanish.iso88591 ! Spanish, Costa Rica , , , Sun -HP-UX.700+.setlocale.>.es_EC.ISO-8859-1: spanish.iso88591 ! Spanish, Ecuador , , , Sun -HP-UX.700+.setlocale.~.es_ES.ISO-8859-1: spanish.iso88591 ! Spanish, Spain XoJIG,IBM, HP, Sun , -HP-UX.700+.setlocale.>.es_GT.ISO-8859-1: spanish.iso88591 ! Spanish, Guatemala , , , Sun -HP-UX.700+.setlocale.>.es_MX.ISO-8859-1: spanish.iso88591 ! Spanish, Mexico , , , Sun , -HP-UX.700+.setlocale.>.es_PE.ISO-8859-1: spanish.iso88591 ! Spanish, Peru , , , Sun -HP-UX.700+.setlocale.>.es_UY.ISO-8859-1: spanish.iso88591 ! Spanish, Uruguay , , , Sun -HP-UX.700+.setlocale.>.es_VE.ISO-8859-1: spanish.iso88591 ! Spanish, Venezuela , , , Sun , -! HP-UX.700+.setlocale.>.et_EE.ISO-8859-1: ! Estonian, Estonia XoJIG, -HP-UX.700+.setlocale.~.fi_FI.ISO-8859-1: finnish.iso88591 ! Finnish, Finland XoJIG,IBM, HP, , -! HP-UX.700+.setlocale.>.fo_FO.ISO-8859-1: ! Faroese, Faeroe Island XoJIG, -HP-UX.700+.setlocale.>.fr_BE.ISO-8859-1: french.iso88591 ! French,Belgium XoJIG, , , , -HP-UX.700+.setlocale.~.fr_CA.ISO-8859-1: c-french.iso88591 ! French, Canada XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.fr_CH.ISO-8859-1: french.iso88591 ! French, Switzerland XoJIG,IBM, , , -HP-UX.700+.setlocale.~.fr_FR.ISO-8859-1: french.iso88591 ! French, France XoJIG,IBM, HP, Sun ("fr"), -HP-UX.700+.setlocale.~.is_IS.ISO-8859-1: icelandic.iso88591 ! Icelandic, Iceland XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.it_CH.ISO-8859-1: italian.iso88591 ! Italian,Switzerland , , , , -HP-UX.700+.setlocale.~.it_IT.ISO-8859-1: italian.iso88591 ! Italian, Italy XoJIG,IBM, HP, Sun ("it"), -! HP-UX.700+.setlocale.>.kl_GL.ISO-8859-1: ! Greenlandic, Greenland XoJIG, -! HP-UX.700+.setlocale.>.lt_LT.ISO-8859-1: ! Lithuanian, Lithuania XoJIG, -! HP-UX.700+.setlocale.>.lv_LV.ISO-8859-1: ! Latvian, Latvia XoJIG, -HP-UX.700+.setlocale.>.nl_BE.ISO-8859-1: dutch.iso88591 ! Dutch, Belgium XoJIG,IBM, , , -HP-UX.700+.setlocale.~.nl_NL.ISO-8859-1: dutch.iso88591 ! Dutch, The Netherlands XoJIG,IBM, HP, , -HP-UX.700+.setlocale.~.no_NO.ISO-8859-1: norwegian.iso88591 ! Norwegian, Norway XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.pt_BR.ISO-8859-1: portuguese.iso88591 ! Portuguese,Brazil , , , , -HP-UX.700+.setlocale.~.pt_PT.ISO-8859-1: portuguese.iso88591 ! Portuguese, Portugal XoJIG,IBM, HP, , -HP-UX.700+.setlocale.>.sv_FI.ISO-8859-1: swedish.iso88591 ! Swedish, Finland XoJIG, -HP-UX.700+.setlocale.~.sv_SE.ISO-8859-1: swedish.iso88591 ! Swedish, Sweden XoJIG,IBM, HP, Sun ("sv"), - -! W European/Americas, HP-ROMAN8 codeset -HP-UX.700+.setlocale.~.da_DK.HP-ROMAN8: danish ! Danish, Denmark , , HP -HP-UX.700+.setlocale.~.de_DE.HP-ROMAN8: german ! German, Germany , , HP -HP-UX.700+.setlocale.>.en_GB.HP-ROMAN8: english ! English, U.K. , , HP -HP-UX.700+.setlocale.~.en_US.HP-ROMAN8: english ! English, USA , , HP -HP-UX.700+.setlocale.~.es_ES.HP-ROMAN8: spanish ! Spanish, Spain , , HP -HP-UX.700+.setlocale.~.fi_FI.HP-ROMAN8: finnish ! Finnish, Finland , , HP -HP-UX.700+.setlocale.~.fr_CA.HP-ROMAN8: c-french ! French, Canada , , HP -HP-UX.700+.setlocale.~.fr_FR.HP-ROMAN8: french ! French, France , , HP -HP-UX.700+.setlocale.~.is_IS.HP-ROMAN8: icelandic ! Icelandic, Iceland , , HP -HP-UX.700+.setlocale.~.it_IT.HP-ROMAN8: italian ! Italian, Italy , , HP -HP-UX.700+.setlocale.~.nl_NL.HP-ROMAN8: dutch ! Dutch, The Netherlands , , HP -HP-UX.700+.setlocale.~.no_NO.HP-ROMAN8: norwegian ! Norwegian, Norway , , HP -HP-UX.700+.setlocale.~.pt_PT.HP-ROMAN8: portuguese ! Portuguese, Portugal , , HP -HP-UX.700+.setlocale.~.sv_SE.HP-ROMAN8: swedish ! Swedish, Sweden , , HP - -! E European -HP-UX.700+.setlocale.~.cs_CS.ISO-8859-2: czech ! Czech(1) ,IBM, HP -! HP-UX.700+.setlocale.>.hr_HR.ISO-8859-2: ! Croatian, Croatia ,IBM -HP-UX.700+.setlocale.~.hu_HU.ISO-8859-2: hungarian ! Hungarian, Hungry XoJIG,IBM, HP -HP-UX.700+.setlocale.~.pl_PL.ISO-8859-2: polish ! Polish, Poland XoJIG,IBM, HP -HP-UX.700+.setlocale.~.ro_RO.ISO-8859-2: rumanian ! Rumanian, Romania XoJIG,IBM, HP -HP-UX.700+.setlocale.~.sh_YU.ISO-8859-2: serbocroatian ! Serbocroatian, Yugoslavia(1) ,IBM, HP -HP-UX.700+.setlocale.~.sl_CS.ISO-8859-2: slovene ! Slovenian ,IBM, HP -HP-UX.700+.setlocale.>.si_SI.ISO-8859-2: slovene ! Slovenian ,IBM, HP -! HP-UX.700+.setlocale.>.sk_SK.ISO-8859-2: ! Slovak ,IBM - -! Cyrillic -HP-UX.700+.setlocale.~.bg_BG.ISO-8859-5: bulgarian ! Bulgarian, Bulgaria ,IBM, HP -! HP-UX.700+.setlocale.>.mk_MK.ISO-8859-5: ! Macedonian ,IBM -HP-UX.700+.setlocale.~.ru_RU.ISO-8859-5: russian ! Russian(1) ,IBM, HP -HP-UX.700+.setlocale.>.ru_SU.ISO-8859-5: russian ! Russian(1) ,IBM, HP -! HP-UX.700+.setlocale.>.sp_YU.ISO-8859-5: ! Serbian,Yugoslavia(1) ,IBM - -! Arabic -HP-UX.700+.setlocale.~.ar_DZ.ISO-8859-6: arabic.iso88596 ! Arabic(2) ,IBM, HP -HP-UX.700+.setlocale.~.ar_DZ.HP-ARABIC8: arabic-w ! Arabic(2) , , HP -HP-UX.700+.setlocale.~.ar_SA.ISO-8859-6: arabic.iso88596 ! Arabic(2) ,IBM, HP -HP-UX.700+.setlocale.~.ar_SA.HP-ARABIC8: arabic ! Arabic(2) , , HP - -! Hebrew -HP-UX.700+.setlocale.~.iw_IL.ISO-8859-8: hebrew.iso88598 ! Hebrew, Israel ,IBM, HP -HP-UX.700+.setlocale.~.iw_IL.HP-HEBREW8: hebrew ! Hebrew, Israel , , HP - -! Greek -HP-UX.700+.setlocale.~.el_GR.ISO-8859-7: greek.iso88597 ! Greek, Greece ,IBM, HP -HP-UX.700+.setlocale.~.el_GR.HP-GREEK8: greek ! Greek, Greece , , HP - -! Turkish -HP-UX.700+.setlocale.~.tr_TR.ISO-8859-9: turkish.iso88599 ! Turkish, Turkey ,IBM, HP -HP-UX.700+.setlocale.~.tr_TR.HP-TURKISH8: turkish ! Turkish, Turkey , , HP - -! East Asia -HP-UX.700+.setlocale.~.ja_JP.EUC-JP: japanese.euc ! Japanese, Japan ,IBM, HP, Sun ("ja"), -HP-UX.700+.setlocale.~.ja_JP.HP-SJIS: japanese ! Japanese, Japan aka japanese 15 , , HP, -HP-UX.700+.setlocale.>.ja_JP.IBM-932: japanese ! Japanese, Japan ,IBM, HP, Sun ("ja"), -HP-UX.700+.setlocale.~.ja_JP.HP-KANA8: katakana ! Japanese, Japan , , HP, , -HP-UX.700+.setlocale.<.ja_JP.EUC-JP: ujis ! Japanese, Japan , , HP, -HP-UX.700+.setlocale.~.ko_KR.EUC-KR: korean ! Korean, Korea ,IBM, HP, Sun ("ko"), -HP-UX.700+.setlocale.>.zh_CN.EUC-CN: chinese-s ! Chinese, China ,IBM, , Sun ("zh"), -HP-UX.700+.setlocale.~.zh_CN.HP-15CN: chinese-s ! Chinese, China , , HP -HP-UX.700+.setlocale.~.zh_TW.EUC-TW: zh_TW.eucTW ! Chinese, Taiwan ,IBM, HP, Sun , -HP-UX.700+.setlocale.~.zh_TW.HP-BIG5: chinese-t.big5 ! Chinese, Taiwan , , HP, , -HP-UX.700+.setlocale.~.zh_TW.HP-CCDC: chinese-t ! Chinese, Taiwan , , HP, , - -! Thai -HP-UX.700+.setlocale.~.th_TH.TIS-620: thai ! Thai, Thailand ,IBM, HP - -! setlocales Compliance; default codeset on 10.01 systems -HP-UX.1000+.setlocale.~.C.ISO-8859-1: C ! setlocales compliance ,IBM, HP, Sun , -HP-UX.1000+.setlocale.~.POSIX.ISO-8859-1: POSIX ! setlocales compliance ,IBM, HP, Sun , - -! W European/Americas, Latin 1 codeset -HP-UX.1000+.setlocale.>.de_AT.ISO-8859-1: de_DE.iso88591 ! German,Austria XoJIG, , , , -HP-UX.1000+.setlocale.>.de_CH.ISO-8859-1: de_DE.iso88591 ! German,Switzerland XoJIG,IBM, , , -HP-UX.1000+.setlocale.~.de_DE.ISO-8859-1: de_DE.iso88591 ! German, Germany XoJIG,IBM, HP, Sun ("de"), -HP-UX.1000+.setlocale.>.en_AU.ISO-8859-1: en_GB.iso88591 ! English,Australia , , , , -HP-UX.1000+.setlocale.>.en_CA.ISO-8859-1: en_US.iso88591 ! English,Canada XoJIG, , , , -HP-UX.1000+.setlocale.>.en_DK.ISO-8859-1: en_GB.iso88591 ! English, Denmark XoJIG, , , , -HP-UX.1000+.setlocale.>.en_GB.ISO-8859-1: en_GB.iso88591 ! English, U.K. XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.>.en_JP.ISO-8859-1: en_GB.iso88591 ! English, Japan XoJIG,IBM, , , -HP-UX.1000+.setlocale.>.en_IE.ISO-8859-1: en_GB.iso88591 ! English, Ireland XoJIG, , , , -HP-UX.1000+.setlocale.>.en_MY.ISO-8859-1: en_US.iso88591 ! English,Malaysia , , , , -HP-UX.1000+.setlocale.>.en_NZ.ISO-8859-1: en_GB.iso88591 ! English,New Zealand , , , , -HP-UX.1000+.setlocale.~.en_US.ISO-8859-1: en_US.iso88591 ! English, USA XoJIG,IBM, HP, Sun , -HP-UX.1000+.setlocale.>.es_AR.ISO-8859-1: es_ES.iso88591 ! Spanish, Argentina , , , Sun , -HP-UX.1000+.setlocale.>.es_BO.ISO-8859-1: es_ES.iso88591 ! Spanish, Bolivia , , , Sun -HP-UX.1000+.setlocale.>.es_CL.ISO-8859-1: es_ES.iso88591 ! Spanish, Chile , , , Sun , -HP-UX.1000+.setlocale.>.es_CO.ISO-8859-1: es_ES.iso88591 ! Spanish, Columbia , , , Sun -HP-UX.1000+.setlocale.>.es_CR.ISO-8859-1: es_ES.iso88591 ! Spanish, Costa Rica , , , Sun -HP-UX.1000+.setlocale.>.es_EC.ISO-8859-1: es_ES.iso88591 ! Spanish, Ecuador , , , Sun -HP-UX.1000+.setlocale.~.es_ES.ISO-8859-1: es_ES.iso88591 ! Spanish, Spain XoJIG,IBM, HP, Sun , -HP-UX.1000+.setlocale.>.es_GT.ISO-8859-1: es_ES.iso88591 ! Spanish, Guatemala , , , Sun -HP-UX.1000+.setlocale.>.es_MX.ISO-8859-1: es_ES.iso88591 ! Spanish, Mexico , , , Sun , -HP-UX.1000+.setlocale.>.es_PE.ISO-8859-1: es_ES.iso88591 ! Spanish, Peru , , , Sun -HP-UX.1000+.setlocale.>.es_UY.ISO-8859-1: es_ES.iso88591 ! Spanish, Uruguay , , , Sun -HP-UX.1000+.setlocale.>.es_VE.ISO-8859-1: es_ES.iso88591 ! Spanish, Venezuela , , , Sun , -! HP-UX.1000+.setlocale.>.et_EE.ISO-8859-1: ! Estonian, Estonia XoJIG, -HP-UX.1000+.setlocale.~.fi_FI.ISO-8859-1: fi_FI.iso88591 ! Finnish, Finland XoJIG,IBM, HP, , -! HP-UX.1000+.setlocale.>.fo_FO.ISO-8859-1: ! Faroese, Faeroe Island XoJIG, -HP-UX.1000+.setlocale.>.fr_BE.ISO-8859-1: fr_FR.iso88591 ! French,Belgium XoJIG, , , , -HP-UX.1000+.setlocale.~.fr_CA.ISO-8859-1: fr_CA.iso88591 ! French, Canada XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.>.fr_CH.ISO-8859-1: fr_FR.iso88591 ! French, Switzerland XoJIG,IBM, , , -HP-UX.1000+.setlocale.~.fr_FR.ISO-8859-1: fr_FR.iso88591 ! French, France XoJIG,IBM, HP, Sun ("fr"), -HP-UX.1000+.setlocale.~.is_IS.ISO-8859-1: is_IS.iso88591 ! Icelandic, Iceland XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.>.it_CH.ISO-8859-1: it_IT.iso88591 ! Italian,Switzerland , , , , -HP-UX.1000+.setlocale.~.it_IT.ISO-8859-1: it_IT.iso88591 ! Italian, Italy XoJIG,IBM, HP, Sun ("it"), -! HP-UX.1000+.setlocale.>.kl_GL.ISO-8859-1: ! Greenlandic, Greenland XoJIG, -! HP-UX.1000+.setlocale.>.lt_LT.ISO-8859-1: ! Lithuanian, Lithuania XoJIG, -! HP-UX.1000+.setlocale.>.lv_LV.ISO-8859-1: ! Latvian, Latvia XoJIG, -HP-UX.1000+.setlocale.>.nl_BE.ISO-8859-1: nl_NL.iso88591 ! Dutch, Belgium XoJIG,IBM, , , -HP-UX.1000+.setlocale.~.nl_NL.ISO-8859-1: nl_NL.iso88591 ! Dutch, The Netherlands XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.~.no_NO.ISO-8859-1: no_NO.iso88591 ! Norwegian, Norway XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.>.pt_BR.ISO-8859-1: pt_PT.iso88591 ! Portuguese,Brazil , , , , -HP-UX.1000+.setlocale.~.pt_PT.ISO-8859-1: pt_PT.iso88591 ! Portuguese, Portugal XoJIG,IBM, HP, , -HP-UX.1000+.setlocale.>.sv_FI.ISO-8859-1: sv_SE.iso88591 ! Swedish, Finland XoJIG, -HP-UX.1000+.setlocale.~.sv_SE.ISO-8859-1: sv_SE.iso88591 ! Swedish, Sweden XoJIG,IBM, HP, Sun ("sv"), - -! W European/Americas, HP-ROMAN8 codeset -HP-UX.1000+.setlocale.~.da_DK.HP-ROMAN8: da_DK.roman8 ! Danish, Denmark , , HP -HP-UX.1000+.setlocale.~.de_DE.HP-ROMAN8: de_DE.roman8 ! German, Germany , , HP -HP-UX.1000+.setlocale.~.en_GB.HP-ROMAN8: en_GB.roman8 ! English, U.K. , , HP -HP-UX.1000+.setlocale.~.en_US.HP-ROMAN8: en_US.roman8 ! English, USA , , HP -HP-UX.1000+.setlocale.~.es_ES.HP-ROMAN8: es_ES.roman8 ! Spanish, Spain , , HP -HP-UX.1000+.setlocale.~.fi_FI.HP-ROMAN8: fi_FI.roman8 ! Finnish, Finland , , HP -HP-UX.1000+.setlocale.~.fr_CA.HP-ROMAN8: fr_CA.roman8 ! French, Canada , , HP -HP-UX.1000+.setlocale.~.fr_FR.HP-ROMAN8: fr_FR.roman8 ! French, France , , HP -HP-UX.1000+.setlocale.~.is_IS.HP-ROMAN8: is_IS.roman8 ! Icelandic, Iceland , , HP -HP-UX.1000+.setlocale.~.it_IT.HP-ROMAN8: it_IT.roman8 ! Italian, Italy , , HP -HP-UX.1000+.setlocale.~.nl_NL.HP-ROMAN8: nl_NL.roman8 ! Dutch, The Netherlands , , HP -HP-UX.1000+.setlocale.~.no_NO.HP-ROMAN8: no_NO.roman8 ! Norwegian, Norway , , HP -HP-UX.1000+.setlocale.~.pt_PT.HP-ROMAN8: pt_PT.roman8 ! Portuguese, Portugal , , HP -HP-UX.1000+.setlocale.~.sv_SE.HP-ROMAN8: sv_SE.roman8 ! Swedish, Sweden , , HP - -! E European -HP-UX.1000+.setlocale.~.cs_CS.ISO-8859-2: cs_CS.iso88592 ! Czech(1) ,IBM, HP -! HP-UX.1000+.setlocale.>.hr_HR.ISO-8859-2: ! Croatian, Croatia ,IBM -HP-UX.1000+.setlocale.~.hu_HU.ISO-8859-2: hu_HU.iso88592 ! Hungarian, Hungry XoJIG,IBM, HP -HP-UX.1000+.setlocale.~.pl_PL.ISO-8859-2: pl_PL.iso88592 ! Polish, Poland XoJIG,IBM, HP -HP-UX.1000+.setlocale.~.ro_RO.ISO-8859-2: ro_RO.iso88592 ! Rumanian, Romania XoJIG,IBM, HP -HP-UX.1000+.setlocale.~.sh_YU.ISO-8859-2: sh_YU.iso88592 ! Serbocroatian, Yugoslavia(1) ,IBM, HP -HP-UX.1000+.setlocale.~.sl_CS.ISO-8859-2: sl_CS.iso88592 ! Slovenian ,IBM, HP -! HP-UX.1000+.setlocale.>.si_SI.ISO-8859-2: ! Slovenian ,IBM, HP -! HP-UX.1000+.setlocale.>.sk_SK.ISO-8859-2: ! Slovak ,IBM - -! Cyrillic -HP-UX.1000+.setlocale.~.bg_BG.ISO-8859-5: bg_BG.iso88595 ! Bulgarian, Bulgaria ,IBM, HP -! HP-UX.1000+.setlocale.>.mk_MK.ISO-8859-5: ! Macedonian ,IBM -HP-UX.1000+.setlocale.>.ru_RU.ISO-8859-5: ru_SU.iso88595 ! Russian(1) ,IBM, HP -HP-UX.1000+.setlocale.~.ru_SU.ISO-8859-5: ru_SU.iso88595 ! Russian(1) ,IBM, HP -! HP-UX.1000+.setlocale.>.sp_YU.ISO-8859-5: ! Serbian,Yugoslavia(1) ,IBM - -! Arabic -HP-UX.1000+.setlocale.>.ar_DZ.ISO-8859-6: ar_SA.iso88596 ! Arabic(2) ,IBM, HP -HP-UX.1000+.setlocale.~.ar_DZ.HP-ARABIC8: ar_DZ.arabic8 ! Arabic(2) , , HP -HP-UX.1000+.setlocale.~.ar_SA.ISO-8859-6: ar_SA.iso88596 ! Arabic(2) ,IBM, HP -HP-UX.1000+.setlocale.~.ar_SA.HP-ARABIC8: ar_SA.arabic8 ! Arabic(2) , , HP - -! Hebrew -HP-UX.1000+.setlocale.~.iw_IL.ISO-8859-8: iw_IL.iso88598 ! Hebrew, Israel ,IBM, HP -HP-UX.1000+.setlocale.~.iw_IL.HP-HEBREW8: iw_IL.hebrew8 ! Hebrew, Israel , , HP - -! Greek -HP-UX.1000+.setlocale.~.el_GR.ISO-8859-7: el_GR.iso88597 ! Greek, Greece ,IBM, HP -HP-UX.1000+.setlocale.~.el_GR.HP-GREEK8: el_GR.greek8 ! Greek, Greece , , HP - -! Turkish -HP-UX.1000+.setlocale.~.tr_TR.ISO-8859-9: tr_TR.iso88599 ! Turkish, Turkey ,IBM, HP -HP-UX.1000+.setlocale.~.tr_TR.HP-TURKISH8: tr_TR.turkish8 ! Turkish, Turkey , , HP - -! East Asia -HP-UX.1000+.setlocale.~.ja_JP.EUC-JP: ja_JP.eucJP ! Japanese, Japan ,IBM, HP, Sun ("ja"), -HP-UX.1000+.setlocale.~.ja_JP.HP-SJIS: ja_JP.SJIS ! Japanese, Japan ,IBM, HP, Sun ("ja"), -HP-UX.1000+.setlocale.>.ja_JP.IBM-932: ja_JP.SJIS ! Japanese, Japan ,IBM, HP, Sun ("ja"), -HP-UX.1000+.setlocale.~.ja_JP.HP-KANA8: ja_JP.kana8 ! Japanese, Japan , , HP, , -HP-UX.1000+.setlocale.~.ko_KR.EUC-KR: ko_KR.eucKR ! Korean, Korea ,IBM, HP, Sun ("ko"), -HP-UX.1000+.setlocale.>.zh_CN.EUC-CN: zh_CN.15CN ! Chinese, China ,IBM, HP, Sun ("zh"), -HP-UX.1000+.setlocale.~.zh_CN.HP-15CN: zh_CN.15CN ! Chinese, China ,IBM, HP, Sun ("zh"), -HP-UX.1000+.setlocale.~.zh_TW.EUC-TW: zh_TW.eucTW ! Chinese, Taiwan ,IBM, HP, Sun , -HP-UX.1000+.setlocale.~.zh_TW.HP-BIG5: zh_TW.big5 ! Chinese, Taiwan , , HP, , -HP-UX.1000+.setlocale.~.zh_TW.HP-CCDC: zh_TW.ccdc ! Chinese, Taiwan , , HP, , - -! Thai -HP-UX.1000+.setlocale.~.th_TH.TIS-620: th_TH.tis620 ! Thai, Thailand ,IBM, HP - - -! codesets supported for iconv(1,3) on HP-UX 7.0 and above -HP-UX.700+.iconv1,iconv3.=.?.HP-ROMAN8: roman8 -HP-UX.700+.iconv1,iconv3.=.?.ISO-8859-1: iso8859_1 -HP-UX.700+.iconv1,iconv3.=.?.HP-ARABIC8: arabic8 -HP-UX.700+.iconv1,iconv3.=.?.HP-GREEK8: greek8 -HP-UX.700+.iconv1,iconv3.=.?.HP-HEBREW8: hebrew8 -HP-UX.700+.iconv1,iconv3.=.?.HP-TURKISH8: turkish8 -HP-UX.700+.iconv1,iconv3.=.?.EUC-KR: korean15 -HP-UX.700+.iconv1,iconv3.=.?.ISO-2022-JP: jis -HP-UX.700+.iconv1,iconv3.<.?.HP-SJIS: japanese15 -HP-UX.700+.iconv1,iconv3.=.?.HP-SJIS: sjis -HP-UX.700+.iconv1,iconv3.=.?.HP-KANA8: kana8 -HP-UX.700+.iconv1,iconv3.=.?.EUC-JP: ujis -HP-UX.700+.iconv1,iconv3.=.?.HP-CCDC: roc15 - -! codesets supported by iconv(1,3) after HP-UX 10.0 -HP-UX.1000+.iconv1,iconv3.~.?.HP-BIG5: big5 -HP-UX.1000+.iconv1,iconv3.~.?.EUC-TW: eucTW -HP-UX.1000+.iconv1,iconv3.~.?.TIS-620: tis620 -HP-UX.1000+.iconv1,iconv3.>.?.EUC-CN: hp15cn -HP-UX.1000+.iconv1,iconv3.~.?.HP-15CN: hp15cn -HP-UX.1000+.iconv1,iconv3.~.?.EUC-KR: eucKR -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-2: iso8859_2 -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-5: iso8859_5 -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-6: iso8859_6 -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-7: iso8859_7 -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-8: iso8859_8 -HP-UX.1000+.iconv1,iconv3.~.?.ISO-8859-9: iso8859_9 -HP-UX.1000+.iconv1,iconv3.~.?.IBM-437: cp437 -HP-UX.1000+.iconv1,iconv3.~.?.IBM-850: cp850 - -! codesets not supported by iconv(1,3) through 10.0 HP-UX release -!HP-UX.?.iconv1,iconv3.=.?.ISO-2022-KR: -!HP-UX.?.iconv1,iconv3.=.?.ISO-2022-TW: -!HP-UX.?.iconv1,iconv3.=.?.ISO-2022-CN: -!HP-UX.?.iconv1,iconv3.~.?.IBM-856: -!HP-UX.?.iconv1,iconv3.~.?.IBM-1046: -!HP-UX.?.iconv1,iconv3.~.?.UCS-2: -!HP-UX.?.iconv1,iconv3.~.?.UTF-8: - -! codesets supported for nl_langinfo on HP-UX 7.0 and above -HP-UX.700-999.nl_langinfo(CODESET).=.?.HP-ROMAN8: ROMAN8 -HP-UX.700-999.nl_langinfo(CODESET).>.?.?: ROMAN8 !!! nl_langinfo is hardwired to ROMAN8 for all codesets -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-ROMAN8: roman8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.ISO-8859-1: iso8859_1 -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-ARABIC8: arabic8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-GREEK8: greek8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-HEBREW8: hebrew8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-TURKISH8: turkish8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.EUC-KR: korean15 !!! verify std matches op -HP-UX.1000+.nl_langinfo(CODESET).<.?.HP-SJIS: japanese15 -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-SJIS: sjis -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-KANA8: kana8 -HP-UX.1000+.nl_langinfo(CODESET).=.?.EUC-JP: ujis -HP-UX.1000+.nl_langinfo(CODESET).=.?.HP-CCDC: roc15 !!! verify std matches op - -! 10.0 and above supported iconv(1) codesets -!!! collect and verify this - -! multibyte codesets -! This translation provides an alternative to a call to -! using setlocale() and MB_CUR_MAX to determine this. -HP-UX.?.multibyte.=.?.EUC-KR: 2 -HP-UX.?.multibyte.=.?.HP-SJIS: 2 -HP-UX.700+.multibyte.=.?.EUC-JP: 2 -HP-UX.1000+.multibyte.=.?.EUC-JP: 4 -HP-UX.?.multibyte.=.?.IBM-932: 2 -HP-UX.?.multibyte.=.?.HP-CCDC: 2 -HP-UX.?.multibyte.=.?.HP-BIG5: 2 -HP-UX.?.multibyte.=.?.EUC-TW: 2 -HP-UX.?.multibyte.=.?.TIS-620: 2 -HP-UX.?.multibyte.=.?.EUC-CN: 2 -HP-UX.?.multibyte.=.?.HP-15CN: 2 -HP-UX.?.multibyte.=.?.EUC-KR: 2 -HP-UX.?.multibyte.=.?.EUC-TW: 2 - -! Translations from predefined CCDF-locales to CDE Standard Locales -HP-UX.700+.ccdf.=.?.HP-ROMAN8: hp-roman8 -HP-UX.700+.ccdf.=.?.ISO-8859-1: iso8859-1 -HP-UX.700+.ccdf.=.ko_KR.EUC-KR: hp-korean15 -HP-UX.700+.ccdf.=.ja_JP.HP-SJIS: hp-japanese15 -HP-UX.700+.ccdf.=.ja_JP.EUC-JP: hp-japaneseeuc -HP-UX.700+.ccdf.=.?.DT-SYMBOL-1: symbol !!! this is the Dt symbol font -! These CDE standard locales may have CCDF-locales, but they are defined by localizers -! HP-UX.700+.ccdf.=.ar_SA.HP-ARABIC8: arabic8 -! HP-UX.700+.ccdf.=.el_GR.HP-GREEK8: greek8 -! HP-UX.700+.ccdf.=.iw_IL.HP-HEBREW8: hebrew8 -! HP-UX.700+.ccdf.=.tr_TR.HP-TURKISH8: turkish8 -! HP-UX.700+.ccdf.<.ja_JP.HP-SJIS: sjis -! HP-UX.700+.ccdf.=.ja_JP.HP-KANA8: kana8 -! HP-UX.700+.ccdf.=.ja_JP.EUC-JP: ujis -! HP-UX.700+.ccdf.=.zh_CN.HP-CCDC: roc15 - - -! Codesets that require multibyte parsing to avoid confusion with shell special chars -HP-UX.?.dtkshSpecialParse.=.ja_JP.HP-SJIS: True -HP-UX.?.dtkshSpecialParse.=.ja_JP.IBM-932: True -HP-UX.?.dtkshSpecialParse.=.zh_TW.HP-BIG5: True -HP-UX.?.dtkshSpecialParse.=.zh_TW.HP-CCDC: True -HP-UX.?.dtkshSpecialParse.=.zh_TW.EUC-TW: True - - -!! When content is exchanged with other platforms, the interchange codeset -!! may be different that the codeset used locally. In CDE1, these translations -!! are used by dtmail, but other clients may use the same translations -!! in the future. For example, to improve interoperability of 8-bit mail, -!! the mail messages of users working in codesets such as HP-ROMAN8 or IBM-850 -!! are translated to the interchangeCodeset (in this case, ISO-8859-1) before -!! they are sent. Similarly, the mail of Japanese users is translated to JIS -!! before it is sent. -HP-UX.?.interchangeCodeset.~.?.ISO-8859-1: ISO-8859-1 ! ISO Latin 1 -HP-UX.?.interchangeCodeset.>.?.HP-ROMAN8: ISO-8859-1 ! HP Roman8 -!HP-UX.?.interchangeCodeset.>.?.IBM-850: ISO-8859-1 ! PC (Multi-lingual) -!HP-UX.?.interchangeCodeset.>.?.IBM-437: ISO-8859-1 ! PC (US) -HP-UX.?.interchangeCodeset.~.?.ISO-8859-2: ISO-8859-2 ! ISO Latin 2 -HP-UX.?.interchangeCodeset.~.?.ISO-8859-5: ISO-8859-5 ! ISO Latin/Cyrillic -HP-UX.?.interchangeCodeset.~.?.ISO-8859-6: ISO-8859-6 ! ISO Latin/Arabic -HP-UX.?.interchangeCodeset.>.?.HP-ARABIC8: ISO-8859-6 ! HP Arabic8 -!HP-UX.?.interchangeCodeset.>.?.IBM-1046: ISO-8859-6 ! PC Arabic Code Set -HP-UX.?.interchangeCodeset.~.?.ISO-8859-8: ISO-8859-8 ! ISO Latin/Hebrew -HP-UX.?.interchangeCodeset.>.?.HP-HEBREW8: ISO-8859-8 ! HP Hebrew8 -!HP-UX.?.interchangeCodeset.>.?.IBM-856: ISO-8859-8 ! PC Hebrew -HP-UX.?.interchangeCodeset.~.?.ISO-8859-7: ISO-8859-7 ! ISO Latin/Greek -HP-UX.?.interchangeCodeset.>.?.HP-GREEK8: ISO-8859-7 ! HP Greek8 -HP-UX.?.interchangeCodeset.~.?.ISO-8859-9: ISO-8859-9 ! ISO Latin 5 -HP-UX.?.interchangeCodeset.>.?.HP-TURKISH8: ISO-8859-9 ! HP Turkish8 -HP-UX.?.interchangeCodeset.~.?.EUC-JP: ISO-2022-JP ! Japanese EUC -HP-UX.?.interchangeCodeset.>.?.HP-SJIS: ISO-2022-JP ! HP Japanese Shift JIS -!HP-UX.?.interchangeCodeset.>.?.IBM-932: ISO-2022-JP ! PC Japanese Shift JIS -HP-UX.?.interchangeCodeset.>.?.HP-KANA8: ISO-2022-JP ! HP Japanese Katakana8 -! comment when ISO-2022-KR iconv available -HP-UX.?.interchangeCodeset.~.?.EUC-KR: EUC-KR ! Korean EUC KSC 5601 -! uncomment when ISO-2022-KR iconv available -!HP-UX.?.interchangeCodeset.~.?.EUC-KR: ISO-2022-KR ! Korean EUC KSC 5601 -! comment when ISO-2022-CN iconv available -HP-UX.?.interchangeCodeset.>.?.EUC-CN: EUC-CN ! China Chinese EUC -HP-UX.?.interchangeCodeset.~.?.HP-15CN: EUC-CN ! HP Chinese EUC -! uncomment when ISO-2022-CN iconv available -!HP-UX.?.interchangeCodeset.>.?.EUC-CN: ISO-2022-CN ! China Chinese EUC -!HP-UX.?.interchangeCodeset.~.?.HP-15CN: ISO-2022-CN ! HP Chinese EUC -! comment when ISO-2022-TW iconv available -HP-UX.?.interchangeCodeset.~.?.EUC-TW: EUC-TW ! Taiwan Chinese EUC -HP-UX.?.interchangeCodeset.>.?.HP-BIG5: EUC-TW ! HP Big5 Chinese -HP-UX.?.interchangeCodeset.>.?.HP-CCDC: EUC-TW ! HP CCDC Chinese -! uncomment when ISO-2022-TW iconv available -!HP-UX.?.interchangeCodeset.~.?.EUC-TW: ISO-2022-TW ! Taiwan Chinese EUC -!HP-UX.?.interchangeCodeset.>.?.HP-BIG5: ISO-2022-TW ! HP Big5 Chinese -!HP-UX.?.interchangeCodeset.>.?.HP-CCDC: ISO-2022-TW ! HP CCDC Chinese -HP-UX.?.interchangeCodeset.~.?.TIS-620: TIS-620 ! Thai -HP-UX.?.interchangeCodeset.>.?.UCS-2: UTF-8 ! multibyte encoding of Unicode -HP-UX.?.interchangeCodeset.~.?.UTF-8: UTF-8 ! multibyte encoding of Unicode - diff --git a/cde/lib/DtHelp/HyperText.c b/cde/lib/DtHelp/HyperText.c index 7ea0935d2..07eec3410 100644 --- a/cde/lib/DtHelp/HyperText.c +++ b/cde/lib/DtHelp/HyperText.c @@ -49,15 +49,11 @@ #include #include #include -#ifdef __hpux -#include -#else /* SUN and IBM */ #ifdef _AIX #include #endif #include #include -#endif #include #include #include @@ -233,11 +229,7 @@ _DtHelpExecProcedure ( /* * fork a child process. */ -#ifdef __hpux - childPid = vfork (); -#else childPid = fork (); -#endif /* __hpux */ /* * If the child, exec the cmd with a shell parent diff --git a/cde/lib/DtHelp/Makefile.am b/cde/lib/DtHelp/Makefile.am index 8aad06f3f..04730f098 100644 --- a/cde/lib/DtHelp/Makefile.am +++ b/cde/lib/DtHelp/Makefile.am @@ -16,7 +16,7 @@ libDtHelp_la_CFLAGS = -I./il -I./jpeg -I../DtSvc/DtUtil2 -DDTLIB \ libDtHelp_la_LIBADD = $(JPEGLIB) il/libil.la $(LTLIBICONV) if SOLARIS -libDtHelp_la_LIBADD += -lw -lgen -lm -lc +libDtHelp_la_LIBADD += -lw -lgen endif diff --git a/cde/lib/DtHelp/Print.c b/cde/lib/DtHelp/Print.c index 8714a9153..a8699a336 100644 --- a/cde/lib/DtHelp/Print.c +++ b/cde/lib/DtHelp/Print.c @@ -1303,11 +1303,7 @@ void _DtHelpPrintJob( } #endif -#ifdef __hpux - pid = vfork(); -#else pid = fork(); -#endif /* __hpux */ if (pid == 0) { diff --git a/cde/lib/DtHelp/StringFuncs.c b/cde/lib/DtHelp/StringFuncs.c index 71749f587..b1e2db671 100644 --- a/cde/lib/DtHelp/StringFuncs.c +++ b/cde/lib/DtHelp/StringFuncs.c @@ -528,11 +528,7 @@ int _DtHelpCeStrHashToKey( _CEStrcollProc _DtHelpCeGetStrcollProc(void) { int Clang = 0; -#if defined(__hpux) - struct locale_data * li; -#else char * locale; -#endif extern int strcoll(const char *,const char *); #if defined(_AIX) @@ -544,15 +540,9 @@ int _DtHelpCeStrHashToKey( #define C_LANG "C" /* if locale is C, use the explicit case insensitive compare */ -#if defined(__hpux) - li = getlocale(LOCALE_STATUS); - if ( NULL == li->LC_COLLATE_D || strcmp(C_LANG,li->LC_COLLATE_D) == 0 ) - Clang = 1; -#else locale = setlocale(LC_COLLATE,NULL); /* put locale in buf */ if (strcmp(locale,C_LANG) == 0) Clang = 1; -#endif if (Clang) #if defined(_AIX) diff --git a/cde/lib/DtHelp/il/ilversion.c b/cde/lib/DtHelp/il/ilversion.c index 00f061d6c..a90c6a913 100644 --- a/cde/lib/DtHelp/il/ilversion.c +++ b/cde/lib/DtHelp/il/ilversion.c @@ -33,31 +33,8 @@ See notes below "ilVersionName". */ -#ifdef __hpux - IL_PRIVATE - char _ilVersionString[] = "HP IL BETA v 23. bl08"; -/* nnnnn vvvvvv bbbb see below - xxxxxxxxxxxxxxxxx total size = 17 chars - - The above version string *must* maintain the syntax and position of all fields - before the ";". The strings have the following format; each string is 5 chars: - nnnnn A 5 char fixed string equal to "HP IL ". - vvvvvv A 6 char string in the format "v!!.??", where !! is the two-digit - major version number (" n" if less than 10), and ?? is the minor - version number ("n " if less than 10). Examples: "v10.12", - "v 9.6 ". - bbbbb A 4 char string in the format "bl??", where ?? is the baselevel - number (e.g. "bl01", "bl56"). - -*/ - -#else - IL_PRIVATE char _ilVersionString[] = "@(#)HP IL v 2.1 bl06; Image Library for Domain/OS SR10.X 'il'"; /* nnnnn vvvvvv bbbb see above xxxxxxxxxxxxxxxxx total size = 17 chars */ - -#endif - diff --git a/cde/lib/DtHelp/libDtHelp.elist b/cde/lib/DtHelp/libDtHelp.elist deleted file mode 100644 index c1cc930df..000000000 --- a/cde/lib/DtHelp/libDtHelp.elist +++ /dev/null @@ -1,747 +0,0 @@ -/**************************************************************************** - * Export list for libDtHelp. - * This list *must* be updated whenever a change is made to the libDtHelp API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libDtHelp.elist /main/17 1999/10/14 13:15:38 mgreess $ - *****************************************************************************/ - -/* - * DtHelp Public Header File List: Those files that are public to developers via - * the Cde Dev Environment. - */ - -public DtHelpReturnSelectedWidgetId -public DtHelpSetCatalogName -public DtCreateHelpDialog -public DtCreateHelpQuickDialog -public DtHelpQuickDialogGetChild - -public dtHelpDialogWidgetClass -public dtHelpQuickDialogWidgetClass - -public dtHelpDialogWidgetClassRec -public dtHelpQuickDialogWidgetClassRec - -/***************************************************************************** - * DtCanvas Semi-private Header File List: Those files used by other desktop - * clients, but not public to cde developers via the Cde Dev Environment. - *****************************************************************************/ -private _DtCanvasCreate -private _DtCanvasClean -private _DtCanvasDestroy -private _DtCanvasResize -private _DtCanvasSetTopic -private _DtCanvasGetMarkPositions -private _DtCanvasRender -private _DtCanvasMoveTraversal -private _DtCanvasGetCurLink -private _DtCanvasGetCurTraversal -private _DtCanvasGetPosLink -private _DtCanvasProcessSelection -private _DtCanvasGetSelection -private _DtCanvasGetSelectionPoints -private _DtCanvasActivatePts -private _DtCanvasLoadMetrics -private _DtCanvasGetSpotInfo - -/***************************************************************************** - * DtLinkMgr Semi-private Header File List: Those files used by other desktop - * clients, but not public to cde developers via the Cde Dev Environment. - *****************************************************************************/ -private _DtLinkDbCreate -private _DtLinkDbDestroy -private _DtLinkDbAddLink -private _DtLinkDbAddSwitch -private _DtLinkDbRemoveLink - -/***************************************************************************** - * DtHelp Semi-private Header File List: Those files used by other desktop - * clients, but not public to cde developers via the Cde Dev Environment. - *****************************************************************************/ - -/**** Used by dthelpgen ****/ -private _DtHelpCeAddPtrToArray -private _DtHelpCeCreateDefCanvas -private _DtHelpCeDestroyCanvas -private _DtHelpCeFreeStringArray -private _DtHelpCeExpandPathname -private _DtHelpCeGetAsciiVolumeAbstract -private _DtHelpCeGetNxtToken -private _DtHelpCeGetResourceString -private _DtHelpCeGetResourceStringArray -private _DtHelpCeGetTopicTitle -private _DtHelpCeGetVolumeLocale -private _DtHelpCeGetVolumeTitle -private _DtHelpCeTracePathName -private _DtHelpCeCloseVolume -private _DtHelpCeOpenVolume - -/**** Used by dthelpview ****/ -private _DtHelpTurnOffHourGlass -private _DtHelpTurnOnHourGlass -private _DtHelpGetMessage - - -/**** Old Ascii Functions ****/ -private _DtHelpFreeTopicData -private _DtHelpGetTopicData -private _DtHelpProcessLinkData - - -/**** Used by cdecruse & cdewalk ****/ -private _DtHelpGetTopicChildren - -/**** Used by dthelpprint ****/ -private _DtHelpTermGetTopicData -private _DtHelpTermCreateCanvas -private _DtHelpCeGetTopicChildren -private _DtHelpCeStrchr -private _DtHelpFileLocate -private _DtHelpCeGetKeywordList -private _DtHelpCeStrrchr -private _DtHelpFileSuffixList -private _DtHelpCeFindKeyword -private _DtHelpCeXlateOpToStdLocale -private _DtHelpCeXlateStdToOpLocale -private _DtHelpCeGetDocStamp -#if !defined(sun) && !defined(__hpux) -private _DtHelpCeStrCaseCmp -#endif - -/**** Used by dtinfo ****/ -private _DtHelpActivateLink -private _DtHelpCleanAndDrawWholeCanvas -private _DtHelpClearSelection -private _DtHelpCopyAction -private _DtHelpCreateDisplayArea -private _DtHelpCreateOutputArea -private _DtHelpDeSelectAll -private _DtHelpGetExactFontIndex -private _DtHelpNextLink -private _DtHelpPageLeftOrRight -private _DtHelpPageUpOrDown -private _DtHelpSearchMoveTraversal -private _DtHelpSelectAll -private _DtHelpSetScrollBars - -private _DtGrLoad -private _DtGrDestroyContext -private _DtGrOpenFile -private _DtGrCloseStream -private _DtGrRegisterConverter -private _DtGrOpenBuffer -private _DtGrSeek -private _DtGrGetChar -private _DtGrGetString -private _DtGrRead - -/**** Additional private symbols ****/ -private _DtHelpCeGetTopTopicId -private _DtHelpCeIsTopTopic - -/***************************************************************************** - **** Private const structures. - **** On HP machines, these core dump if compiled +ESlit and not included - **** in the export list. - *****************************************************************************/ -#if 0 -#ifdef __hpux -private ilBitonal0WhiteImageDes -private ilGray256ImageDes -private ilRGB256ImageDes -private ilPaletteImageDes -private ilYCbCrImageDes -private ilYCbCr2ImageDes - -private ilBitImageFormat -private ilByteImageFormat -private il3BytePixelImageFormat -private il3BytePlaneImageFormat -#endif /* ifdef __hpux */ -#endif - - -/***************************************************************************** - **** Internal symbols nobody should call from outside DtHelp - *****************************************************************************/ -/* DtHelp - internal functions */ -internal _DtCliSrvGetDtUserSession -internal _DtCvAddPtrToArray -internal _DtCvAddSpace -internal _DtCvAddToMarkList -internal _DtCvAdjustForSuperSub -internal _DtCvAdvanceXOfLine -internal _DtCvCalcMarkPos -internal _DtCvChar -internal _DtCvCheckAddHyperToTravList -internal _DtCvCheckInfringement -internal _DtCvCheckLineMarks -internal _DtCvCheckLineSyntax -internal _DtCvCheckOneByteCantBeginList -internal _DtCvCheckOneByteCantEndList -internal _DtCvClearInternalUse -internal _DtCvCvtSegsToPts -internal _DtCvDrawAreaWithFlags -internal _DtCvDrawSegments -internal _DtCvFontMetrics -internal _DtCvFreeArray -internal _DtCvGetCharIdx -internal _DtCvGetMarkSegs -internal _DtCvGetNextSearchEntry -internal _DtCvGetNextTravEntry -internal _DtCvGetNextWidth -internal _DtCvGetSearchLineMetrics -internal _DtCvGetStartXOfLine -internal _DtCvGetStringWidth -internal _DtCvGetTraversalWidth -internal _DtCvGetWidthOfSegment -internal _DtCvInitLayoutInfo -internal _DtCvModifyXpos -internal _DtCvProcessStringSegment -internal _DtCvRunInterp -internal _DtCvSaveInfo -internal _DtCvSetJoinInfo -internal _DtCvSetSearchEntryInfo -internal _DtCvSetTravEntryInfo -internal _DtCvSetTravEntryPos -internal _DtCvSkipLineChars -internal _DtCvSortTraversalList -internal _DtCvStrCaseCmpLatin1 -internal _DtCvStrNCaseCmpLatin1 -internal _DtCvStrLen -internal _DtCvStrPtr -internal _DtCvStrcspn -internal _DtGrReadBitmapStream -internal _DtGrReadBitmapStreamData -internal _DtHelpAllocateSegments -internal _DtHelpBuildPathArea -internal _DtHelpCB -internal _DtHelpCancelSelection -internal _DtHelpCeAddCharToBuf -internal _DtHelpCeAddOctalToBuf -internal _DtHelpCeAddSegToList -internal _DtHelpCeAddStrToBuf -internal _DtHelpCeAllocSegment -internal _DtHelpCeAllocateFontStruct -internal _DtHelpCeBufFileClose -internal _DtHelpCeBufFileCreate -internal _DtHelpCeBufFileFlush -internal _DtHelpCeBufFileOpenWr -internal _DtHelpCeBufFilePushZ -internal _DtHelpCeBufFileRd -internal _DtHelpCeBufFileRdRawZ -internal _DtHelpCeBufFileRdWithFd -internal _DtHelpCeCheckAndCacheDir -internal _DtHelpCeCheckNextCcdfCmd -internal _DtHelpCeCleanSdlVolume -internal _DtHelpCeCloseCcdfVolume -internal _DtHelpCeCloseSdlVolume -internal _DtHelpCeCompressPathname -internal _DtHelpCeCompressSpace -internal _DtHelpCeCopyDefFontAttrList -internal _DtHelpCeCountChars -internal _DtHelpCeCreatePipeBufFile -internal _DtHelpCeFileOpenAndSeek -internal _DtHelpCeFindCcdfId -internal _DtHelpCeFindId -internal _DtHelpCeFindSdlId -internal _DtHelpCeFindSkipSdlElementEnd -internal _DtHelpCeFrmtCcdfPathAndChildren -internal _DtHelpCeFrmtCcdfTopic -internal _DtHelpCeFrmtSDLTitleToAscii -internal _DtHelpCeFrmtSDLVolTitleToAscii -internal _DtHelpCeFrmtSdlPathAndChildren -internal _DtHelpCeFrmtSdlVolumeAbstractToAscii -internal _DtHelpCeFrmtSdlVolumeInfo -internal _DtHelpCeGetCcdfAbbrevCmd -internal _DtHelpCeGetCcdfCmd -internal _DtHelpCeGetCcdfDocStamp -internal _DtHelpCeGetCcdfEndMark -internal _DtHelpCeGetCcdfFontType -internal _DtHelpCeGetCcdfIdPath -internal _DtHelpCeGetCcdfKeywordList -internal _DtHelpCeGetCcdfStrParam -internal _DtHelpCeGetCcdfTitleChunks -internal _DtHelpCeGetCcdfTopTopic -internal _DtHelpCeGetCcdfTopicAbbrev -internal _DtHelpCeGetCcdfTopicChildren -internal _DtHelpCeGetCcdfTopicCmd -internal _DtHelpCeGetCcdfTopicParent -internal _DtHelpCeGetCcdfValueParam -internal _DtHelpCeGetCcdfVolIdList -internal _DtHelpCeGetCcdfVolLocale -internal _DtHelpCeGetCcdfVolTitle -internal _DtHelpCeGetCcdfVolTitleChunks -internal _DtHelpCeGetCcdfVolumeAbstract -internal _DtHelpCeGetCcdfVolumeTitle -internal _DtHelpCeGetLangSubParts -internal _DtHelpCeGetMbLen -internal _DtHelpCeGetNxtBuf -internal _DtHelpCeGetSdlAttribute -internal _DtHelpCeGetSdlAttributeCdata -internal _DtHelpCeGetSdlAttributeList -internal _DtHelpCeGetSdlCdata -internal _DtHelpCeGetSdlDocStamp -internal _DtHelpCeGetSdlHomeTopicId -internal _DtHelpCeGetSdlId -internal _DtHelpCeGetSdlIdPath -internal _DtHelpCeGetSdlKeywordList -internal _DtHelpCeGetSdlNumber -internal _DtHelpCeGetSdlTitleChunks -internal _DtHelpCeGetSdlTopicChildren -internal _DtHelpCeGetSdlVolCharSet -internal _DtHelpCeGetSdlVolIds -internal _DtHelpCeGetSdlVolIndex -internal _DtHelpCeGetSdlVolLanguage -internal _DtHelpCeGetSdlVolTitleChunks -internal _DtHelpCeGetSdlVolToss -internal _DtHelpCeGetSdlVolumeAsciiAbstract -internal _DtHelpCeGetSdlVolumeLocale -internal _DtHelpCeGetSdlVolumePtr -internal _DtHelpCeGetStrcollProc -internal _DtHelpCeGetUncompressedFileName -internal _DtHelpCeGetVolumeFlag -internal _DtHelpCeGetVolumeName -internal _DtHelpCeIconvClose -internal _DtHelpCeIconvContextSuitable -internal _DtHelpCeIconvOpen -internal _DtHelpCeIconvStr -internal _DtHelpCeIconvStr1Step -internal _DtHelpCeInitSdlVolume -internal _DtHelpCeLockVolume -internal _DtHelpCeMapCcdfTargetToId -internal _DtHelpCeMapIdToSdlTopicId -internal _DtHelpCeMapSdlIdToSegment -internal _DtHelpCeMapTargetToId -internal _DtHelpCeMatchSdlElement -internal _DtHelpCeMatchSemanticStyle -internal _DtHelpCeMergeSdlAttribInfo -internal _DtHelpCeOpenCcdfVolume -internal _DtHelpCeOpenSdlVolume -internal _DtHelpCeParseSdlTopic -internal _DtHelpCeReadBuf -internal _DtHelpCeRereadCcdfVolume -internal _DtHelpCeRereadSdlVolume -internal _DtHelpCeResolveSpcToAscii -internal _DtHelpCeReturnSdlElement -internal _DtHelpCeSaveString -internal _DtHelpCeSkipCcdfAbbrev -internal _DtHelpCeSkipCdata -internal _DtHelpCeSkipToNextCcdfToken -internal _DtHelpCeStrCaseCmpLatin1 -internal _DtHelpCeStrNCaseCmpLatin1 -internal _DtHelpCeStrHashToKey -internal _DtHelpCeStrcspn -internal _DtHelpCeStripSpaces -internal _DtHelpCeStrspn -internal _DtHelpCeTraceFilenamePath -internal _DtHelpCeUncompressFile -internal _DtHelpCeUnlockVolume -internal _DtHelpCeUpVolumeOpenCnt -internal _DtHelpCeUpperCase -internal _DtHelpCeWaitAndProcessEvents -internal _DtHelpClickOrSelectCB -internal _DtHelpCloseVolume -internal _DtHelpCommonHelpClean -internal _DtHelpCommonHelpInit -internal _DtHelpCopyDefaultList -internal _DtHelpCopyCasualList -internal _DtHelpDABuildSelection -internal _DtHelpDADestroyGraphic -internal _DtHelpDADestroyRegion -internal _DtHelpDADestroySpc -internal _DtHelpDAGetCvsMetrics -internal _DtHelpDAGetFontMetrics -internal _DtHelpDAGetSpcString -internal _DtHelpDAGetStrWidth -internal _DtHelpDALoadGraphic -internal _DtHelpDARenderElem -internal _DtHelpDAResolveFont -internal _DtHelpDAResolveSpc -internal _DtHelpDATocMarker -internal _DtHelpDefaultHelp4HelpVolume -internal _DtHelpDefaultHelpPrint -internal _DtHelpDefaultLocationId -internal _DtHelpDefaultSrchHitPrefixFont -internal _DtHelpDestroyTopicData -internal _DtHelpDialogHypertextCB -internal _DtHelpDialogWidgetGeoMatrixCreate -internal _DtHelpDialogWidgetNoGeoRequest -internal _DtHelpDisplayAreaClean -internal _DtHelpDisplayAreaData -internal _DtHelpDisplayAreaDestroyCB -internal _DtHelpDisplayAreaDimensionsReturn -internal _DtHelpDisplayAreaSetList -internal _DtHelpDisplayAreaWidget -internal _DtHelpDisplayBackCB -internal _DtHelpDisplayBrowserHomeCB -internal _DtHelpDisplayDefinitionBox -internal _DtHelpDisplayFormatError -internal _DtHelpDisplayHistoryCB -internal _DtHelpDisplayHistoryInfo -internal _DtHelpDisplayIndexCB -internal _DtHelpDisplayPrintDialog -internal _DtHelpDupFontHints -internal _DtHelpDuplicateWindowCB -internal _DtHelpEndSelectionCB -internal _DtHelpEnterLeaveCB -internal _DtHelpErrorDialog -internal _DtHelpExecFilteredCmd -internal _DtHelpExecProcedure -internal _DtHelpExpandHelpVolume -internal _DtHelpExposeCB -internal _DtHelpFileFreeEntry -internal _DtHelpFileGetSearchPaths -internal _DtHelpFileIsSameP -internal _DtHelpFileListAddFile -internal _DtHelpFileListCreateSelectionDialog -internal _DtHelpFileListGetMatch -internal _DtHelpFileListGetNext -internal _DtHelpFileListScanPaths -internal _DtHelpFileTraceLinks -internal _DtHelpFileTraceToFile -internal _DtHelpFilterExecCmd -internal _DtHelpFilterExecCmdCB -internal _DtHelpFilterExecCmdStr -internal _DtHelpFmtFindBreak -internal _DtHelpFocusCB -internal _DtHelpFormatAsciiFile -internal _DtHelpFormatAsciiString -internal _DtHelpFormatAsciiStringDynamic -internal _DtHelpFormatIndexEntries -internal _DtHelpFormatManPage -internal _DtHelpFormatToc -internal _DtHelpFormatTopic -internal _DtHelpFormatTopicTitle -internal _DtHelpFormatVolumeTitle -internal _DtHelpFreeFontHints -internal _DtHelpFreePrintStuff -internal _DtHelpFreeSegments -internal _DtHelpGetAsciiVolumeTitle -internal _DtHelpGetClearSelection -internal _DtHelpGetHourGlassCursor -internal _DtHelpGetLocale -internal _DtHelpGetNxtToken -internal _DtHelpGetScrollbarValue -internal _DtHelpGetStringQuarks -internal _DtHelpGetSystemSearchPath -internal _DtHelpGetTopicDataHandles -internal _DtHelpGetTopicTitle -internal _DtHelpGetUserSearchPath -internal _DtHelpGetVolumeLocale -internal _DtHelpGlobSrchCleanAndClose -internal _DtHelpGlobSrchDisplayDialog -internal _DtHelpGlobSrchInitVars -internal _DtHelpGlobSrchUpdateCurVol -internal _DtHelpHorzScrollCB -internal _DtHelpInitPrintStuff -internal _DtHelpInitiateClipboard -internal _DtHelpListAdd -internal _DtHelpListFree -internal _DtHelpLoadMultiInfo -internal _DtHelpLoseSelectionCB -internal _DtHelpMapCB -internal _DtHelpMapCenteredCB -internal _DtHelpMouseMoveCB -internal _DtHelpMoveBtnFocusCB -internal _DtHelpOSGetHomeDirName -internal _DtHelpOpenVolume -internal _DtHelpPaperSizeNames -internal _DtHelpPaperSizeNamesCnt -internal _DtHelpParseAccessFile -internal _DtHelpParseIdString -internal _DtHelpPrintJob -internal _DtHelpPrintSetValues -internal _DtHelpProcessGraphic -internal _DtHelpProcessHyperSelection -internal _DtHelpQuickDialogHypertextCB -internal _DtHelpQuickDialogWidgetGeoMatrixCreate -internal _DtHelpQuickDialogWidgetNoGeoRequest -internal _DtHelpResizeCB -internal _DtHelpResizeDisplayArea -internal _DtHelpResolvePathname -internal _DtHelpSetButtonPositions -internal _DtHelpSetupDisplayType -internal _DtHelpTopicListAddToHead -internal _DtHelpTopicListDeleteHead -internal _DtHelpTopicListFree -internal _DtHelpTurnOffNoEnter -internal _DtHelpTurnOnNoEnter -internal _DtHelpUpdateDisplayArea -internal _DtHelpUpdateHistoryList -internal _DtHelpUpdateJumpList -internal _DtHelpUpdatePath -internal _DtHelpUpdatePathArea -internal _DtHelpUpdatePrintDialog -internal _DtHelpVertScrollCB -internal _DtHelpVisibilityCB -internal _DtHelpXmFontListGetPropertyMax -internal _DtLinkDbGetHint -internal _DtLinkDbGetLinkInfo -internal _DtLinkDbGetLinkSpec -internal _DtLinkDbGetLinkType -internal __DtHelpCeGetParagraphList -internal __DtHelpCeProcessString -internal __DtHelpCeSetUpVars -internal __DtHelpDefaultFontIndexGet -internal __DtHelpFontCharSetQuarkGet -internal __DtHelpFontDatabaseInit -internal __DtHelpFontIndexGet -internal __DtHelpFontLangQuarkGet -internal __DtHelpFontMetrics -internal __DtHelpFontSetGet -internal __DtHelpFontStructGet - -/* DtHelp - globals */ -internal _DtHelpMsg_0000 -internal _DtHelpMsg_0001 -internal _DtHelpMsg_0002 -internal _DtHelpMsg_0003 -internal _DtHelpMsg_0004 -internal _DtHelpMsg_0005 -internal _DtHelpMsg_0006 -internal _DtHelpMsg_0007 -internal _DtHelpMsg_0008 -internal _DtHelpMsg_0009 -internal _DtHelpMsg_0010 -internal _DtHelpMsg_0011 -internal _DtMsgQuickHelp_0001 - -/* il library objects symbols */ - -internal _ilAddInvertFilter -internal _ilAddLevelConversionFilter -internal _ilAddPipeDestroyObject -internal _ilAddProducerImage -internal _ilAddThrottlePipeElement -internal _ilAllocStripOffsets -internal _ilAreaScaleBitonal -internal _ilConvertRGBToPalette -internal _ilConvertRGBToYCbCr -internal _ilConvertYCbCrToRGB -internal _ilCreateObject -internal _ilDecompG3 -internal _ilDecompG4 -internal _ilDecompG4Line -internal _ilDecompJPEG -internal _ilDecompLZW -internal _ilDecompPackbits -internal _ilDecompress -internal _ilDiffuseGrayToBitonal -internal _ilDitherKernel -internal _ilDitherYCbCr -internal _ilFastUpsample -internal _ilFormat4To8Bit -internal _ilFormat8Bit3PixelToPlane -internal _ilFormat8Bit3PlaneToPixel -internal _ilFormat8To4Bit -internal _ilFormatRowBitAlign -internal _ilFreeImagePixels -internal _ilGrayToRGB -internal _ilInsertCompressedCopyFilter -internal _ilInsertCopyFilter -internal _ilIntersectRect -internal _ilJPEGCopyData -internal _ilJPEGDataIn -internal _ilJPEGFreeTables -internal _ilJPEGTablesIn -internal _ilMallocImagePixels -internal _ilMul4 -internal _ilMul8 -internal _ilObjectDestroyContext -internal _ilObjectInitContext -internal _ilPaletteToRGBByte -internal _ilPutOnes -internal _ilRGBToGray -internal _ilReallocCompressedBuffer -internal _ilReallocJPEGEncode -internal _ilScaleBitonalToGray -internal _ilScaleSample -internal _ilSetDefaultStripSize -internal _ilSetFeedPipeData -internal _ilSetPipeDesFormat -internal _ilSubsampleShift -internal _ilSubsampleYCbCr -internal _ilTagTypeItemSizes -internal _ilTagTypeItemsThatFit -internal _ilThresholdGrayToBitonal -internal _ilUpsampleYCbCr -internal _ilValidateDesFormat -internal _iljpgDeDCT4x4 -internal _iljpgDeDCTCleanup -internal _iljpgDeDCTDCOnly -internal _iljpgDeDCTFull -internal _iljpgDeDCTInit -internal _iljpgDehuffCleanup -internal _iljpgDehuffExecute -internal _iljpgDehuffInit -internal _iljpgDehuffReset -internal _iljpgValidPars -internal _iljpgZigzagTable -internal il3BytePixelImageFormat -internal il3BytePlaneImageFormat -internal ilAbortPipe -internal ilAddPipeElement -internal ilArFax1DDecodeBlack -internal ilArFax1DDecodeWhite -internal ilArFax2DDecodeTable -internal ilBitImageFormat -internal ilBitReverseTable -internal ilBitonal0WhiteImageDes -internal ilByteImageFormat -internal ilChangeXWC -internal ilConnectFile -internal ilConvert -internal ilConvertForXWrite -internal ilCreateClientImage -internal ilCreateInternalImage -internal ilCreatePipe -internal ilCreateXWC -internal ilCrop -internal ilDeclarePipeInvalid -internal ilDestroyContext -internal ilDestroyObject -internal ilEmptyPipe -internal ilExecutePipe -internal ilGetBytesPerRow -internal ilGetPipeInfo -internal ilGetPrivateType -internal ilGray256ImageDes -internal ilInternalCreateContext -internal ilListFileImages -internal ilMap -internal ilPaletteImageDes -internal ilQueryClientImage -internal ilQueryInternalImage -internal ilQueryPipe -internal ilQueryXWC -internal ilRGB256ImageDes -internal ilReadFileImage -internal ilReadFileTags -internal ilRecommendedStripHeight -internal ilScale -internal ilWriteXDrawable -internal ilYCbCr2ImageDes -internal ilYCbCrImageDes -internal iljpgDecodeCleanup -internal iljpgDecodeExecute -internal iljpgDecodeInit -internal iljpgDecodeJIF -internal iljpgFreeData - -/* GifUtils - functions */ -internal DeleteGifObjectResources -internal InitGifObject -internal ReadImage -internal allocate_colors -internal allocate_greys -internal create_pixmap -internal create_raw_image -internal free_raw_image -internal gif_to_pixmap - -#if 0 -#ifdef sun -/* symbols from sunregexp/?*.c */ -internal __compile -internal _braelist -internal _braslist -internal _compile -internal _loc1 -internal _loc2 -internal _locs -internal _nbra -internal _radvance -internal _regerrno -internal _reglength -internal _step -internal braelist -internal braslist -internal compile -internal loc1 -internal loc2 -internal locs -internal nbra -internal advance -internal regerrno -internal reglength -internal step -#endif -#endif - - -/* jpeg library objects symbols */ - -internal jdiv_round_up -internal jpeg_idct_1x1 -internal init_jpeg_dest_mgr -internal jinit_marker_reader -internal jpeg_idct_2x2 -internal jpeg_new_colormap -internal jpeg_alloc_quant_table -internal jpeg_free_large -internal jpeg_abort -internal jpeg_get_large -internal jpeg_idct_4x4 -internal jcopy_block_row -internal jpeg_CreateDecompress -internal jpeg_read_raw_data -internal jpeg_start_output -internal jpeg_mem_available -internal jinit_color_deconverter -internal jpeg_natural_order -internal jinit_inverse_dct -internal jinit_master_decompress -internal jzero_far -internal jinit_1pass_quantizer -internal jinit_2pass_quantizer -internal jpeg_idct_float -internal jpeg_mem_init -internal jpeg_resync_to_restart -internal jpeg_free_small -internal jpeg_destroy_decompress -internal jpeg_open_backing_store -internal jpeg_idct_ifast -internal jpeg_get_small -internal jpeg_mem_term -internal jinit_upsampler -internal jinit_memory_mgr -internal jpeg_set_marker_processor -internal jinit_d_post_controller -internal jpeg_to_ximage -internal jpeg_abort_decompress -internal jpeg_alloc_huff_table -internal jpeg_make_d_derived_tbl -internal jpeg_input_complete -internal jpeg_finish_decompress -internal jpeg_calc_output_dimensions -internal jinit_d_coef_controller -internal jround_up -internal jinit_huff_decoder -internal jpeg_fill_bit_buffer -internal jpeg_read_scanlines -internal jpeg_consume_input -internal jinit_input_controller -internal jpeg_has_multiple_scans -internal jpeg_stdio_src -internal jcopy_sample_rows -internal jpeg_read_coefficients -internal jinit_d_main_controller -internal jpeg_idct_islow -internal jpeg_read_header -internal jpeg_finish_output -internal jinit_merged_upsampler -internal jinit_phuff_decoder -internal jpeg_destroy -internal jpeg_std_error -internal jpeg_start_decompress -internal jpeg_huff_decode -internal jpeg_std_message_table diff --git a/cde/lib/DtMmdb/HardCopy/TemplatesAutoNumber.C b/cde/lib/DtMmdb/HardCopy/TemplatesAutoNumber.C index 4050c1f2d..6fc7863e4 100644 --- a/cde/lib/DtMmdb/HardCopy/TemplatesAutoNumber.C +++ b/cde/lib/DtMmdb/HardCopy/TemplatesAutoNumber.C @@ -35,7 +35,7 @@ #endif /* end of CDE_NEXT */ -#if defined(sun) || defined(hpux) +#if defined(sun) #ifndef CDE_NEXT /* { */ diff --git a/cde/lib/DtMmdb/Makefile.am b/cde/lib/DtMmdb/Makefile.am index b52f2d0e6..d4a56fa0e 100644 --- a/cde/lib/DtMmdb/Makefile.am +++ b/cde/lib/DtMmdb/Makefile.am @@ -4,7 +4,6 @@ SUBDIRS = HardCopy \ StyleSheet \ api \ btree \ - btree_berkeley \ compression \ diskhash \ dstr \ @@ -29,7 +28,6 @@ libDtMmdb_la_LIBADD = HardCopy/libHardCopy.la \ StyleSheet/libStyleSheet.la \ api/libapi.la \ btree/libbtree.la \ - btree_berkeley/libbtree_berkeley.la \ compression/libcompression.la \ diskhash/libdiskhash.la \ dstr/libdstr.la \ diff --git a/cde/lib/DtMmdb/StyleSheet/Debug.h b/cde/lib/DtMmdb/StyleSheet/Debug.h index d6d2ace8d..db767c7e7 100644 --- a/cde/lib/DtMmdb/StyleSheet/Debug.h +++ b/cde/lib/DtMmdb/StyleSheet/Debug.h @@ -57,7 +57,7 @@ using namespace std; #ifdef DEBUG -#if !defined ( __STDC__) && !defined (hpux) +#if !defined ( __STDC__) #define debug(s, x) s << "x" << " = " << (x) << "\n" #else #define debug(s, x) s << #x << " = " << (x) << "\n" diff --git a/cde/lib/DtMmdb/StyleSheet/DocParser.C b/cde/lib/DtMmdb/StyleSheet/DocParser.C index 6579e06fc..1bf65192a 100644 --- a/cde/lib/DtMmdb/StyleSheet/DocParser.C +++ b/cde/lib/DtMmdb/StyleSheet/DocParser.C @@ -242,15 +242,7 @@ DocParser::process(istream &input, ostringstream &output, break; case AttributeSection: { -#if !defined(SC3) && !defined(_IBMR2) && !defined(__linux__) && \ - !defined(CSRG_BASED) && !defined(sun) - volatile -#endif AttributeList *attrs = 0; -#if !defined(SC3) && !defined(_IBMR2) && !defined(__linux__) && \ - !defined(CSRG_BASED) && !defined(sun) - volatile -#endif AttributeList *olias_attrs = 0; mtry diff --git a/cde/lib/DtMmdb/StyleSheet/Expression.C b/cde/lib/DtMmdb/StyleSheet/Expression.C index e85a1167b..f3c7a9cdb 100644 --- a/cde/lib/DtMmdb/StyleSheet/Expression.C +++ b/cde/lib/DtMmdb/StyleSheet/Expression.C @@ -141,20 +141,8 @@ BinaryOperatorNode::evaluate() const { // calculate children trees and then have feature value do the operation -#if !defined(SC3) && !defined(_IBMR2) && !defined(__linux__) && \ - !defined(CSRG_BASED) && !defined(sun) - volatile -#endif FeatureValue *left = 0; -#if !defined(SC3) && !defined(_IBMR2) && !defined(__linux__) && \ - !defined(CSRG_BASED) && !defined(sun) - volatile -#endif FeatureValue *right = 0; -#if !defined(SC3) && !defined(_IBMR2) && !defined(__linux__) && \ - !defined(CSRG_BASED) && !defined(sun) - volatile -#endif FeatureValue *result = 0; mtry diff --git a/cde/lib/DtMmdb/StyleSheet/SSTemplates.C b/cde/lib/DtMmdb/StyleSheet/SSTemplates.C index 57c0be22d..fd292238c 100644 --- a/cde/lib/DtMmdb/StyleSheet/SSTemplates.C +++ b/cde/lib/DtMmdb/StyleSheet/SSTemplates.C @@ -69,7 +69,7 @@ typedef Stack > _stack_fs_orvec_fs_; // the largest ID used in f's: 59 // -#if defined(sun) || defined(hpux) +#if defined(sun) typedef CC_TPtrSlist _f4_; typedef CC_TPtrSlist _f5_; typedef CC_TPtrSlist _f2_; diff --git a/cde/lib/DtMmdb/btree/Makefile.am b/cde/lib/DtMmdb/btree/Makefile.am index 5d60eabe4..e48cb1cc4 100644 --- a/cde/lib/DtMmdb/btree/Makefile.am +++ b/cde/lib/DtMmdb/btree/Makefile.am @@ -4,4 +4,4 @@ noinst_LTLIBRARIES = libbtree.la libbtree_la_CXXFLAGS = -I.. -libbtree_la_SOURCES = mmdb_btree.C +libbtree_la_SOURCES = btree.C diff --git a/cde/lib/DtMmdb/btree/mmdb_btree.C b/cde/lib/DtMmdb/btree/btree.C similarity index 53% rename from cde/lib/DtMmdb/btree/mmdb_btree.C rename to cde/lib/DtMmdb/btree/btree.C index 4eb34d64d..748061c96 100644 --- a/cde/lib/DtMmdb/btree/mmdb_btree.C +++ b/cde/lib/DtMmdb/btree/btree.C @@ -48,44 +48,45 @@ */ -#include "btree/mmdb_btree.h" +#include "btree/btree.h" btree::btree(const char* store_name) { -// let the package figure out all these parameters - btree_info.flags = 0; - btree_info.cachesize = 0; - btree_info.maxkeypage = 0; - btree_info.minkeypage = 0; - btree_info.psize = 0; - btree_info.compare = NULL; - btree_info.prefix = NULL; - btree_info.lorder = 0; + int err; + MDB_txn *txn; - key_DBT.data = 0; - key_DBT.size = 0; + key_DBT.mv_data = 0; + key_DBT.mv_size = 0; - int mode = O_CREAT|O_RDWR; + if ((err = mdb_env_create(&btree_env))) + throw(stringException(mdb_strerror(err))); - //btree_DB = dbopen(store_name, mode, 0640, DB_BTREE, &btree_info); - btree_DB = dbopen(store_name, mode, 0640, DB_BTREE, NULL); + if ((err = mdb_env_open(btree_env, store_name, MDB_NOSUBDIR | MDB_NOSYNC, + 0640))) + throw(stringException(mdb_strerror(err))); - if ( btree_DB == 0 ) - throw(stringException("btree dbopen failed")); + txn = txn_begin(); + + if ((err = mdb_dbi_open(txn, NULL, 0, &btree_DB))) { + mdb_txn_abort(txn); + throw(stringException(mdb_strerror(err))); + } + + txn_commit(txn); } btree::~btree() { - if ( btree_DB->sync(btree_DB, 0) == RET_ERROR ) { - cerr << "btree sync failed"; + int err; + + if ((err = mdb_env_sync(btree_env, 0))) { + cerr << mdb_strerror(err); std::exit(1); } - if ( btree_DB->close(btree_DB) == RET_ERROR ) { - cerr << "btree close failed"; - std::exit(1); - } + mdb_dbi_close(btree_env, btree_DB); + mdb_env_close(btree_env); } void btree::clean() @@ -97,13 +98,13 @@ void btree::data_t_2_DBT(data_t& w) { switch (w.flag) { case data_t::INT: - key_DBT.data = &w.key.int_key; - key_DBT.size = sizeof(w.key.int_key); + key_DBT.mv_data = &w.key.int_key; + key_DBT.mv_size = sizeof(w.key.int_key); break; case data_t::STRING: - key_DBT.data = w.key.str_key; - key_DBT.size = strlen(w.key.str_key); + key_DBT.mv_data = w.key.str_key; + key_DBT.mv_size = strlen(w.key.str_key); break; case data_t::VOID: @@ -113,74 +114,78 @@ void btree::data_t_2_DBT(data_t& w) Boolean btree::insert(data_t& w) { + int err; + MDB_txn *txn; + data_t_2_DBT(w); - DBT data_DBT; - data_DBT.data = &w.dt; - data_DBT.size = sizeof(w.dt); + MDB_val data_DBT; + data_DBT.mv_data = &w.dt; + data_DBT.mv_size = sizeof(w.dt); - //int status = btree_DB->put(btree_DB, &key_DBT, &data_DBT, R_NOOVERWRITE); - int status = btree_DB->put(btree_DB, &key_DBT, &data_DBT, 0); + txn = txn_begin(); - switch (status) { - case RET_ERROR: - throw(stringException("btree put failed")); - break; + err = mdb_put(txn, btree_DB, &key_DBT, &data_DBT, 0); - case RET_SPECIAL: - throw(stringException("btree put: dup key")); - break; - - case RET_SUCCESS: - return true; + if (err && err != MDB_MAP_FULL && err != MDB_TXN_FULL) { + mdb_txn_abort(txn); + throw(stringException(mdb_strerror(err))); } - return false; + txn_commit(txn); + + if (err) { + cerr << mdb_strerror(err); + return false; + } + + return true; } Boolean btree::remove(data_t& w) { + int err; + MDB_txn *txn; + data_t_2_DBT(w); - int status = btree_DB->del(btree_DB, &key_DBT, 0); + txn = txn_begin(); - switch (status) { - case RET_ERROR: - throw(stringException("btree delete failed")); - break; - - case RET_SPECIAL: - case RET_SUCCESS: - return true; + if ((err = mdb_del(txn, btree_DB, &key_DBT, NULL))) { + mdb_txn_abort(txn); + throw(stringException(mdb_strerror(err))); } - return false; + txn_commit(txn); + + return true; } -Boolean btree::member(data_t& w) +Boolean btree::member(data_t& w) { + int err; + MDB_txn *txn; + data_t_2_DBT(w); - DBT data_DBT; + MDB_val data_DBT; - int status = btree_DB->get(btree_DB, &key_DBT, &data_DBT, 0); + txn = txn_begin(MDB_RDONLY); - switch (status) { - case RET_ERROR: - throw(stringException("btree get failed")); - break; + err = mdb_get(txn, btree_DB, &key_DBT, &data_DBT); - case RET_SPECIAL: - return false; + mdb_txn_abort(txn); - case RET_SUCCESS: - if ( data_DBT.size != sizeof(w.dt) ) - throw(stringException("btree get: tree corrupted")); - - memcpy((char*)&w.dt, data_DBT.data, data_DBT.size); - return true; + if (err) { + if (err != MDB_NOTFOUND) throw(stringException(mdb_strerror(err))); + return false; } - return false; + if (data_DBT.mv_size != sizeof(w.dt)) + throw(stringException("btree get: tree corrupted")); + + memcpy((char*)&w.dt, data_DBT.mv_data, data_DBT.mv_size); + + return true; } ostream& btree::asciiOut(ostream& out) @@ -193,3 +198,19 @@ istream& btree::asciiIn(istream& in) return in; } +MDB_txn *btree::txn_begin(unsigned int flags) { + int err; + MDB_txn *txn; + + if ((err = mdb_txn_begin(btree_env, NULL, flags, &txn))) + throw(stringException(mdb_strerror(err))); + + return txn; +} + +void btree::txn_commit(MDB_txn *txn) { + int err; + + if ((err = mdb_txn_commit(txn))) + throw(stringException(mdb_strerror(err))); +} diff --git a/cde/lib/DtMmdb/btree/mmdb_btree.h b/cde/lib/DtMmdb/btree/btree.h similarity index 94% rename from cde/lib/DtMmdb/btree/mmdb_btree.h rename to cde/lib/DtMmdb/btree/btree.h index 49cfef606..b09d68353 100644 --- a/cde/lib/DtMmdb/btree/mmdb_btree.h +++ b/cde/lib/DtMmdb/btree/btree.h @@ -69,9 +69,9 @@ #endif #include +#include #include "dstr/index_agent.h" -#include "btree_berkeley/db.h" class btree : public index_agent @@ -91,12 +91,14 @@ public: istream& asciiIn(istream& in); protected: - DBT key_DBT; - DB* btree_DB; - BTREEINFO btree_info; + MDB_val key_DBT; + MDB_dbi btree_DB; + MDB_env *btree_env; protected: void data_t_2_DBT(data_t& w); + MDB_txn *txn_begin(unsigned int flags = 0); + void txn_commit(MDB_txn *txn); }; #endif diff --git a/cde/lib/DtMmdb/btree_berkeley/Makefile.am b/cde/lib/DtMmdb/btree_berkeley/Makefile.am deleted file mode 100644 index 6cfdbdf1b..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/Makefile.am +++ /dev/null @@ -1,16 +0,0 @@ -MAINTAINERCLEANFILES = Makefile.in - -noinst_LTLIBRARIES = libbtree_berkeley.la - -libbtree_berkeley_la_CFLAGS = -DMEMMOVE -I.. - -libbtree_berkeley_la_SOURCES = bt_close.c bt_conv.c bt_debug.c bt_delete.c \ - bt_get.c bt_open.c bt_overflow.c bt_page.c \ - bt_put.c bt_search.c bt_seq.c bt_split.c \ - bt_stack.c bt_utils.c mktemp.c \ - realloc.c snprintf.c mpool.c db.c - -if AIX -else -libbtree_berkeley_la_SOURCES += memmove.c -endif diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_close.c b/cde/lib/DtMmdb/btree_berkeley/bt_close.c deleted file mode 100644 index 13b657a27..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_close.c +++ /dev/null @@ -1,227 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_close.c /main/4 1996/06/11 17:12:14 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_close.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include -#include -#include - -#include -#include "btree.h" - -static int bt_meta __P((BTREE *)); - -/* - * BT_CLOSE -- Close a btree. - * - * Parameters: - * dbp: pointer to access method - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__bt_close(DB *dbp) -{ - BTREE *t; - int fd; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - /* - * Delete any already deleted record that we've been saving - * because the cursor pointed to it. - */ - if (ISSET(t, B_DELCRSR) && __bt_crsrdel(t, &t->bt_bcursor)) - return (RET_ERROR); - - if (__bt_sync(dbp, 0) == RET_ERROR) - return (RET_ERROR); - - if (mpool_close(t->bt_mp) == RET_ERROR) - return (RET_ERROR); - - if (t->bt_stack) - free(t->bt_stack); - if (t->bt_kbuf) - free(t->bt_kbuf); - if (t->bt_dbuf) - free(t->bt_dbuf); - - fd = t->bt_fd; - free(t); - free(dbp); - return (close(fd) ? RET_ERROR : RET_SUCCESS); -} - -/* - * BT_SYNC -- sync the btree to disk. - * - * Parameters: - * dbp: pointer to access method - * - * Returns: - * RET_SUCCESS, RET_ERROR. - */ -int -__bt_sync(const DB *dbp, u_int flags) -{ - BTREE *t; - int status; - PAGE *h; - void *p = NULL; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - /* Sync doesn't currently take any flags. */ - if (flags != 0) { - errno = EINVAL; - return (RET_ERROR); - } - - if (ISSET(t, B_INMEM | B_RDONLY) || !ISSET(t, B_MODIFIED)) - return (RET_SUCCESS); - - if (ISSET(t, B_METADIRTY) && bt_meta(t) == RET_ERROR) - return (RET_ERROR); - - /* - * Nastiness. If the cursor has been marked for deletion, but not - * actually deleted, we have to make a copy of the page, delete the - * key/data item, sync the file, and then restore the original page - * contents. - */ - if (ISSET(t, B_DELCRSR)) { - if ((p = (void*)malloc(t->bt_psize)) == NULL) - return (RET_ERROR); - if ((h = mpool_get(t->bt_mp, t->bt_bcursor.pgno, 0)) == NULL) { - free(p); - return (RET_ERROR); - } - memmove(p, h, t->bt_psize); - if ((status = - __bt_dleaf(t, h, t->bt_bcursor.index)) == RET_ERROR) - goto ecrsr; - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - } - - if ((status = mpool_sync(t->bt_mp)) == RET_SUCCESS) - CLR(t, B_MODIFIED); - -ecrsr: if (ISSET(t, B_DELCRSR)) { - if ((h = mpool_get(t->bt_mp, t->bt_bcursor.pgno, 0)) == NULL) { - free(p); - return (RET_ERROR); - } - memmove(h, p, t->bt_psize); - free(p); - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - } - return (status); -} - -/* - * BT_META -- write the tree meta data to disk. - * - * Parameters: - * t: tree - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -static int -bt_meta(BTREE *t) -{ - BTMETA m; - void *p; - - if ((p = mpool_get(t->bt_mp, P_META, 0)) == NULL) - return (RET_ERROR); - - /* Fill in metadata. */ - m.m_magic = BTREEMAGIC; - m.m_version = BTREEVERSION; - m.m_psize = t->bt_psize; - m.m_free = t->bt_free; - m.m_nrecs = t->bt_nrecs; - m.m_flags = t->bt_flags & SAVEMETA; - - memmove(p, &m, sizeof(BTMETA)); - mpool_put(t->bt_mp, p, MPOOL_DIRTY); - return (RET_SUCCESS); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_conv.c b/cde/lib/DtMmdb/btree_berkeley/bt_conv.c deleted file mode 100644 index 58ad4d1ad..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_conv.c +++ /dev/null @@ -1,237 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_conv.c /main/3 1996/06/11 17:12:19 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_conv.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include - -#include -#include "btree.h" - -static void mswap __P((PAGE *)); - -/* - * __BT_BPGIN, __BT_BPGOUT -- - * Convert host-specific number layout to/from the host-independent - * format stored on disk. - * - * Parameters: - * t: tree - * pg: page number - * h: page to convert - */ -void -__bt_pgin(void *t, pgno_t pg, void *pp) -{ - PAGE *h; - int i, top; - u_char flags; - char *p; - - if (!ISSET(((BTREE *)t), B_NEEDSWAP)) - return; - if (pg == P_META) { - mswap(pp); - return; - } - - h = pp; - BLSWAP(h->pgno); - BLSWAP(h->prevpg); - BLSWAP(h->nextpg); - BLSWAP(h->flags); - BSSWAP(h->lower); - BSSWAP(h->upper); - - top = NEXTINDEX(h); - if ((h->flags & P_TYPE) == P_BINTERNAL) - for (i = 0; i < top; i++) { - BSSWAP(h->linp[i]); - p = (char *)GETBINTERNAL(h, i); - BLPSWAP(p); - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(pgno_t); - if (*(u_char *)p & P_BIGKEY) { - p += sizeof(u_char); - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - } - else if ((h->flags & P_TYPE) == P_BLEAF) - for (i = 0; i < top; i++) { - BSSWAP(h->linp[i]); - p = (char *)GETBLEAF(h, i); - BLPSWAP(p); - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(size_t); - flags = *(u_char *)p; - if (flags & (P_BIGKEY | P_BIGDATA)) { - p += sizeof(u_char); - if (flags & P_BIGKEY) { - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - if (flags & P_BIGDATA) { - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - } - } -} - -void -__bt_pgout(void *t, pgno_t pg, void *pp) -{ - PAGE *h; - int i, top; - u_char flags; - char *p; - - if (!ISSET(((BTREE *)t), B_NEEDSWAP)) - return; - if (pg == P_META) { - mswap(pp); - return; - } - - h = pp; - top = NEXTINDEX(h); - if ((h->flags & P_TYPE) == P_BINTERNAL) - for (i = 0; i < top; i++) { - p = (char *)GETBINTERNAL(h, i); - BLPSWAP(p); - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(pgno_t); - if (*(u_char *)p & P_BIGKEY) { - p += sizeof(u_char); - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - BSSWAP(h->linp[i]); - } - else if ((h->flags & P_TYPE) == P_BLEAF) - for (i = 0; i < top; i++) { - p = (char *)GETBLEAF(h, i); - BLPSWAP(p); - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(size_t); - flags = *(u_char *)p; - if (flags & (P_BIGKEY | P_BIGDATA)) { - p += sizeof(u_char); - if (flags & P_BIGKEY) { - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - if (flags & P_BIGDATA) { - p += sizeof(size_t); - BLPSWAP(p); - p += sizeof(pgno_t); - BLPSWAP(p); - } - } - BSSWAP(h->linp[i]); - } - - BLSWAP(h->pgno); - BLSWAP(h->prevpg); - BLSWAP(h->nextpg); - BLSWAP(h->flags); - BSSWAP(h->lower); - BSSWAP(h->upper); -} - -/* - * MSWAP -- Actually swap the bytes on the meta page. - * - * Parameters: - * p: page to convert - */ -static void -mswap(PAGE *pg) -{ - char *p; - - p = (char *)pg; - BLPSWAP(p); /* m_magic */ - p += sizeof(u_long); - BLPSWAP(p); /* m_version */ - p += sizeof(u_long); - BLPSWAP(p); /* m_psize */ - p += sizeof(u_long); - BLPSWAP(p); /* m_free */ - p += sizeof(u_long); - BLPSWAP(p); /* m_nrecs */ - p += sizeof(u_long); - BLPSWAP(p); /* m_flags */ - p += sizeof(u_long); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_debug.c b/cde/lib/DtMmdb/btree_berkeley/bt_debug.c deleted file mode 100644 index 93b6048b9..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_debug.c +++ /dev/null @@ -1,355 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_debug.c /main/4 1996/10/04 09:54:32 drk $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_debug.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -#ifdef DEBUG -/* - * BT_DUMP -- Dump the tree - * - * Parameters: - * dbp: pointer to the DB - */ -void -__bt_dump(dbp) - DB *dbp; -{ - BTREE *t; - PAGE *h; - pgno_t i; - char *sep; - - t = dbp->internal; - (void)fprintf(stderr, "%s: pgsz %ld", - ISSET(t, B_INMEM) ? "memory" : "disk", t->bt_psize); - if (ISSET(t, R_RECNO)) - (void)fprintf(stderr, " keys %lu", t->bt_nrecs); -#undef X -#define X(flag, name) \ - if (ISSET(t, flag)) { \ - (void)fprintf(stderr, "%s%s", sep, name); \ - sep = ", "; \ - } - if (t->bt_flags) { - sep = " flags ("; - X(B_DELCRSR, "DELCRSR"); - X(R_FIXLEN, "FIXLEN"); - X(B_INMEM, "INMEM"); - X(B_NODUPS, "NODUPS"); - X(B_RDONLY, "RDONLY"); - X(R_RECNO, "RECNO"); - X(B_SEQINIT, "SEQINIT"); - X(B_METADIRTY,"METADIRTY"); - (void)fprintf(stderr, ")\n"); - } -#undef X - - for (i = P_ROOT; (h = mpool_get(t->bt_mp, i, 0)) != NULL; ++i) { - __bt_dpage(h); - (void)mpool_put(t->bt_mp, h, 0); - } -} - -/* - * BT_DMPAGE -- Dump the meta page - * - * Parameters: - * h: pointer to the PAGE - */ -void -__bt_dmpage(h) - PAGE *h; -{ - BTMETA *m; - char *sep; - - m = (BTMETA *)h; - (void)fprintf(stderr, "magic %lx\n", m->m_magic); - (void)fprintf(stderr, "version %lu\n", m->m_version); - (void)fprintf(stderr, "psize %lu\n", m->m_psize); - (void)fprintf(stderr, "free %lu\n", m->m_free); - (void)fprintf(stderr, "nrecs %lu\n", m->m_nrecs); - (void)fprintf(stderr, "flags %lu", m->m_flags); -#undef X -#define X(flag, name) \ - if (m->m_flags & flag) { \ - (void)fprintf(stderr, "%s%s", sep, name); \ - sep = ", "; \ - } - if (m->m_flags) { - sep = " ("; - X(B_NODUPS, "NODUPS"); - X(R_RECNO, "RECNO"); - (void)fprintf(stderr, ")"); - } -} - -/* - * BT_DNPAGE -- Dump the page - * - * Parameters: - * n: page number to dump. - */ -void -__bt_dnpage(dbp, pgno) - DB *dbp; - pgno_t pgno; -{ - BTREE *t; - PAGE *h; - - t = dbp->internal; - if ((h = mpool_get(t->bt_mp, pgno, 0)) != NULL) { - __bt_dpage(h); - (void)mpool_put(t->bt_mp, h, 0); - } -} - -/* - * BT_DPAGE -- Dump the page - * - * Parameters: - * h: pointer to the PAGE - */ -void -__bt_dpage(h) - PAGE *h; -{ - BINTERNAL *bi; - BLEAF *bl; - RINTERNAL *ri; - RLEAF *rl; - indx_t cur, top; - char *sep; - - (void)fprintf(stderr, " page %ld: (", h->pgno); -#undef X -#define X(flag, name) \ - if (h->flags & flag) { \ - (void)fprintf(stderr, "%s%s", sep, name); \ - sep = ", "; \ - } - sep = ""; - X(P_BINTERNAL, "BINTERNAL") /* types */ - X(P_BLEAF, "BLEAF") - X(P_RINTERNAL, "RINTERNAL") /* types */ - X(P_RLEAF, "RLEAF") - X(P_OVERFLOW, "OVERFLOW") - X(P_PRESERVE, "PRESERVE"); - (void)fprintf(stderr, ")\n"); -#undef X - - (void)fprintf(stderr, "\tprev %2ld next %2ld", h->prevpg, h->nextpg); - if (h->flags & P_OVERFLOW) - return; - - top = NEXTINDEX(h); - (void)fprintf(stderr, " lower %3d upper %3d nextind %d\n", - h->lower, h->upper, top); - for (cur = 0; cur < top; cur++) { - (void)fprintf(stderr, "\t[%03d] %4d ", cur, h->linp[cur]); - switch(h->flags & P_TYPE) { - case P_BINTERNAL: - bi = GETBINTERNAL(h, cur); - (void)fprintf(stderr, - "size %03ld pgno %03ld", (long)bi->ksize, bi->pgno); - if (bi->flags & P_BIGKEY) - (void)fprintf(stderr, " (indirect)"); - else if (bi->ksize) - (void)fprintf(stderr, - " {%.*s}", (int)bi->ksize, bi->bytes); - break; - case P_RINTERNAL: - ri = GETRINTERNAL(h, cur); - (void)fprintf(stderr, "entries %03ld pgno %03ld", - ri->nrecs, ri->pgno); - break; - case P_BLEAF: - bl = GETBLEAF(h, cur); - if (bl->flags & P_BIGKEY) - (void)fprintf(stderr, - "big key page %lu size %lu/", - *(pgno_t *)bl->bytes, - (long)*(size_t *)(bl->bytes + sizeof(pgno_t))); - else if (bl->ksize) - (void)fprintf(stderr, "%s/", bl->bytes); - if (bl->flags & P_BIGDATA) - (void)fprintf(stderr, - "big data page %lu size %lu", - *(pgno_t *)(bl->bytes + bl->ksize), - (long)*(size_t *)(bl->bytes + bl->ksize + - sizeof(pgno_t))); - else if (bl->dsize) - (void)fprintf(stderr, "%.*s", - (int)bl->dsize, bl->bytes + bl->ksize); - break; - case P_RLEAF: - rl = GETRLEAF(h, cur); - if (rl->flags & P_BIGDATA) - (void)fprintf(stderr, - "big data page %lu size %lu", - *(pgno_t *)rl->bytes, - (long)*(size_t *)(rl->bytes + sizeof(pgno_t))); - else if (rl->dsize) - (void)fprintf(stderr, - "%.*s", (int)rl->dsize, rl->bytes); - break; - } - (void)fprintf(stderr, "\n"); - } -} -#endif - -#ifdef STATISTICS -/* - * BT_STAT -- Gather/print the tree statistics - * - * Parameters: - * dbp: pointer to the DB - */ -void -__bt_stat(dbp) - DB *dbp; -{ - extern u_long bt_cache_hit, bt_cache_miss; - extern u_long bt_rootsplit, bt_split, bt_sortsplit; - extern u_long bt_pfxsaved; - BTREE *t; - PAGE *h; - pgno_t i, pcont, pinternal, pleaf; - u_long ifree, lfree, nkeys; - int levels; - - t = dbp->internal; - pcont = pinternal = pleaf = 0; - nkeys = ifree = lfree = 0; - for (i = P_ROOT; (h = mpool_get(t->bt_mp, i, 0)) != NULL; ++i) { - switch(h->flags & P_TYPE) { - case P_BINTERNAL: - case P_RINTERNAL: - ++pinternal; - ifree += h->upper - h->lower; - break; - case P_BLEAF: - case P_RLEAF: - ++pleaf; - lfree += h->upper - h->lower; - nkeys += NEXTINDEX(h); - break; - case P_OVERFLOW: - ++pcont; - break; - } - (void)mpool_put(t->bt_mp, h, 0); - } - - /* Count the levels of the tree. */ - for (i = P_ROOT, levels = 0 ;; ++levels) { - h = mpool_get(t->bt_mp, i, 0); - if (h->flags & (P_BLEAF|P_RLEAF)) { - if (levels == 0) - levels = 1; - (void)mpool_put(t->bt_mp, h, 0); - break; - } - i = ISSET(t, R_RECNO) ? - GETRINTERNAL(h, 0)->pgno : - GETBINTERNAL(h, 0)->pgno; - (void)mpool_put(t->bt_mp, h, 0); - } - - (void)fprintf(stderr, "%d level%s with %ld keys", - levels, levels == 1 ? "" : "s", nkeys); - if (ISSET(t, R_RECNO)) - (void)fprintf(stderr, " (%ld header count)", t->bt_nrecs); - (void)fprintf(stderr, - "\n%lu pages (leaf %ld, internal %ld, overflow %ld)\n", - pinternal + pleaf + pcont, pleaf, pinternal, pcont); - (void)fprintf(stderr, "%ld cache hits, %ld cache misses\n", - bt_cache_hit, bt_cache_miss); - (void)fprintf(stderr, "%ld splits (%ld root splits, %ld sort splits)\n", - bt_split, bt_rootsplit, bt_sortsplit); - pleaf *= t->bt_psize - BTDATAOFF; - if (pleaf) - (void)fprintf(stderr, - "%.0f%% leaf fill (%ld bytes used, %ld bytes free)\n", - ((double)(pleaf - lfree) / pleaf) * 100, - pleaf - lfree, lfree); - pinternal *= t->bt_psize - BTDATAOFF; - if (pinternal) - (void)fprintf(stderr, - "%.0f%% internal fill (%ld bytes used, %ld bytes free\n", - ((double)(pinternal - ifree) / pinternal) * 100, - pinternal - ifree, ifree); - if (bt_pfxsaved) - (void)fprintf(stderr, "prefix checking removed %lu bytes.\n", - bt_pfxsaved); -} -#endif diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_delete.c b/cde/lib/DtMmdb/btree_berkeley/bt_delete.c deleted file mode 100644 index d31aaf0c6..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_delete.c +++ /dev/null @@ -1,340 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_delete.c /main/3 1996/06/11 17:12:29 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_delete.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -static int bt_bdelete __P((BTREE *, const DBT *)); - -/* - * __BT_DELETE -- Delete the item(s) referenced by a key. - * - * Parameters: - * dbp: pointer to access method - * key: key to delete - * flags: R_CURSOR if deleting what the cursor references - * - * Returns: - * RET_ERROR, RET_SUCCESS and RET_SPECIAL if the key not found. - */ -int -__bt_delete(const DB *dbp, const DBT *key, u_int flags) -{ - BTREE *t; - int status; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - if (ISSET(t, B_RDONLY)) { - errno = EPERM; - return (RET_ERROR); - } - - switch(flags) { - case 0: - status = bt_bdelete(t, key); - break; - case R_CURSOR: - /* - * If flags is R_CURSOR, delete the cursor; must already have - * started a scan and not have already deleted the record. For - * the delete cursor bit to have been set requires that the - * scan be initialized, so no reason to check. - */ - if (!ISSET(t, B_SEQINIT)) - goto einval; - status = ISSET(t, B_DELCRSR) ? - RET_SPECIAL : __bt_crsrdel(t, &t->bt_bcursor); - break; - default: -einval: errno = EINVAL; - return (RET_ERROR); - } - if (status == RET_SUCCESS) - SET(t, B_MODIFIED); - return (status); -} - -/* - * BT_BDELETE -- Delete all key/data pairs matching the specified key. - * - * Parameters: - * tree: tree - * key: key to delete - * - * Returns: - * RET_ERROR, RET_SUCCESS and RET_SPECIAL if the key not found. - */ -static int -bt_bdelete(BTREE *t, const DBT *key) -{ - EPG *e, save; - PAGE *h; - pgno_t cpgno, pg; - indx_t cindex; - int deleted, dirty1, dirty2, exact; - - /* Find any matching record; __bt_search pins the page. */ - if ((e = __bt_search(t, key, &exact)) == NULL) - return (RET_ERROR); - if (!exact) { - mpool_put(t->bt_mp, e->page, 0); - return (RET_SPECIAL); - } - - /* - * Delete forward, then delete backward, from the found key. The - * ordering is so that the deletions don't mess up the page refs. - * The first loop deletes the key from the original page, the second - * unpins the original page. In the first loop, dirty1 is set if - * the original page is modified, and dirty2 is set if any subsequent - * pages are modified. In the second loop, dirty1 starts off set if - * the original page has been modified, and is set if any subsequent - * pages are modified. - * - * If find the key referenced by the cursor, don't delete it, just - * flag it for future deletion. The cursor page number is P_INVALID - * unless the sequential scan is initialized, so no reason to check. - * A special case is when the already deleted cursor record was the - * only record found. If so, then the delete opertion fails as no - * records were deleted. - * - * Cycle in place in the current page until the current record doesn't - * match the key or the page is empty. If the latter, walk forward, - * skipping empty pages and repeating until a record doesn't match - * the key or the end of the tree is reached. - */ - cpgno = t->bt_bcursor.pgno; - cindex = t->bt_bcursor.index; - save = *e; - dirty1 = 0; - for (h = e->page, deleted = 0;;) { - dirty2 = 0; - do { - if (h->pgno == cpgno && e->index == cindex) { - if (!ISSET(t, B_DELCRSR)) { - SET(t, B_DELCRSR); - deleted = 1; - } - ++e->index; - } else { - if (__bt_dleaf(t, h, e->index)) { - if (h->pgno != save.page->pgno) - mpool_put(t->bt_mp, h, dirty2); - mpool_put(t->bt_mp, save.page, dirty1); - return (RET_ERROR); - } - if (h->pgno == save.page->pgno) - dirty1 = MPOOL_DIRTY; - else - dirty2 = MPOOL_DIRTY; - deleted = 1; - } - } while (e->index < NEXTINDEX(h) && __bt_cmp(t, key, e) == 0); - - /* - * Quit if didn't find a match, no next page, or first key on - * the next page doesn't match. Don't unpin the original page - * unless an error occurs. - */ - if (e->index < NEXTINDEX(h)) - break; - for (;;) { - if ((pg = h->nextpg) == P_INVALID) - goto done1; - if (h->pgno != save.page->pgno) - mpool_put(t->bt_mp, h, dirty2); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) { - mpool_put(t->bt_mp, save.page, dirty1); - return (RET_ERROR); - } - if (NEXTINDEX(h) != 0) { - e->page = h; - e->index = 0; - break; - } - } - - if (__bt_cmp(t, key, e) != 0) - break; - } - - /* - * Reach here with the original page and the last page referenced - * pinned (they may be the same). Release it if not the original. - */ -done1: if (h->pgno != save.page->pgno) - mpool_put(t->bt_mp, h, dirty2); - - /* - * Walk backwards from the record previous to the record returned by - * __bt_search, skipping empty pages, until a record doesn't match - * the key or reach the beginning of the tree. - */ - *e = save; - for (;;) { - if (e->index) - --e->index; - for (h = e->page; e->index; --e->index) { - if (__bt_cmp(t, key, e) != 0) - goto done2; - if (h->pgno == cpgno && e->index == cindex) { - if (!ISSET(t, B_DELCRSR)) { - SET(t, B_DELCRSR); - deleted = 1; - } - } else { - if (__bt_dleaf(t, h, e->index) == RET_ERROR) { - mpool_put(t->bt_mp, h, dirty1); - return (RET_ERROR); - } - if (h->pgno == save.page->pgno) - dirty1 = MPOOL_DIRTY; - deleted = 1; - } - } - - if ((pg = h->prevpg) == P_INVALID) - goto done2; - mpool_put(t->bt_mp, h, dirty1); - dirty1 = 0; - if ((e->page = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - e->index = NEXTINDEX(e->page); - } - - /* - * Reach here with the last page that was looked at pinned. Release - * it. - */ -done2: mpool_put(t->bt_mp, h, dirty1); - return (deleted ? RET_SUCCESS : RET_SPECIAL); -} - -/* - * __BT_DLEAF -- Delete a single record from a leaf page. - * - * Parameters: - * t: tree - * index: index on current page to delete - * - * Returns: - * RET_SUCCESS, RET_ERROR. - */ -int -__bt_dleaf(BTREE *t, PAGE *h, int index) -{ - BLEAF *bl; - indx_t *ip, offset; - size_t nbytes; - int cnt; - char *from; - void *to; - - /* - * Delete a record from a btree leaf page. Internal records are never - * deleted from internal pages, regardless of the records that caused - * them to be added being deleted. Pages made empty by deletion are - * not reclaimed. They are, however, made available for reuse. - * - * Pack the remaining entries at the end of the page, shift the indices - * down, overwriting the deleted record and its index. If the record - * uses overflow pages, make them available for reuse. - */ - to = bl = GETBLEAF(h, index); - if (bl->flags & P_BIGKEY && __ovfl_delete(t, bl->bytes) == RET_ERROR) - return (RET_ERROR); - if (bl->flags & P_BIGDATA && - __ovfl_delete(t, bl->bytes + bl->ksize) == RET_ERROR) - return (RET_ERROR); - nbytes = NBLEAF(bl); - - /* - * Compress the key/data pairs. Compress and adjust the [BR]LEAF - * offsets. Reset the headers. - */ - from = (char *)h + h->upper; - memmove(from + nbytes, from, (char *)to - from); - h->upper += nbytes; - - offset = h->linp[index]; - for (cnt = index, ip = &h->linp[0]; cnt--; ++ip) - if (ip[0] < offset) - ip[0] += nbytes; - for (cnt = NEXTINDEX(h) - index; --cnt; ++ip) - ip[0] = ip[1] < offset ? ip[1] + nbytes : ip[1]; - h->lower -= sizeof(indx_t); - return (RET_SUCCESS); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_get.c b/cde/lib/DtMmdb/btree_berkeley/bt_get.c deleted file mode 100644 index f2ea0f145..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_get.c +++ /dev/null @@ -1,254 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_get.c /main/3 1996/06/11 17:12:34 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_get.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -/* - * __BT_GET -- Get a record from the btree. - * - * Parameters: - * dbp: pointer to access method - * key: key to find - * data: data to return - * flag: currently unused - * - * Returns: - * RET_ERROR, RET_SUCCESS and RET_SPECIAL if the key not found. - */ -int -__bt_get(const DB *dbp, const DBT *key, DBT *data, u_int flags) -{ - BTREE *t; - EPG *e; - int exact, status; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - /* Get currently doesn't take any flags. */ - if (flags) { - errno = EINVAL; - return (RET_ERROR); - } - - if ((e = __bt_search(t, key, &exact)) == NULL) - return (RET_ERROR); - if (!exact) { - mpool_put(t->bt_mp, e->page, 0); - return (RET_SPECIAL); - } - - /* - * A special case is if we found the record but it's flagged for - * deletion. In this case, we want to find another record with the - * same key, if it exists. Rather than look around the tree we call - * __bt_first and have it redo the search, as __bt_first will not - * return keys marked for deletion. Slow, but should never happen. - */ - if (ISSET(t, B_DELCRSR) && e->page->pgno == t->bt_bcursor.pgno && - e->index == t->bt_bcursor.index) { - mpool_put(t->bt_mp, e->page, 0); - if ((e = __bt_first(t, key, &exact)) == NULL) - return (RET_ERROR); - if (!exact) - return (RET_SPECIAL); - } - - status = __bt_ret(t, e, NULL, data); - /* - * If the user is doing concurrent access, we copied the - * key/data, toss the page. - */ - if (ISSET(t, B_DB_LOCK)) - mpool_put(t->bt_mp, e->page, 0); - else - t->bt_pinned = e->page; - return (status); -} - -/* - * __BT_FIRST -- Find the first entry. - * - * Parameters: - * t: the tree - * key: the key - * - * Returns: - * The first entry in the tree greater than or equal to key. - */ -EPG * -__bt_first(BTREE *t, const DBT *key, int *exactp) -{ - PAGE *h; - EPG *e; - EPG save; - pgno_t cpgno, pg; - indx_t cindex; - int found; - - /* - * Find any matching record; __bt_search pins the page. Only exact - * matches are tricky, otherwise just return the location of the key - * if it were to be inserted into the tree. - */ - if ((e = __bt_search(t, key, exactp)) == NULL) - return (NULL); - if (!*exactp) - return (e); - - if (ISSET(t, B_DELCRSR)) { - cpgno = t->bt_bcursor.pgno; - cindex = t->bt_bcursor.index; - } else { - cpgno = P_INVALID; - cindex = 0; /* GCC thinks it's uninitialized. */ - } - - /* - * Walk backwards, skipping empty pages, as long as the entry matches - * and there are keys left in the tree. Save a copy of each match in - * case we go too far. A special case is that we don't return a match - * on records that the cursor references that have already been flagged - * for deletion. - */ - save = *e; - h = e->page; - found = 0; - do { - if (cpgno != h->pgno || cindex != e->index) { - if (save.page->pgno != e->page->pgno) { - mpool_put(t->bt_mp, save.page, 0); - save = *e; - } else - save.index = e->index; - found = 1; - } - /* - * Make a special effort not to unpin the page the last (or - * original) match was on, but also make sure it's unpinned - * if an error occurs. - */ - while (e->index == 0) { - if (h->prevpg == P_INVALID) - goto done1; - if (h->pgno != save.page->pgno) - mpool_put(t->bt_mp, h, 0); - if ((h = mpool_get(t->bt_mp, h->prevpg, 0)) == NULL) { - if (h->pgno == save.page->pgno) - mpool_put(t->bt_mp, save.page, 0); - return (NULL); - } - e->page = h; - e->index = NEXTINDEX(h); - } - --e->index; - } while (__bt_cmp(t, key, e) == 0); - - /* - * Reach here with the last page that was looked at pinned, which may - * or may not be the same as the last (or original) match page. If - * it's not useful, release it. - */ -done1: if (h->pgno != save.page->pgno) - mpool_put(t->bt_mp, h, 0); - - /* - * If still haven't found a record, the only possibility left is the - * next one. Move forward one slot, skipping empty pages and check. - */ - if (!found) { - h = save.page; - if (++save.index == NEXTINDEX(h)) { - do { - pg = h->nextpg; - mpool_put(t->bt_mp, h, 0); - if (pg == P_INVALID) { - *exactp = 0; - return (e); - } - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (NULL); - } while ((save.index = NEXTINDEX(h)) == 0); - save.page = h; - } - if (__bt_cmp(t, key, &save) != 0) { - *exactp = 0; - return (e); - } - } - *e = save; - *exactp = 1; - return (e); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_open.c b/cde/lib/DtMmdb/btree_berkeley/bt_open.c deleted file mode 100644 index 62c87d95f..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_open.c +++ /dev/null @@ -1,461 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_open.c /main/3 1996/06/11 17:12:40 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_open.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -/* - * Implementation of btree access method for 4.4BSD. - * - * The design here was originally based on that of the btree access method - * used in the Postgres database system at UC Berkeley. This implementation - * is wholly independent of the Postgres code. - */ - -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#define __DBINTERFACE_PRIVATE -#include -#include "btree.h" - -static int byteorder __P((void)); -static int nroot __P((BTREE *)); -static int tmp __P((void)); - -/* - * __BT_OPEN -- Open a btree. - * - * Creates and fills a DB struct, and calls the routine that actually - * opens the btree. - * - * Parameters: - * fname: filename (NULL for in-memory trees) - * flags: open flag bits - * mode: open permission bits - * b: BTREEINFO pointer - * - * Returns: - * NULL on failure, pointer to DB on success. - * - */ -DB * -__bt_open(const char *fname, int flags, int mode, const BTREEINFO *openinfo, int dflags) -{ - BTMETA m; - BTREE *t; - BTREEINFO b; - DB *dbp; - pgno_t ncache; - struct stat sb; - int machine_lorder, nr; - - t = NULL; - - /* - * Intention is to make sure all of the user's selections are okay - * here and then use them without checking. Can't be complete, since - * we don't know the right page size, lorder or flags until the backing - * file is opened. Also, the file's page size can cause the cachesize - * to change. - */ - machine_lorder = byteorder(); - if (openinfo) { - b = *openinfo; - - /* Flags: R_DUP. */ - if (b.flags & ~(R_DUP)) - goto einval; - - /* - * Page size must be indx_t aligned and >= MINPSIZE. Default - * page size is set farther on, based on the underlying file - * transfer size. - */ - if (b.psize && - (b.psize < MINPSIZE || b.psize > MAX_PAGE_OFFSET + 1 || - b.psize & (sizeof(indx_t) - 1))) - goto einval; - - /* Minimum number of keys per page; absolute minimum is 2. */ - if (b.minkeypage) { - if (b.minkeypage < 2) - goto einval; - } else - b.minkeypage = DEFMINKEYPAGE; - - /* If no comparison, use default comparison and prefix. */ - if (b.compare == NULL) { - b.compare = __bt_defcmp; - if (b.prefix == NULL) - b.prefix = __bt_defpfx; - } - - if (b.lorder == 0) - b.lorder = machine_lorder; - } else { - b.compare = __bt_defcmp; - b.cachesize = 0; - b.flags = 0; - b.lorder = machine_lorder; - b.minkeypage = DEFMINKEYPAGE; - b.prefix = __bt_defpfx; - b.psize = 0; - } - - /* Check for the ubiquitous PDP-11. */ - if (b.lorder != BIG_ENDIAN && b.lorder != LITTLE_ENDIAN) - goto einval; - - /* Allocate and initialize DB and BTREE structures. */ - if ((t = malloc(sizeof(BTREE))) == NULL) - goto err; - t->bt_fd = -1; /* Don't close unopened fd on error. */ - if ((t->bt_dbp = dbp = malloc(sizeof(DB))) == NULL) - goto err; - t->bt_bcursor.pgno = P_INVALID; - t->bt_bcursor.index = 0; - t->bt_stack = NULL; - t->bt_pinned = NULL; - t->bt_sp = t->bt_maxstack = 0; - t->bt_kbuf = t->bt_dbuf = NULL; - t->bt_kbufsz = t->bt_dbufsz = 0; - t->bt_lorder = b.lorder; - t->bt_order = NOT; - t->bt_cmp = b.compare; - t->bt_pfx = b.prefix; - t->bt_flags = 0; - if (t->bt_lorder != machine_lorder) - SET(t, B_NEEDSWAP); - - dbp->type = DB_BTREE; - dbp->internal = t; - dbp->close = __bt_close; - dbp->del = __bt_delete; - dbp->fd = __bt_fd; - dbp->get = __bt_get; - dbp->put = __bt_put; - dbp->seq = __bt_seq; - dbp->sync = __bt_sync; - - /* - * If no file name was supplied, this is an in-memory btree and we - * open a backing temporary file. Otherwise, it's a disk-based tree. - */ - if (fname) { - switch(flags & O_ACCMODE) { - case O_RDONLY: - SET(t, B_RDONLY); - break; - case O_RDWR: - break; - case O_WRONLY: - default: - goto einval; - } - - if ((t->bt_fd = open(fname, flags, mode)) < 0) - goto err; - - } else { - if ((flags & O_ACCMODE) != O_RDWR) - goto einval; - if ((t->bt_fd = tmp()) == -1) - goto err; - SET(t, B_INMEM); - } - - if (fcntl(t->bt_fd, F_SETFD, 1) == -1) - goto err; - - if (fstat(t->bt_fd, &sb)) - goto err; - if (sb.st_size) { - nr = read(t->bt_fd, &m, sizeof(BTMETA)); - if (nr < 0) - goto err; - if (nr != sizeof(BTMETA)) - goto eftype; - - /* - * Read in the meta-data. This can change the notion of what - * the lorder, page size and flags are, and, when the page size - * changes, the cachesize value can change too. If the user - * specified the wrong byte order for an existing database, we - * don't bother to return an error, we just clear the NEEDSWAP - * bit. - */ - if (m.m_magic == BTREEMAGIC) - CLR(t, B_NEEDSWAP); - else { - SET(t, B_NEEDSWAP); - BLSWAP(m.m_magic); - BLSWAP(m.m_version); - BLSWAP(m.m_psize); - BLSWAP(m.m_free); - BLSWAP(m.m_nrecs); - BLSWAP(m.m_flags); - } - if (m.m_magic != BTREEMAGIC || m.m_version != BTREEVERSION) - goto eftype; - if (m.m_psize < MINPSIZE || m.m_psize > MAX_PAGE_OFFSET + 1 || - m.m_psize & (sizeof(indx_t) - 1)) - goto eftype; - if (m.m_flags & ~SAVEMETA) - goto eftype; - b.psize = m.m_psize; - t->bt_flags |= m.m_flags; - t->bt_free = m.m_free; - t->bt_nrecs = m.m_nrecs; - } else { - /* - * Set the page size to the best value for I/O to this file. - * Don't overflow the page offset type. - */ - if (b.psize == 0) { - b.psize = sb.st_blksize; - if (b.psize < MINPSIZE) - b.psize = MINPSIZE; - if (b.psize > MAX_PAGE_OFFSET + 1) - b.psize = MAX_PAGE_OFFSET + 1; - } - - /* Set flag if duplicates permitted. */ - if (!(b.flags & R_DUP)) - SET(t, B_NODUPS); - - t->bt_free = P_INVALID; - t->bt_nrecs = 0; - SET(t, B_METADIRTY); - } - - t->bt_psize = b.psize; - - /* Set the cache size; must be a multiple of the page size. */ - if (b.cachesize && b.cachesize & (b.psize - 1)) - b.cachesize += (~b.cachesize & (b.psize - 1)) + 1; - if (b.cachesize < b.psize * MINCACHE) - b.cachesize = b.psize * MINCACHE; - - /* Calculate number of pages to cache. */ - ncache = (b.cachesize + t->bt_psize - 1) / t->bt_psize; - - /* - * The btree data structure requires that at least two keys can fit on - * a page, but other than that there's no fixed requirement. The user - * specified a minimum number per page, and we translated that into the - * number of bytes a key/data pair can use before being placed on an - * overflow page. This calculation includes the page header, the size - * of the index referencing the leaf item and the size of the leaf item - * structure. Also, don't let the user specify a minkeypage such that - * a key/data pair won't fit even if both key and data are on overflow - * pages. - */ - t->bt_ovflsize = (t->bt_psize - BTDATAOFF) / b.minkeypage - - (sizeof(indx_t) + NBLEAFDBT(0, 0)); - if (t->bt_ovflsize < NBLEAFDBT(NOVFLSIZE, NOVFLSIZE) + sizeof(indx_t)) - t->bt_ovflsize = - NBLEAFDBT(NOVFLSIZE, NOVFLSIZE) + sizeof(indx_t); - - /* Initialize the buffer pool. */ - if ((t->bt_mp = - mpool_open(NULL, t->bt_fd, t->bt_psize, ncache)) == NULL) - goto err; - if (!ISSET(t, B_INMEM)) - mpool_filter(t->bt_mp, __bt_pgin, __bt_pgout, t); - - /* Create a root page if new tree. */ - if (nroot(t) == RET_ERROR) - goto err; - - /* Global flags. */ - if (dflags & DB_LOCK) - SET(t, B_DB_LOCK); - if (dflags & DB_SHMEM) - SET(t, B_DB_SHMEM); - if (dflags & DB_TXN) - SET(t, B_DB_TXN); - - return (dbp); - -einval: errno = EINVAL; - goto err; - -eftype: errno = EFTYPE; - goto err; - -err: if (t) { - if (t->bt_dbp) - free(t->bt_dbp); - if (t->bt_fd != -1) - (void)close(t->bt_fd); - free(t); - } - return (NULL); -} - -/* - * NROOT -- Create the root of a new tree. - * - * Parameters: - * t: tree - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -static int -nroot(BTREE *t) -{ - PAGE *meta, *root; - pgno_t npg; - - if ((meta = mpool_get(t->bt_mp, 0, 0)) != NULL) { - mpool_put(t->bt_mp, meta, 0); - return (RET_SUCCESS); - } - if (errno != EINVAL) - return (RET_ERROR); - - if ((meta = mpool_new(t->bt_mp, &npg)) == NULL) - return (RET_ERROR); - - if ((root = mpool_new(t->bt_mp, &npg)) == NULL) - return (RET_ERROR); - - if (npg != P_ROOT) - return (RET_ERROR); - root->pgno = npg; - root->prevpg = root->nextpg = P_INVALID; - root->lower = BTDATAOFF; - root->upper = t->bt_psize; - root->flags = P_BLEAF; - memset(meta, 0, t->bt_psize); - mpool_put(t->bt_mp, meta, MPOOL_DIRTY); - mpool_put(t->bt_mp, root, MPOOL_DIRTY); - return (RET_SUCCESS); -} - -static int -tmp(void) -{ - sigset_t set, oset; - int fd; - char *envtmp; - char path[MAXPATHLEN]; - - envtmp = getenv("TMPDIR"); - (void)snprintf(path, - sizeof(path), "%s/bt.XXXXXX", envtmp ? envtmp : "/tmp"); - - (void)sigfillset(&set); - (void)sigprocmask(SIG_BLOCK, &set, &oset); - if ((fd = mkstemp(path)) != -1) - (void)unlink(path); - (void)sigprocmask(SIG_SETMASK, &oset, NULL); - return(fd); -} - -static int -byteorder(void) -{ - u_long x; /* XXX: 32-bit assumption. */ - u_char *p; - - x = 0x01020304; - p = (u_char *)&x; - switch (*p) { - case 1: - return (BIG_ENDIAN); - case 4: - return (LITTLE_ENDIAN); - default: - return (0); - } -} - -int -__bt_fd(const DB *dbp) -{ - BTREE *t; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - /* In-memory database can't have a file descriptor. */ - if (ISSET(t, B_INMEM)) { - errno = ENOENT; - return (-1); - } - return (t->bt_fd); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_overflow.c b/cde/lib/DtMmdb/btree_berkeley/bt_overflow.c deleted file mode 100644 index c09337068..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_overflow.c +++ /dev/null @@ -1,237 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_overflow.c /main/3 1996/06/11 17:12:45 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_overflow.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -/* - * Big key/data code. - * - * Big key and data entries are stored on linked lists of pages. The initial - * reference is byte string stored with the key or data and is the page number - * and size. The actual record is stored in a chain of pages linked by the - * nextpg field of the PAGE header. - * - * The first page of the chain has a special property. If the record is used - * by an internal page, it cannot be deleted and the P_PRESERVE bit will be set - * in the header. - * - * XXX - * A single DBT is written to each chain, so a lot of space on the last page - * is wasted. This is a fairly major bug for some data sets. - */ - -/* - * __OVFL_GET -- Get an overflow key/data item. - * - * Parameters: - * t: tree - * p: pointer to { pgno_t, size_t } - * buf: storage address - * bufsz: storage size - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__ovfl_get(BTREE *t, void *p, size_t *ssz, char **buf, size_t *bufsz) -{ - PAGE *h; - pgno_t pg; - size_t nb, plen, sz; - - memmove(&pg, p, sizeof(pgno_t)); - memmove(&sz, (char *)p + sizeof(pgno_t), sizeof(size_t)); - *ssz = sz; - -#ifdef DEBUG - if (pg == P_INVALID || sz == 0) - abort(); -#endif - /* Make the buffer bigger as necessary. */ - if (*bufsz < sz) { - if ((*buf = __fix_realloc(*buf, sz)) == NULL) - return (RET_ERROR); - *bufsz = sz; - } - - /* - * Step through the linked list of pages, copying the data on each one - * into the buffer. Never copy more than the data's length. - */ - plen = t->bt_psize - BTDATAOFF; - for (p = *buf;; p = (char *)p + nb, pg = h->nextpg) { - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - - nb = MIN(sz, plen); - memmove(p, (char *)h + BTDATAOFF, nb); - mpool_put(t->bt_mp, h, 0); - - if ((sz -= nb) == 0) - break; - } - return (RET_SUCCESS); -} - -/* - * __OVFL_PUT -- Store an overflow key/data item. - * - * Parameters: - * t: tree - * data: DBT to store - * pgno: storage page number - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__ovfl_put(BTREE *t, const DBT *dbt, pgno_t *pg) -{ - PAGE *h, *last; - void *p; - pgno_t npg; - size_t nb, plen, sz; - - /* - * Allocate pages and copy the key/data record into them. Store the - * number of the first page in the chain. - */ - plen = t->bt_psize - BTDATAOFF; - for (last = NULL, p = dbt->data, sz = dbt->size;; - p = (char *)p + plen, last = h) { - if ((h = __bt_new(t, &npg)) == NULL) - return (RET_ERROR); - - h->pgno = npg; - h->nextpg = h->prevpg = P_INVALID; - h->flags = P_OVERFLOW; - h->lower = h->upper = 0; - - nb = MIN(sz, plen); - memmove((char *)h + BTDATAOFF, p, nb); - - if (last) { - last->nextpg = h->pgno; - mpool_put(t->bt_mp, last, MPOOL_DIRTY); - } else - *pg = h->pgno; - - if ((sz -= nb) == 0) { - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - break; - } - } - return (RET_SUCCESS); -} - -/* - * __OVFL_DELETE -- Delete an overflow chain. - * - * Parameters: - * t: tree - * p: pointer to { pgno_t, size_t } - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__ovfl_delete(BTREE *t, void *p) -{ - PAGE *h; - pgno_t pg; - size_t plen, sz; - - memmove(&pg, p, sizeof(pgno_t)); - memmove(&sz, (char *)p + sizeof(pgno_t), sizeof(size_t)); - -#ifdef DEBUG - if (pg == P_INVALID || sz == 0) - abort(); -#endif - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - - /* Don't delete chains used by internal pages. */ - if (h->flags & P_PRESERVE) { - mpool_put(t->bt_mp, h, 0); - return (RET_SUCCESS); - } - - /* Step through the chain, calling the free routine for each page. */ - for (plen = t->bt_psize - BTDATAOFF;; sz -= plen) { - pg = h->nextpg; - __bt_free(t, h); - if (sz <= plen) - break; - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } - return (RET_SUCCESS); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_page.c b/cde/lib/DtMmdb/btree_berkeley/bt_page.c deleted file mode 100644 index fb69b1fd3..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_page.c +++ /dev/null @@ -1,113 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_page.c /main/3 1996/06/11 17:12:50 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_page.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#define __DBINTERFACE_PRIVATE -#include - -#include -#include "btree.h" - -/* - * __BT_FREE -- Put a page on the freelist. - * - * Parameters: - * t: tree - * h: page to free - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__bt_free(BTREE *t, PAGE *h) -{ - /* Insert the page at the start of the free list. */ - h->prevpg = P_INVALID; - h->nextpg = t->bt_free; - t->bt_free = h->pgno; - - /* Make sure the page gets written back. */ - return (mpool_put(t->bt_mp, h, MPOOL_DIRTY)); -} - -/* - * __BT_NEW -- Get a new page, preferably from the freelist. - * - * Parameters: - * t: tree - * npg: storage for page number. - * - * Returns: - * Pointer to a page, NULL on error. - */ -PAGE * -__bt_new(BTREE *t, pgno_t *npg) -{ - PAGE *h; - - if (t->bt_free != P_INVALID && - (h = mpool_get(t->bt_mp, t->bt_free, 0)) != NULL) { - *npg = t->bt_free; - t->bt_free = h->nextpg; - return (h); - } - return (mpool_new(t->bt_mp, npg)); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_put.c b/cde/lib/DtMmdb/btree_berkeley/bt_put.c deleted file mode 100644 index 3c34b9bf1..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_put.c +++ /dev/null @@ -1,336 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_put.c /main/3 1996/06/11 17:12:56 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_put.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include -#include - -#include -#include "btree.h" - -static EPG *bt_fast __P((BTREE *, const DBT *, const DBT *, int *)); - -/* - * __BT_PUT -- Add a btree item to the tree. - * - * Parameters: - * dbp: pointer to access method - * key: key - * data: data - * flag: R_NOOVERWRITE - * - * Returns: - * RET_ERROR, RET_SUCCESS and RET_SPECIAL if the key is already in the - * tree and R_NOOVERWRITE specified. - */ -int -__bt_put(const DB *dbp, DBT *key, const DBT *data, u_int flags) -{ - BTREE *t; - DBT tkey, tdata; - EPG *e = NULL; - PAGE *h; - indx_t index, nxtindex; - pgno_t pg; - size_t nbytes; - int dflags, exact, status; - char *dest, db[NOVFLSIZE], kb[NOVFLSIZE]; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - switch (flags) { - case R_CURSOR: - if (!ISSET(t, B_SEQINIT)) - goto einval; - if (ISSET(t, B_DELCRSR)) - goto einval; - break; - case 0: - case R_NOOVERWRITE: - break; - default: -einval: errno = EINVAL; - return (RET_ERROR); - } - - if (ISSET(t, B_RDONLY)) { - errno = EPERM; - return (RET_ERROR); - } - - /* - * If the key/data won't fit on a page, store it on indirect pages. - * Only store the key on the overflow page if it's too big after the - * data is on an overflow page. - * - * XXX - * If the insert fails later on, these pages aren't recovered. - */ - dflags = 0; - if (key->size + data->size > t->bt_ovflsize) { - if (key->size > t->bt_ovflsize) { -storekey: if (__ovfl_put(t, key, &pg) == RET_ERROR) - return (RET_ERROR); - tkey.data = kb; - tkey.size = NOVFLSIZE; - memmove(kb, &pg, sizeof(pgno_t)); - memmove(kb + sizeof(pgno_t), - &key->size, sizeof(size_t)); - dflags |= P_BIGKEY; - key = &tkey; - } - if (key->size + data->size > t->bt_ovflsize) { - if (__ovfl_put(t, data, &pg) == RET_ERROR) - return (RET_ERROR); - tdata.data = db; - tdata.size = NOVFLSIZE; - memmove(db, &pg, sizeof(pgno_t)); - memmove(db + sizeof(pgno_t), - &data->size, sizeof(size_t)); - dflags |= P_BIGDATA; - data = &tdata; - } - if (key->size + data->size > t->bt_ovflsize) - goto storekey; - } - - /* Replace the cursor. */ - if (flags == R_CURSOR) { - if ((h = mpool_get(t->bt_mp, t->bt_bcursor.pgno, 0)) == NULL) - return (RET_ERROR); - index = t->bt_bcursor.index; - goto delete; - } - - /* - * Find the key to delete, or, the location at which to insert. Bt_fast - * and __bt_search pin the returned page. - */ - if (t->bt_order == NOT || (e = bt_fast(t, key, data, &exact)) == NULL) - if ((e = __bt_search(t, key, &exact)) == NULL) - return (RET_ERROR); - h = e->page; - index = e->index; - - /* - * Add the specified key/data pair to the tree. If an identical key - * is already in the tree, and R_NOOVERWRITE is set, an error is - * returned. If R_NOOVERWRITE is not set, the key is either added (if - * duplicates are permitted) or an error is returned. - * - * Pages are split as required. - */ - switch (flags) { - case R_NOOVERWRITE: - if (!exact) - break; - /* - * One special case is if the cursor references the record and - * it's been flagged for deletion. Then, we delete the record, - * leaving the cursor there -- this means that the inserted - * record will not be seen in a cursor scan. - */ - if (ISSET(t, B_DELCRSR) && t->bt_bcursor.pgno == h->pgno && - t->bt_bcursor.index == index) { - CLR(t, B_DELCRSR); - goto delete; - } - mpool_put(t->bt_mp, h, 0); - return (RET_SPECIAL); - default: - if (!exact || !ISSET(t, B_NODUPS)) - break; -delete: if (__bt_dleaf(t, h, index) == RET_ERROR) { - mpool_put(t->bt_mp, h, 0); - return (RET_ERROR); - } - break; - } - - /* - * If not enough room, or the user has put a ceiling on the number of - * keys permitted in the page, split the page. The split code will - * insert the key and data and unpin the current page. If inserting - * into the offset array, shift the pointers up. - */ - nbytes = NBLEAFDBT(key->size, data->size); - if (h->upper - h->lower < nbytes + sizeof(indx_t)) { - if ((status = __bt_split(t, h, key, - data, dflags, nbytes, index)) != RET_SUCCESS) - return (status); - goto success; - } - - if (index < (nxtindex = NEXTINDEX(h))) - memmove(h->linp + index + 1, h->linp + index, - (nxtindex - index) * sizeof(indx_t)); - h->lower += sizeof(indx_t); - - h->linp[index] = h->upper -= nbytes; - dest = (char *)h + h->upper; - WR_BLEAF(dest, key, data, dflags); - - if (t->bt_order == NOT) { - if (h->nextpg == P_INVALID) { - if (index == NEXTINDEX(h) - 1) { - t->bt_order = FORWARD; - t->bt_last.index = index; - t->bt_last.pgno = h->pgno; - } - } else if (h->prevpg == P_INVALID) { - if (index == 0) { - t->bt_order = BACK; - t->bt_last.index = 0; - t->bt_last.pgno = h->pgno; - } - } - } - - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - -success: - if (flags == R_SETCURSOR) { - t->bt_bcursor.pgno = e->page->pgno; - t->bt_bcursor.index = e->index; - } - SET(t, B_MODIFIED); - return (RET_SUCCESS); -} - -#ifdef STATISTICS -u_long bt_cache_hit, bt_cache_miss; -#endif - -/* - * BT_FAST -- Do a quick check for sorted data. - * - * Parameters: - * t: tree - * key: key to insert - * - * Returns: - * EPG for new record or NULL if not found. - */ -static EPG * -bt_fast(BTREE *t, const DBT *key, const DBT *data, int *exactp) -{ - static EPG e; - PAGE *h; - size_t nbytes; - int cmp; - - if ((h = mpool_get(t->bt_mp, t->bt_last.pgno, 0)) == NULL) { - t->bt_order = NOT; - return (NULL); - } - e.page = h; - e.index = t->bt_last.index; - - /* - * If won't fit in this page or have too many keys in this page, have - * to search to get split stack. - */ - nbytes = NBLEAFDBT(key->size, data->size); - if (h->upper - h->lower < nbytes + sizeof(indx_t)) - goto miss; - - if (t->bt_order == FORWARD) { - if (e.page->nextpg != P_INVALID) - goto miss; - if (e.index != NEXTINDEX(h) - 1) - goto miss; - if ((cmp = __bt_cmp(t, key, &e)) < 0) - goto miss; - t->bt_last.index = cmp ? ++e.index : e.index; - } else { - if (e.page->prevpg != P_INVALID) - goto miss; - if (e.index != 0) - goto miss; - if ((cmp = __bt_cmp(t, key, &e)) > 0) - goto miss; - t->bt_last.index = 0; - } - *exactp = cmp == 0; -#ifdef STATISTICS - ++bt_cache_hit; -#endif - return (&e); - -miss: -#ifdef STATISTICS - ++bt_cache_miss; -#endif - t->bt_order = NOT; - mpool_put(t->bt_mp, h, 0); - return (NULL); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_search.c b/cde/lib/DtMmdb/btree_berkeley/bt_search.c deleted file mode 100644 index 7ab48abd5..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_search.c +++ /dev/null @@ -1,139 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_search.c /main/3 1996/06/11 17:13:01 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_search.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include - -#include -#include "btree.h" - -/* - * __BT_SEARCH -- Search a btree for a key. - * - * Parameters: - * t: tree to search - * key: key to find - * exactp: pointer to exact match flag - * - * Returns: - * EPG for matching record, if any, or the EPG for the location of the - * key, if it were inserted into the tree. - * - * Warnings: - * The EPG returned is in static memory, and will be overwritten by the - * next search of any kind in any tree. - */ -EPG * -__bt_search(BTREE *t, const DBT *key, int *exactp) -{ - indx_t index; - int base, cmp, lim; - PAGE *h; - pgno_t pg; - static EPG e; - - BT_CLR(t); - for (pg = P_ROOT;;) { - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (NULL); - - /* Do a binary search on the current page. */ - e.page = h; - for (base = 0, lim = NEXTINDEX(h); lim; lim >>= 1) { - e.index = index = base + (lim >> 1); - if ((cmp = __bt_cmp(t, key, &e)) == 0) { - if (h->flags & P_BLEAF) { - *exactp = 1; - return (&e); - } - goto next; - } - if (cmp > 0) { - base = index + 1; - --lim; - } - } - - /* If it's a leaf page, we're done. */ - if (h->flags & P_BLEAF) { - e.index = base; - *exactp = 0; - return (&e); - } - - /* - * No match found. Base is the smallest index greater than - * key and may be zero or a last + 1 index. If it's non-zero, - * decrement by one, and record the internal page which should - * be a parent page for the key. If a split later occurs, the - * inserted page will be to the right of the saved page. - */ - index = base ? base - 1 : base; - -next: if (__bt_push(t, h->pgno, index) == RET_ERROR) - return (NULL); - pg = GETBINTERNAL(h, index)->pgno; - mpool_put(t->bt_mp, h, 0); - } -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_seq.c b/cde/lib/DtMmdb/btree_berkeley/bt_seq.c deleted file mode 100644 index 82bab6087..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_seq.c +++ /dev/null @@ -1,391 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_seq.c /main/3 1996/06/11 17:13:05 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_seq.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include -#include - -#include -#include "btree.h" - -static int bt_seqadv __P((BTREE *, EPG *, int)); -static int bt_seqset __P((BTREE *, EPG *, DBT *, int)); - -/* - * Sequential scan support. - * - * The tree can be scanned sequentially, starting from either end of the tree - * or from any specific key. A scan request before any scanning is done is - * initialized as starting from the least node. - * - * Each tree has an EPGNO which has the current position of the cursor. The - * cursor has to survive deletions/insertions in the tree without losing its - * position. This is done by noting deletions without doing them, and then - * doing them when the cursor moves (or the tree is closed). - */ - -/* - * __BT_SEQ -- Btree sequential scan interface. - * - * Parameters: - * dbp: pointer to access method - * key: key for positioning and return value - * data: data return value - * flags: R_CURSOR, R_FIRST, R_LAST, R_NEXT, R_PREV. - * - * Returns: - * RET_ERROR, RET_SUCCESS or RET_SPECIAL if there's no next key. - */ -int -__bt_seq(const DB *dbp, DBT *key, DBT *data, u_int flags) -{ - BTREE *t; - EPG e; - int status; - - t = dbp->internal; - - /* Toss any page pinned across calls. */ - if (t->bt_pinned != NULL) { - mpool_put(t->bt_mp, t->bt_pinned, 0); - t->bt_pinned = NULL; - } - - /* - * If scan unitialized as yet, or starting at a specific record, set - * the scan to a specific key. Both bt_seqset and bt_seqadv pin the - * page the cursor references if they're successful. - */ - switch(flags) { - case R_NEXT: - case R_PREV: - if (ISSET(t, B_SEQINIT)) { - status = bt_seqadv(t, &e, flags); - break; - } - /* FALLTHROUGH */ - case R_CURSOR: - case R_FIRST: - case R_LAST: - status = bt_seqset(t, &e, key, flags); - break; - default: - errno = EINVAL; - return (RET_ERROR); - } - - if (status == RET_SUCCESS) { - status = __bt_ret(t, &e, key, data); - - /* Update the actual cursor. */ - t->bt_bcursor.pgno = e.page->pgno; - t->bt_bcursor.index = e.index; - - /* - * If the user is doing concurrent access, we copied the - * key/data, toss the page. - */ - if (ISSET(t, B_DB_LOCK)) - mpool_put(t->bt_mp, e.page, 0); - else - t->bt_pinned = e.page; - SET(t, B_SEQINIT); - } - return (status); -} - -/* - * BT_SEQSET -- Set the sequential scan to a specific key. - * - * Parameters: - * t: tree - * ep: storage for returned key - * key: key for initial scan position - * flags: R_CURSOR, R_FIRST, R_LAST, R_NEXT, R_PREV - * - * Side effects: - * Pins the page the cursor references. - * - * Returns: - * RET_ERROR, RET_SUCCESS or RET_SPECIAL if there's no next key. - */ -static int -bt_seqset(BTREE *t, EPG *ep, DBT *key, int flags) -{ - EPG *e; - PAGE *h; - pgno_t pg; - int exact; - - /* - * Delete any already deleted record that we've been saving because - * the cursor pointed to it. Since going to a specific key, should - * delete any logically deleted records so they aren't found. - */ - if (ISSET(t, B_DELCRSR) && __bt_crsrdel(t, &t->bt_bcursor)) - return (RET_ERROR); - - /* - * Find the first, last or specific key in the tree and point the cursor - * at it. The cursor may not be moved until a new key has been found. - */ - switch(flags) { - case R_CURSOR: /* Keyed scan. */ - /* - * Find the first instance of the key or the smallest key which - * is greater than or equal to the specified key. If run out - * of keys, return RET_SPECIAL. - */ - if (key->data == NULL || key->size == 0) { - errno = EINVAL; - return (RET_ERROR); - } - e = __bt_first(t, key, &exact); /* Returns pinned page. */ - if (e == NULL) - return (RET_ERROR); - /* - * If at the end of a page, skip any empty pages and find the - * next entry. - */ - if (e->index == NEXTINDEX(e->page)) { - h = e->page; - do { - pg = h->nextpg; - mpool_put(t->bt_mp, h, 0); - if (pg == P_INVALID) - return (RET_SPECIAL); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } while (NEXTINDEX(h) == 0); - e->index = 0; - e->page = h; - } - *ep = *e; - break; - case R_FIRST: /* First record. */ - case R_NEXT: - /* Walk down the left-hand side of the tree. */ - for (pg = P_ROOT;;) { - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - if (h->flags & (P_BLEAF | P_RLEAF)) - break; - pg = GETBINTERNAL(h, 0)->pgno; - mpool_put(t->bt_mp, h, 0); - } - - /* Skip any empty pages. */ - while (NEXTINDEX(h) == 0 && h->nextpg != P_INVALID) { - pg = h->nextpg; - mpool_put(t->bt_mp, h, 0); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } - - if (NEXTINDEX(h) == 0) { - mpool_put(t->bt_mp, h, 0); - return (RET_SPECIAL); - } - - ep->page = h; - ep->index = 0; - break; - case R_LAST: /* Last record. */ - case R_PREV: - /* Walk down the right-hand side of the tree. */ - for (pg = P_ROOT;;) { - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - if (h->flags & (P_BLEAF | P_RLEAF)) - break; - pg = GETBINTERNAL(h, NEXTINDEX(h) - 1)->pgno; - mpool_put(t->bt_mp, h, 0); - } - - /* Skip any empty pages. */ - while (NEXTINDEX(h) == 0 && h->prevpg != P_INVALID) { - pg = h->prevpg; - mpool_put(t->bt_mp, h, 0); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } - - if (NEXTINDEX(h) == 0) { - mpool_put(t->bt_mp, h, 0); - return (RET_SPECIAL); - } - - ep->page = h; - ep->index = NEXTINDEX(h) - 1; - break; - } - return (RET_SUCCESS); -} - -/* - * BT_SEQADVANCE -- Advance the sequential scan. - * - * Parameters: - * t: tree - * flags: R_NEXT, R_PREV - * - * Side effects: - * Pins the page the new key/data record is on. - * - * Returns: - * RET_ERROR, RET_SUCCESS or RET_SPECIAL if there's no next key. - */ -static int -bt_seqadv(BTREE *t, EPG *e, int flags) -{ - EPGNO *c, delc; - PAGE *h; - indx_t index; - pgno_t pg; - - /* Save the current cursor if going to delete it. */ - c = &t->bt_bcursor; - if (ISSET(t, B_DELCRSR)) - delc = *c; - - if ((h = mpool_get(t->bt_mp, c->pgno, 0)) == NULL) - return (RET_ERROR); - - /* - * Find the next/previous record in the tree and point the cursor at it. - * The cursor may not be moved until a new key has been found. - */ - index = c->index; - switch(flags) { - case R_NEXT: /* Next record. */ - if (++index == NEXTINDEX(h)) { - do { - pg = h->nextpg; - mpool_put(t->bt_mp, h, 0); - if (pg == P_INVALID) - return (RET_SPECIAL); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } while (NEXTINDEX(h) == 0); - index = 0; - } - break; - case R_PREV: /* Previous record. */ - if (index-- == 0) { - do { - pg = h->prevpg; - mpool_put(t->bt_mp, h, 0); - if (pg == P_INVALID) - return (RET_SPECIAL); - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - } while (NEXTINDEX(h) == 0); - index = NEXTINDEX(h) - 1; - } - break; - } - - e->page = h; - e->index = index; - - /* - * Delete any already deleted record that we've been saving because the - * cursor pointed to it. This could cause the new index to be shifted - * down by one if the record we're deleting is on the same page and has - * a larger index. - */ - if (ISSET(t, B_DELCRSR)) { - CLR(t, B_DELCRSR); /* Don't try twice. */ - if (c->pgno == delc.pgno && c->index > delc.index) - --c->index; - if (__bt_crsrdel(t, &delc)) - return (RET_ERROR); - } - return (RET_SUCCESS); -} - -/* - * __BT_CRSRDEL -- Delete the record referenced by the cursor. - * - * Parameters: - * t: tree - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__bt_crsrdel(BTREE *t, EPGNO *c) -{ - PAGE *h; - int status; - - CLR(t, B_DELCRSR); /* Don't try twice. */ - if ((h = mpool_get(t->bt_mp, c->pgno, 0)) == NULL) - return (RET_ERROR); - status = __bt_dleaf(t, h, c->index); - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - return (status); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_split.c b/cde/lib/DtMmdb/btree_berkeley/bt_split.c deleted file mode 100644 index 434af3001..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_split.c +++ /dev/null @@ -1,826 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_split.c /main/3 1996/06/11 17:13:10 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_split.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#define __DBINTERFACE_PRIVATE -#include -#include -#include -#include - -#include -#include "btree.h" - -static int bt_broot __P((BTREE *, PAGE *, PAGE *, PAGE *)); -static PAGE *bt_page - __P((BTREE *, PAGE *, PAGE **, PAGE **, u_int *, size_t)); -static int bt_preserve __P((BTREE *, pgno_t)); -static PAGE *bt_psplit - __P((BTREE *, PAGE *, PAGE *, PAGE *, u_int *, size_t)); -static PAGE *bt_root - __P((BTREE *, PAGE *, PAGE **, PAGE **, u_int *, size_t)); -static int bt_rroot __P((BTREE *, PAGE *, PAGE *, PAGE *)); -static recno_t rec_total __P((PAGE *)); - -#ifdef STATISTICS -u_long bt_rootsplit, bt_split, bt_sortsplit, bt_pfxsaved; -#endif - -/* - * __BT_SPLIT -- Split the tree. - * - * Parameters: - * t: tree - * sp: page to split - * key: key to insert - * data: data to insert - * flags: BIGKEY/BIGDATA flags - * ilen: insert length - * skip: index to leave open - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__bt_split(BTREE *t, PAGE *sp, const DBT *key, const DBT *data, u_long flags, size_t ilen, u_int skip) -{ - BINTERNAL *bi = NULL; - BLEAF *bl = NULL; - BLEAF *tbl; - DBT a, b; - EPGNO *parent; - PAGE *h, *l, *r, *lchild, *rchild; - indx_t nxtindex; - size_t n, nbytes; - size_t nksize = 0; - int parentsplit; - char *dest; - - /* - * Split the page into two pages, l and r. The split routines return - * a pointer to the page into which the key should be inserted and with - * skip set to the offset which should be used. Additionally, l and r - * are pinned. - */ - h = sp->pgno == P_ROOT ? - bt_root(t, sp, &l, &r, &skip, ilen) : - bt_page(t, sp, &l, &r, &skip, ilen); - if (h == NULL) - return (RET_ERROR); - - /* - * Insert the new key/data pair into the leaf page. (Key inserts - * always cause a leaf page to split first.) - */ - h->linp[skip] = h->upper -= ilen; - dest = (char *)h + h->upper; - if (ISSET(t, R_RECNO)) - WR_RLEAF(dest, data, flags) - else - WR_BLEAF(dest, key, data, flags) - - /* If the root page was split, make it look right. */ - if (sp->pgno == P_ROOT && - (ISSET(t, R_RECNO) ? - bt_rroot(t, sp, l, r) : bt_broot(t, sp, l, r)) == RET_ERROR) - goto err2; - - /* - * Now we walk the parent page stack -- a LIFO stack of the pages that - * were traversed when we searched for the page that split. Each stack - * entry is a page number and a page index offset. The offset is for - * the page traversed on the search. We've just split a page, so we - * have to insert a new key into the parent page. - * - * If the insert into the parent page causes it to split, may have to - * continue splitting all the way up the tree. We stop if the root - * splits or the page inserted into didn't have to split to hold the - * new key. Some algorithms replace the key for the old page as well - * as the new page. We don't, as there's no reason to believe that the - * first key on the old page is any better than the key we have, and, - * in the case of a key being placed at index 0 causing the split, the - * key is unavailable. - * - * There are a maximum of 5 pages pinned at any time. We keep the left - * and right pages pinned while working on the parent. The 5 are the - * two children, left parent and right parent (when the parent splits) - * and the root page or the overflow key page when calling bt_preserve. - * This code must make sure that all pins are released other than the - * root page or overflow page which is unlocked elsewhere. - */ - while ((parent = BT_POP(t)) != NULL) { - lchild = l; - rchild = r; - - /* Get the parent page. */ - if ((h = mpool_get(t->bt_mp, parent->pgno, 0)) == NULL) - goto err2; - - /* - * The new key goes ONE AFTER the index, because the split - * was to the right. - */ - skip = parent->index + 1; - - /* - * Calculate the space needed on the parent page. - * - * Prefix trees: space hack when inserting into BINTERNAL - * pages. Retain only what's needed to distinguish between - * the new entry and the LAST entry on the page to its left. - * If the keys compare equal, retain the entire key. Note, - * we don't touch overflow keys, and the entire key must be - * retained for the next-to-left most key on the leftmost - * page of each level, or the search will fail. Applicable - * ONLY to internal pages that have leaf pages as children. - * Further reduction of the key between pairs of internal - * pages loses too much information. - */ - switch (rchild->flags & P_TYPE) { - case P_BINTERNAL: - bi = GETBINTERNAL(rchild, 0); - nbytes = NBINTERNAL(bi->ksize); - break; - case P_BLEAF: - bl = GETBLEAF(rchild, 0); - nbytes = NBINTERNAL(bl->ksize); - if (t->bt_pfx && !(bl->flags & P_BIGKEY) && - (h->prevpg != P_INVALID || skip > 1)) { - tbl = GETBLEAF(lchild, NEXTINDEX(lchild) - 1); - a.size = tbl->ksize; - a.data = tbl->bytes; - b.size = bl->ksize; - b.data = bl->bytes; - nksize = t->bt_pfx(&a, &b); - n = NBINTERNAL(nksize); - if (n < nbytes) { -#ifdef STATISTICS - bt_pfxsaved += nbytes - n; -#endif - nbytes = n; - } else - nksize = 0; - } else - nksize = 0; - break; - case P_RINTERNAL: - case P_RLEAF: - nbytes = NRINTERNAL; - break; - default: - abort(); - } - - /* Split the parent page if necessary or shift the indices. */ - if (h->upper - h->lower < nbytes + sizeof(indx_t)) { - sp = h; - h = h->pgno == P_ROOT ? - bt_root(t, h, &l, &r, &skip, nbytes) : - bt_page(t, h, &l, &r, &skip, nbytes); - if (h == NULL) - goto err1; - parentsplit = 1; - } else { - if (skip < (nxtindex = NEXTINDEX(h))) - memmove(h->linp + skip + 1, h->linp + skip, - (nxtindex - skip) * sizeof(indx_t)); - h->lower += sizeof(indx_t); - parentsplit = 0; - } - - /* Insert the key into the parent page. */ - switch(rchild->flags & P_TYPE) { - case P_BINTERNAL: - h->linp[skip] = h->upper -= nbytes; - dest = (char *)h + h->linp[skip]; - memmove(dest, bi, nbytes); - ((BINTERNAL *)dest)->pgno = rchild->pgno; - break; - case P_BLEAF: - h->linp[skip] = h->upper -= nbytes; - dest = (char *)h + h->linp[skip]; - WR_BINTERNAL(dest, nksize ? nksize : bl->ksize, - rchild->pgno, bl->flags & P_BIGKEY); - memmove(dest, bl->bytes, nksize ? nksize : bl->ksize); - if (bl->flags & P_BIGKEY && - bt_preserve(t, *(char *)bl->bytes) == RET_ERROR) - goto err1; - break; - case P_RINTERNAL: - /* - * Update the left page count. If split - * added at index 0, fix the correct page. - */ - if (skip > 0) - dest = (char *)h + h->linp[skip - 1]; - else - dest = (char *)l + l->linp[NEXTINDEX(l) - 1]; - ((RINTERNAL *)dest)->nrecs = rec_total(lchild); - ((RINTERNAL *)dest)->pgno = lchild->pgno; - - /* Update the right page count. */ - h->linp[skip] = h->upper -= nbytes; - dest = (char *)h + h->linp[skip]; - ((RINTERNAL *)dest)->nrecs = rec_total(rchild); - ((RINTERNAL *)dest)->pgno = rchild->pgno; - break; - case P_RLEAF: - /* - * Update the left page count. If split - * added at index 0, fix the correct page. - */ - if (skip > 0) - dest = (char *)h + h->linp[skip - 1]; - else - dest = (char *)l + l->linp[NEXTINDEX(l) - 1]; - ((RINTERNAL *)dest)->nrecs = NEXTINDEX(lchild); - ((RINTERNAL *)dest)->pgno = lchild->pgno; - - /* Update the right page count. */ - h->linp[skip] = h->upper -= nbytes; - dest = (char *)h + h->linp[skip]; - ((RINTERNAL *)dest)->nrecs = NEXTINDEX(rchild); - ((RINTERNAL *)dest)->pgno = rchild->pgno; - break; - default: - abort(); - } - - /* Unpin the held pages. */ - if (!parentsplit) { - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - break; - } - - /* If the root page was split, make it look right. */ - if (sp->pgno == P_ROOT && - (ISSET(t, R_RECNO) ? - bt_rroot(t, sp, l, r) : bt_broot(t, sp, l, r)) == RET_ERROR) - goto err1; - - mpool_put(t->bt_mp, lchild, MPOOL_DIRTY); - mpool_put(t->bt_mp, rchild, MPOOL_DIRTY); - } - - /* Unpin the held pages. */ - mpool_put(t->bt_mp, l, MPOOL_DIRTY); - mpool_put(t->bt_mp, r, MPOOL_DIRTY); - - /* Clear any pages left on the stack. */ - return (RET_SUCCESS); - - /* - * If something fails in the above loop we were already walking back - * up the tree and the tree is now inconsistent. Nothing much we can - * do about it but release any memory we're holding. - */ -err1: mpool_put(t->bt_mp, lchild, MPOOL_DIRTY); - mpool_put(t->bt_mp, rchild, MPOOL_DIRTY); - -err2: mpool_put(t->bt_mp, l, 0); - mpool_put(t->bt_mp, r, 0); - __dbpanic(t->bt_dbp); - return (RET_ERROR); -} - -/* - * BT_PAGE -- Split a non-root page of a btree. - * - * Parameters: - * t: tree - * h: root page - * lp: pointer to left page pointer - * rp: pointer to right page pointer - * skip: pointer to index to leave open - * ilen: insert length - * - * Returns: - * Pointer to page in which to insert or NULL on error. - */ -static PAGE * -bt_page(BTREE *t, PAGE *h, PAGE **lp, PAGE **rp, u_int *skip, size_t ilen) -{ - PAGE *l, *r, *tp; - pgno_t npg; - -#ifdef STATISTICS - ++bt_split; -#endif - /* Put the new right page for the split into place. */ - if ((r = __bt_new(t, &npg)) == NULL) - return (NULL); - r->pgno = npg; - r->lower = BTDATAOFF; - r->upper = t->bt_psize; - r->nextpg = h->nextpg; - r->prevpg = h->pgno; - r->flags = h->flags & P_TYPE; - - /* - * If we're splitting the last page on a level because we're appending - * a key to it (skip is NEXTINDEX()), it's likely that the data is - * sorted. Adding an empty page on the side of the level is less work - * and can push the fill factor much higher than normal. If we're - * wrong it's no big deal, we'll just do the split the right way next - * time. It may look like it's equally easy to do a similar hack for - * reverse sorted data, that is, split the tree left, but it's not. - * Don't even try. - */ - if (h->nextpg == P_INVALID && *skip == NEXTINDEX(h)) { -#ifdef STATISTICS - ++bt_sortsplit; -#endif - h->nextpg = r->pgno; - r->lower = BTDATAOFF + sizeof(indx_t); - *skip = 0; - *lp = h; - *rp = r; - return (r); - } - - /* Put the new left page for the split into place. */ - if ((l = malloc(t->bt_psize)) == NULL) { - mpool_put(t->bt_mp, r, 0); - return (NULL); - } - l->pgno = h->pgno; - l->nextpg = r->pgno; - l->prevpg = h->prevpg; - l->lower = BTDATAOFF; - l->upper = t->bt_psize; - l->flags = h->flags & P_TYPE; - - /* Fix up the previous pointer of the page after the split page. */ - if (h->nextpg != P_INVALID) { - if ((tp = mpool_get(t->bt_mp, h->nextpg, 0)) == NULL) { - free(l); - /* XXX mpool_free(t->bt_mp, r->pgno); */ - return (NULL); - } - tp->prevpg = r->pgno; - mpool_put(t->bt_mp, tp, 0); - } - - /* - * Split right. The key/data pairs aren't sorted in the btree page so - * it's simpler to copy the data from the split page onto two new pages - * instead of copying half the data to the right page and compacting - * the left page in place. Since the left page can't change, we have - * to swap the original and the allocated left page after the split. - */ - tp = bt_psplit(t, h, l, r, skip, ilen); - - /* Move the new left page onto the old left page. */ - memmove(h, l, t->bt_psize); - if (tp == l) - tp = h; - free(l); - - *lp = h; - *rp = r; - return (tp); -} - -/* - * BT_ROOT -- Split the root page of a btree. - * - * Parameters: - * t: tree - * h: root page - * lp: pointer to left page pointer - * rp: pointer to right page pointer - * skip: pointer to index to leave open - * ilen: insert length - * - * Returns: - * Pointer to page in which to insert or NULL on error. - */ -static PAGE * -bt_root(BTREE *t, PAGE *h, PAGE **lp, PAGE **rp, u_int *skip, size_t ilen) -{ - PAGE *l, *r, *tp; - pgno_t lnpg, rnpg; - -#ifdef STATISTICS - ++bt_split; - ++bt_rootsplit; -#endif - /* Put the new left and right pages for the split into place. */ - if ((l = __bt_new(t, &lnpg)) == NULL || - (r = __bt_new(t, &rnpg)) == NULL) - return (NULL); - l->pgno = lnpg; - r->pgno = rnpg; - l->nextpg = r->pgno; - r->prevpg = l->pgno; - l->prevpg = r->nextpg = P_INVALID; - l->lower = r->lower = BTDATAOFF; - l->upper = r->upper = t->bt_psize; - l->flags = r->flags = h->flags & P_TYPE; - - /* Split the root page. */ - tp = bt_psplit(t, h, l, r, skip, ilen); - - *lp = l; - *rp = r; - return (tp); -} - -/* - * BT_RROOT -- Fix up the recno root page after it has been split. - * - * Parameters: - * t: tree - * h: root page - * l: left page - * r: right page - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -static int -bt_rroot(BTREE *t, PAGE *h, PAGE *l, PAGE *r) -{ - char *dest; - - /* Insert the left and right keys, set the header information. */ - h->linp[0] = h->upper = t->bt_psize - NRINTERNAL; - dest = (char *)h + h->upper; - WR_RINTERNAL(dest, - l->flags & P_RLEAF ? NEXTINDEX(l) : rec_total(l), l->pgno); - - h->linp[1] = h->upper -= NRINTERNAL; - dest = (char *)h + h->upper; - WR_RINTERNAL(dest, - r->flags & P_RLEAF ? NEXTINDEX(r) : rec_total(r), r->pgno); - - h->lower = BTDATAOFF + 2 * sizeof(indx_t); - - /* Unpin the root page, set to recno internal page. */ - h->flags &= ~P_TYPE; - h->flags |= P_RINTERNAL; - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - - return (RET_SUCCESS); -} - -/* - * BT_BROOT -- Fix up the btree root page after it has been split. - * - * Parameters: - * t: tree - * h: root page - * l: left page - * r: right page - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -static int -bt_broot(BTREE *t, PAGE *h, PAGE *l, PAGE *r) -{ - BINTERNAL *bi; - BLEAF *bl; - size_t nbytes; - char *dest; - - /* - * If the root page was a leaf page, change it into an internal page. - * We copy the key we split on (but not the key's data, in the case of - * a leaf page) to the new root page. - * - * The btree comparison code guarantees that the left-most key on any - * level of the tree is never used, so it doesn't need to be filled in. - */ - nbytes = NBINTERNAL(0); - h->linp[0] = h->upper = t->bt_psize - nbytes; - dest = (char *)h + h->upper; - WR_BINTERNAL(dest, 0, l->pgno, 0); - - switch(h->flags & P_TYPE) { - case P_BLEAF: - bl = GETBLEAF(r, 0); - nbytes = NBINTERNAL(bl->ksize); - h->linp[1] = h->upper -= nbytes; - dest = (char *)h + h->upper; - WR_BINTERNAL(dest, bl->ksize, r->pgno, 0); - memmove(dest, bl->bytes, bl->ksize); - - /* - * If the key is on an overflow page, mark the overflow chain - * so it isn't deleted when the leaf copy of the key is deleted. - */ - if (bl->flags & P_BIGKEY && - bt_preserve(t, *(char *)bl->bytes) == RET_ERROR) - return (RET_ERROR); - break; - case P_BINTERNAL: - bi = GETBINTERNAL(r, 0); - nbytes = NBINTERNAL(bi->ksize); - h->linp[1] = h->upper -= nbytes; - dest = (char *)h + h->upper; - memmove(dest, bi, nbytes); - ((BINTERNAL *)dest)->pgno = r->pgno; - break; - default: - abort(); - } - - /* There are two keys on the page. */ - h->lower = BTDATAOFF + 2 * sizeof(indx_t); - - /* Unpin the root page, set to btree internal page. */ - h->flags &= ~P_TYPE; - h->flags |= P_BINTERNAL; - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - - return (RET_SUCCESS); -} - -/* - * BT_PSPLIT -- Do the real work of splitting the page. - * - * Parameters: - * t: tree - * h: page to be split - * l: page to put lower half of data - * r: page to put upper half of data - * pskip: pointer to index to leave open - * ilen: insert length - * - * Returns: - * Pointer to page in which to insert. - */ -static PAGE * -bt_psplit(BTREE *t, PAGE *h, PAGE *l, PAGE *r, u_int *pskip, size_t ilen) -{ - BINTERNAL *bi; - BLEAF *bl; - RLEAF *rl; - EPGNO *c; - PAGE *rval; - void *src = NULL; - indx_t full, half, nxt, off, skip, top, used; - size_t nbytes; - int bigkeycnt, isbigkey; - - /* - * Split the data to the left and right pages. Leave the skip index - * open. Additionally, make some effort not to split on an overflow - * key. This makes internal page processing faster and can save - * space as overflow keys used by internal pages are never deleted. - */ - bigkeycnt = 0; - skip = *pskip; - full = t->bt_psize - BTDATAOFF; - half = full / 2; - used = 0; - for (nxt = off = 0, top = NEXTINDEX(h); nxt < top; ++off) { - if (skip == off) { - nbytes = ilen; - isbigkey = 0; /* XXX: not really known. */ - } else - switch (h->flags & P_TYPE) { - case P_BINTERNAL: - src = bi = GETBINTERNAL(h, nxt); - nbytes = NBINTERNAL(bi->ksize); - isbigkey = bi->flags & P_BIGKEY; - break; - case P_BLEAF: - src = bl = GETBLEAF(h, nxt); - nbytes = NBLEAF(bl); - isbigkey = bl->flags & P_BIGKEY; - break; - case P_RINTERNAL: - src = GETRINTERNAL(h, nxt); - nbytes = NRINTERNAL; - isbigkey = 0; - break; - case P_RLEAF: - src = rl = GETRLEAF(h, nxt); - nbytes = NRLEAF(rl); - isbigkey = 0; - break; - default: - abort(); - } - - /* - * If the key/data pairs are substantial fractions of the max - * possible size for the page, it's possible to get situations - * where we decide to try and copy too much onto the left page. - * Make sure that doesn't happen. - */ - if (skip <= off && used + nbytes >= full) { - --off; - break; - } - - /* Copy the key/data pair, if not the skipped index. */ - if (skip != off) { - ++nxt; - - l->linp[off] = l->upper -= nbytes; - memmove((char *)l + l->upper, src, nbytes); - } - - used += nbytes; - if (used >= half) { - if (!isbigkey || bigkeycnt == 3) - break; - else - ++bigkeycnt; - } - } - - /* - * Off is the last offset that's valid for the left page. - * Nxt is the first offset to be placed on the right page. - */ - l->lower += (off + 1) * sizeof(indx_t); - - /* - * If splitting the page that the cursor was on, the cursor has to be - * adjusted to point to the same record as before the split. If the - * cursor is at or past the skipped slot, the cursor is incremented by - * one. If the cursor is on the right page, it is decremented by the - * number of records split to the left page. - * - * Don't bother checking for the B_SEQINIT flag, the page number will - * be P_INVALID. - */ - c = &t->bt_bcursor; - if (c->pgno == h->pgno) { - if (c->index >= skip) - ++c->index; - if (c->index < nxt) /* Left page. */ - c->pgno = l->pgno; - else { /* Right page. */ - c->pgno = r->pgno; - c->index -= nxt; - } - } - - /* - * If the skipped index was on the left page, just return that page. - * Otherwise, adjust the skip index to reflect the new position on - * the right page. - */ - if (skip <= off) { - skip = 0; - rval = l; - } else { - rval = r; - *pskip -= nxt; - } - - for (off = 0; nxt < top; ++off) { - if (skip == nxt) { - ++off; - skip = 0; - } - switch (h->flags & P_TYPE) { - case P_BINTERNAL: - src = bi = GETBINTERNAL(h, nxt); - nbytes = NBINTERNAL(bi->ksize); - break; - case P_BLEAF: - src = bl = GETBLEAF(h, nxt); - nbytes = NBLEAF(bl); - break; - case P_RINTERNAL: - src = GETRINTERNAL(h, nxt); - nbytes = NRINTERNAL; - break; - case P_RLEAF: - src = rl = GETRLEAF(h, nxt); - nbytes = NRLEAF(rl); - break; - default: - abort(); - } - ++nxt; - r->linp[off] = r->upper -= nbytes; - memmove((char *)r + r->upper, src, nbytes); - } - r->lower += off * sizeof(indx_t); - - /* If the key is being appended to the page, adjust the index. */ - if (skip == top) - r->lower += sizeof(indx_t); - - return (rval); -} - -/* - * BT_PRESERVE -- Mark a chain of pages as used by an internal node. - * - * Chains of indirect blocks pointed to by leaf nodes get reclaimed when the - * record that references them gets deleted. Chains pointed to by internal - * pages never get deleted. This routine marks a chain as pointed to by an - * internal page. - * - * Parameters: - * t: tree - * pg: page number of first page in the chain. - * - * Returns: - * RET_SUCCESS, RET_ERROR. - */ -static int -bt_preserve(BTREE *t, pgno_t pg) -{ - PAGE *h; - - if ((h = mpool_get(t->bt_mp, pg, 0)) == NULL) - return (RET_ERROR); - h->flags |= P_PRESERVE; - mpool_put(t->bt_mp, h, MPOOL_DIRTY); - return (RET_SUCCESS); -} - -/* - * REC_TOTAL -- Return the number of recno entries below a page. - * - * Parameters: - * h: page - * - * Returns: - * The number of recno entries below a page. - * - * XXX - * These values could be set by the bt_psplit routine. The problem is that the - * entry has to be popped off of the stack etc. or the values have to be passed - * all the way back to bt_split/bt_rroot and it's not very clean. - */ -static recno_t -rec_total(PAGE *h) -{ - recno_t recs; - indx_t nxt, top; - - for (recs = 0, nxt = 0, top = NEXTINDEX(h); nxt < top; ++nxt) - recs += GETRINTERNAL(h, nxt)->nrecs; - return (recs); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_stack.c b/cde/lib/DtMmdb/btree_berkeley/bt_stack.c deleted file mode 100644 index 27c10452c..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_stack.c +++ /dev/null @@ -1,112 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_stack.c /main/3 1996/06/11 17:13:15 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_stack.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -/* - * When a page splits, a new record has to be inserted into its parent page. - * This page may have to split as well, all the way up to the root. Since - * parent pointers in each page would be expensive, we maintain a stack of - * parent pages as we descend the tree. - * - * XXX - * This is a concurrency problem -- if user a builds a stack, then user b - * splits the tree, then user a tries to split the tree, there's a new level - * in the tree that user a doesn't know about. - */ - -/* - * __BT_PUSH -- Push parent page info onto the stack (LIFO). - * - * Parameters: - * t: tree - * pgno: page - * index: page index - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -__bt_push(BTREE *t, pgno_t pgno, int index) -{ - if (t->bt_sp == t->bt_maxstack) { - t->bt_maxstack += 50; - if ((t->bt_stack = __fix_realloc(t->bt_stack, - t->bt_maxstack * sizeof(EPGNO))) == NULL) { - t->bt_maxstack -= 50; - return (RET_ERROR); - } - } - - t->bt_stack[t->bt_sp].pgno = pgno; - t->bt_stack[t->bt_sp].index = index; - ++t->bt_sp; - return (RET_SUCCESS); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/bt_utils.c b/cde/lib/DtMmdb/btree_berkeley/bt_utils.c deleted file mode 100644 index 3e6f499eb..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/bt_utils.c +++ /dev/null @@ -1,255 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: bt_utils.c /main/3 1996/06/11 17:13:20 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bt_utils.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include - -#include -#include "btree.h" - -/* - * __BT_RET -- Build return key/data pair as a result of search or scan. - * - * Parameters: - * t: tree - * d: LEAF to be returned to the user. - * key: user's key structure (NULL if not to be filled in) - * data: user's data structure - * - * Returns: - * RET_SUCCESS, RET_ERROR. - */ -int -__bt_ret(BTREE *t, EPG *e, DBT *key, DBT *data) -{ - BLEAF *bl; - void *p; - - bl = GETBLEAF(e->page, e->index); - - /* - * We always copy big keys/data to make them contigous. Otherwise, - * we leave the page pinned and don't copy unless the user specified - * concurrent access. - */ - if (bl->flags & P_BIGDATA) { - if (__ovfl_get(t, bl->bytes + bl->ksize, - &data->size, &t->bt_dbuf, &t->bt_dbufsz)) - return (RET_ERROR); - data->data = t->bt_dbuf; - } else if (ISSET(t, B_DB_LOCK)) { - /* Use +1 in case the first record retrieved is 0 length. */ - if (bl->dsize + 1 > t->bt_dbufsz) { - if ((p = __fix_realloc(t->bt_dbuf, bl->dsize + 1)) == NULL) - return (RET_ERROR); - t->bt_dbuf = p; - t->bt_dbufsz = bl->dsize + 1; - } - memmove(t->bt_dbuf, bl->bytes + bl->ksize, bl->dsize); - data->size = bl->dsize; - data->data = t->bt_dbuf; - } else { - data->size = bl->dsize; - data->data = bl->bytes + bl->ksize; - } - - if (key == NULL) - return (RET_SUCCESS); - - if (bl->flags & P_BIGKEY) { - if (__ovfl_get(t, bl->bytes, - &key->size, &t->bt_kbuf, &t->bt_kbufsz)) - return (RET_ERROR); - key->data = t->bt_kbuf; - } else if (ISSET(t, B_DB_LOCK)) { - if (bl->ksize > t->bt_kbufsz) { - if ((p = __fix_realloc(t->bt_kbuf, bl->ksize)) == NULL) - return (RET_ERROR); - t->bt_kbuf = p; - t->bt_kbufsz = bl->ksize; - } - memmove(t->bt_kbuf, bl->bytes, bl->ksize); - key->size = bl->ksize; - key->data = t->bt_kbuf; - } else { - key->size = bl->ksize; - key->data = bl->bytes; - } - return (RET_SUCCESS); -} - -/* - * __BT_CMP -- Compare a key to a given record. - * - * Parameters: - * t: tree - * k1: DBT pointer of first arg to comparison - * e: pointer to EPG for comparison - * - * Returns: - * < 0 if k1 is < record - * = 0 if k1 is = record - * > 0 if k1 is > record - */ -int -__bt_cmp(BTREE *t, const DBT *k1, EPG *e) -{ - BINTERNAL *bi; - BLEAF *bl; - DBT k2; - PAGE *h; - void *bigkey; - - /* - * The left-most key on internal pages, at any level of the tree, is - * guaranteed by the following code to be less than any user key. - * This saves us from having to update the leftmost key on an internal - * page when the user inserts a new key in the tree smaller than - * anything we've yet seen. - */ - h = e->page; - if (e->index == 0 && h->prevpg == P_INVALID && !(h->flags & P_BLEAF)) - return (1); - - bigkey = NULL; - if (h->flags & P_BLEAF) { - bl = GETBLEAF(h, e->index); - if (bl->flags & P_BIGKEY) - bigkey = bl->bytes; - else { - k2.data = bl->bytes; - k2.size = bl->ksize; - } - } else { - bi = GETBINTERNAL(h, e->index); - if (bi->flags & P_BIGKEY) - bigkey = bi->bytes; - else { - k2.data = bi->bytes; - k2.size = bi->ksize; - } - } - - if (bigkey) { - if (__ovfl_get(t, bigkey, - &k2.size, &t->bt_dbuf, &t->bt_dbufsz)) - return (RET_ERROR); - k2.data = t->bt_dbuf; - } - return ((*t->bt_cmp)(k1, &k2)); -} - -/* - * __BT_DEFCMP -- Default comparison routine. - * - * Parameters: - * a: DBT #1 - * b: DBT #2 - * - * Returns: - * < 0 if a is < b - * = 0 if a is = b - * > 0 if a is > b - */ -int -__bt_defcmp(const DBT *a, const DBT *b) -{ - u_char *p1, *p2; - int diff, len; - - len = MIN(a->size, b->size); - for (p1 = a->data, p2 = b->data; len--; ++p1, ++p2) - if ((diff = *p1 - *p2)) - return (diff); - return (a->size - b->size); -} - -/* - * __BT_DEFPFX -- Default prefix routine. - * - * Parameters: - * a: DBT #1 - * b: DBT #2 - * - * Returns: - * Number of bytes needed to distinguish b from a. - */ -int -__bt_defpfx(const DBT *a, const DBT *b) -{ - u_char *p1, *p2; - int len; - int cnt; - - cnt = 1; - len = MIN(a->size, b->size); - for (p1 = a->data, p2 = b->data; len--; ++p1, ++p2, ++cnt) - if (*p1 != *p2) - return (cnt); - - /* a->size must be <= b->size, or they wouldn't be in this order. */ - return (a->size < b->size ? a->size + 1 : a->size); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/btree.h b/cde/lib/DtMmdb/btree_berkeley/btree.h deleted file mode 100644 index b353017dc..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/btree.h +++ /dev/null @@ -1,374 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: btree.h /main/5 1996/07/18 16:31:58 drk $ */ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Mike Olson. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)btree.h 8.2 (Berkeley) 9/7/93 - */ - -#include - -#define DEFMINKEYPAGE (2) /* Minimum keys per page */ -#define MINCACHE (5) /* Minimum cached pages */ -#define MINPSIZE (512) /* Minimum page size */ - -/* - * Page 0 of a btree file contains a copy of the meta-data. This page is also - * used as an out-of-band page, i.e. page pointers that point to nowhere point - * to page 0. Page 1 is the root of the btree. - */ -#define P_INVALID 0 /* Invalid tree page number. */ -#define P_META 0 /* Tree metadata page number. */ -#define P_ROOT 1 /* Tree root page number. */ - -/* - * There are five page layouts in the btree: btree internal pages (BINTERNAL), - * btree leaf pages (BLEAF), recno internal pages (RINTERNAL), recno leaf pages - * (RLEAF) and overflow pages. All five page types have a page header (PAGE). - * This implementation requires that longs within structures are NOT padded. - * (ANSI C permits random padding.) If your compiler pads randomly you'll have - * to do some work to get this package to run. - */ -typedef struct _page { - pgno_t pgno; /* this page's page number */ - pgno_t prevpg; /* left sibling */ - pgno_t nextpg; /* right sibling */ - -#define P_BINTERNAL 0x01 /* btree internal page */ -#define P_BLEAF 0x02 /* leaf page */ -#define P_OVERFLOW 0x04 /* overflow page */ -#define P_RINTERNAL 0x08 /* recno internal page */ -#define P_RLEAF 0x10 /* leaf page */ -#define P_TYPE 0x1f /* type mask */ - -#define P_PRESERVE 0x20 /* never delete this chain of pages */ - u_long flags; - - indx_t lower; /* lower bound of free space on page */ - indx_t upper; /* upper bound of free space on page */ - indx_t linp[1]; /* long-aligned VARIABLE LENGTH DATA */ -} PAGE; - -/* First and next index. */ -#define BTDATAOFF (sizeof(pgno_t) + sizeof(pgno_t) + sizeof(pgno_t) + \ - sizeof(u_long) + sizeof(indx_t) + sizeof(indx_t)) -#define NEXTINDEX(p) (((p)->lower - BTDATAOFF) / sizeof(indx_t)) - -/* - * For pages other than overflow pages, there is an array of offsets into the - * rest of the page immediately following the page header. Each offset is to - * an item which is unique to the type of page. The h_lower offset is just - * past the last filled-in index. The h_upper offset is the first item on the - * page. Offsets are from the beginning of the page. - * - * If an item is too big to store on a single page, a flag is set and the item - * is a { page, size } pair such that the page is the first page of an overflow - * chain with size bytes of item. Overflow pages are simply bytes without any - * external structure. - * - * The size and page number fields in the items are long aligned so they can be - * manipulated without copying. - */ -#define LALIGN(n) (((n) + sizeof(u_long) - 1) & ~(sizeof(u_long) - 1)) -#define NOVFLSIZE (sizeof(pgno_t) + sizeof(size_t)) - -/* - * For the btree internal pages, the item is a key. BINTERNALs are {key, pgno} - * pairs, such that the key compares less than or equal to all of the records - * on that page. For a tree without duplicate keys, an internal page with two - * consecutive keys, a and b, will have all records greater than or equal to a - * and less than b stored on the page associated with a. Duplicate keys are - * somewhat special and can cause duplicate internal and leaf page records and - * some minor modifications of the above rule. - */ -typedef struct _binternal { - size_t ksize; /* key size */ - pgno_t pgno; /* page number stored on */ -#define P_BIGDATA 0x01 /* overflow data */ -#define P_BIGKEY 0x02 /* overflow key */ - u_char flags; - char bytes[1]; /* data */ -} BINTERNAL; - -/* Get the page's BINTERNAL structure at index indx. */ -#define GETBINTERNAL(pg, indx) \ - ((BINTERNAL *)((char *)(pg) + (pg)->linp[indx])) - -/* Get the number of bytes in the entry. */ -#define NBINTERNAL(len) \ - LALIGN(sizeof(size_t) + sizeof(pgno_t) + sizeof(u_char) + (len)) - -/* Copy a BINTERNAL entry to the page. */ -#define WR_BINTERNAL(p, size, pgno, flags) { \ - *(size_t *)p = size; \ - p += sizeof(size_t); \ - *(pgno_t *)p = pgno; \ - p += sizeof(pgno_t); \ - *(u_char *)p = flags; \ - p += sizeof(u_char); \ -} - -/* - * For the recno internal pages, the item is a page number with the number of - * keys found on that page and below. - */ -typedef struct _rinternal { - recno_t nrecs; /* number of records */ - pgno_t pgno; /* page number stored below */ -} RINTERNAL; - -/* Get the page's RINTERNAL structure at index indx. */ -#define GETRINTERNAL(pg, indx) \ - ((RINTERNAL *)((char *)(pg) + (pg)->linp[indx])) - -/* Get the number of bytes in the entry. */ -#define NRINTERNAL \ - LALIGN(sizeof(recno_t) + sizeof(pgno_t)) - -/* Copy a RINTERAL entry to the page. */ -#define WR_RINTERNAL(p, nrecs, pgno) { \ - *(recno_t *)p = nrecs; \ - p += sizeof(recno_t); \ - *(pgno_t *)p = pgno; \ -} - -/* For the btree leaf pages, the item is a key and data pair. */ -typedef struct _bleaf { - size_t ksize; /* size of key */ - size_t dsize; /* size of data */ - u_char flags; /* P_BIGDATA, P_BIGKEY */ - char bytes[1]; /* data */ -} BLEAF; - -/* Get the page's BLEAF structure at index indx. */ -#define GETBLEAF(pg, indx) \ - ((BLEAF *)((char *)(pg) + (pg)->linp[indx])) - -/* Get the number of bytes in the entry. */ -#define NBLEAF(p) NBLEAFDBT((p)->ksize, (p)->dsize) - -/* Get the number of bytes in the user's key/data pair. */ -#define NBLEAFDBT(ksize, dsize) \ - LALIGN(sizeof(size_t) + sizeof(size_t) + sizeof(u_char) + \ - (ksize) + (dsize)) - -/* Copy a BLEAF entry to the page. */ -#define WR_BLEAF(p, key, data, flags) { \ - *(size_t *)p = key->size; \ - p += sizeof(size_t); \ - *(size_t *)p = data->size; \ - p += sizeof(size_t); \ - *(u_char *)p = flags; \ - p += sizeof(u_char); \ - memmove(p, key->data, key->size); \ - p += key->size; \ - memmove(p, data->data, data->size); \ -} - -/* For the recno leaf pages, the item is a data entry. */ -typedef struct _rleaf { - size_t dsize; /* size of data */ - u_char flags; /* P_BIGDATA */ - char bytes[1]; -} RLEAF; - -/* Get the page's RLEAF structure at index indx. */ -#define GETRLEAF(pg, indx) \ - ((RLEAF *)((char *)(pg) + (pg)->linp[indx])) - -/* Get the number of bytes in the entry. */ -#define NRLEAF(p) NRLEAFDBT((p)->dsize) - -/* Get the number of bytes from the user's data. */ -#define NRLEAFDBT(dsize) \ - LALIGN(sizeof(size_t) + sizeof(u_char) + (dsize)) - -/* Copy a RLEAF entry to the page. */ -#define WR_RLEAF(p, data, flags) { \ - *(size_t *)p = data->size; \ - p += sizeof(size_t); \ - *(u_char *)p = flags; \ - p += sizeof(u_char); \ - memmove(p, data->data, data->size); \ -} - -/* - * A record in the tree is either a pointer to a page and an index in the page - * or a page number and an index. These structures are used as a cursor, stack - * entry and search returns as well as to pass records to other routines. - * - * One comment about searches. Internal page searches must find the largest - * record less than key in the tree so that descents work. Leaf page searches - * must find the smallest record greater than key so that the returned index - * is the record's correct position for insertion. - * - * One comment about cursors. The cursor key is never removed from the tree, - * even if deleted. This is because it is quite difficult to decide where the - * cursor should be when other keys have been inserted/deleted in the tree; - * duplicate keys make it impossible. This scheme does require extra work - * though, to make sure that we don't perform an operation on a deleted key. - */ -typedef struct _epgno { - pgno_t pgno; /* the page number */ - indx_t index; /* the index on the page */ -} EPGNO; - -typedef struct _epg { - PAGE *page; /* the (pinned) page */ - indx_t index; /* the index on the page */ -} EPG; - -/* - * The metadata of the tree. The m_nrecs field is used only by the RECNO code. - * This is because the btree doesn't really need it and it requires that every - * put or delete call modify the metadata. - */ -typedef struct _btmeta { - u_long m_magic; /* magic number */ - u_long m_version; /* version */ - u_long m_psize; /* page size */ - u_long m_free; /* page number of first free page */ - u_long m_nrecs; /* R: number of records */ -#define SAVEMETA (B_NODUPS | R_RECNO) - u_long m_flags; /* bt_flags & SAVEMETA */ - u_long m_unused; /* unused */ -} BTMETA; - -/* The in-memory btree/recno data structure. */ -typedef struct _btree { - MPOOL *bt_mp; /* memory pool cookie */ - - DB *bt_dbp; /* pointer to enclosing DB */ - - PAGE *bt_pinned; /* page pinned across calls */ - - EPGNO bt_bcursor; /* B: btree cursor */ - recno_t bt_rcursor; /* R: recno cursor (1-based) */ - -#define BT_POP(t) (t->bt_sp ? t->bt_stack + --t->bt_sp : NULL) -#define BT_CLR(t) (t->bt_sp = 0) - EPGNO *bt_stack; /* stack of parent pages */ - u_int bt_sp; /* current stack pointer */ - u_int bt_maxstack; /* largest stack */ - - char *bt_kbuf; /* key buffer */ - size_t bt_kbufsz; /* key buffer size */ - char *bt_dbuf; /* data buffer */ - size_t bt_dbufsz; /* data buffer size */ - - int bt_fd; /* tree file descriptor */ - - pgno_t bt_free; /* next free page */ - u_long bt_psize; /* page size */ - indx_t bt_ovflsize; /* cut-off for key/data overflow */ - int bt_lorder; /* byte order */ - /* sorted order */ - enum { NOT, BACK, FORWARD } bt_order; - EPGNO bt_last; /* last insert */ - - /* B: key comparison function */ - int (*bt_cmp) __P((const DBT *, const DBT *)); - /* B: prefix comparison function */ - int (*bt_pfx) __P((const DBT *, const DBT *)); - /* R: recno input function */ - int (*bt_irec) __P((struct _btree *, recno_t)); - - FILE *bt_rfp; /* R: record FILE pointer */ - int bt_rfd; /* R: record file descriptor */ - - caddr_t bt_cmap; /* R: current point in mapped space */ - caddr_t bt_smap; /* R: start of mapped space */ - caddr_t bt_emap; /* R: end of mapped space */ - size_t bt_msize; /* R: size of mapped region. */ - - recno_t bt_nrecs; /* R: number of records */ - size_t bt_reclen; /* R: fixed record length */ - u_char bt_bval; /* R: delimiting byte/pad character */ - -/* - * NB: - * B_NODUPS and R_RECNO are stored on disk, and may not be changed. - */ -#define B_DELCRSR 0x00001 /* cursor has been deleted */ -#define B_INMEM 0x00002 /* in-memory tree */ -#define B_METADIRTY 0x00004 /* need to write metadata */ -#define B_MODIFIED 0x00008 /* tree modified */ -#define B_NEEDSWAP 0x00010 /* if byte order requires swapping */ -#define B_NODUPS 0x00020 /* no duplicate keys permitted */ -#define B_RDONLY 0x00040 /* read-only tree */ -#define R_RECNO 0x00080 /* record oriented tree */ -#define B_SEQINIT 0x00100 /* sequential scan initialized */ - -#define R_CLOSEFP 0x00200 /* opened a file pointer */ -#define R_EOF 0x00400 /* end of input file reached. */ -#define R_FIXLEN 0x00800 /* fixed length records */ -#define R_MEMMAPPED 0x01000 /* memory mapped file. */ -#define R_INMEM 0x02000 /* in-memory file */ -#define R_MODIFIED 0x04000 /* modified file */ -#define R_RDONLY 0x08000 /* read-only file */ - -#define B_DB_LOCK 0x10000 /* DB_LOCK specified. */ -#define B_DB_SHMEM 0x20000 /* DB_SHMEM specified. */ -#define B_DB_TXN 0x40000 /* DB_TXN specified. */ - - u_long bt_flags; /* btree state */ -} BTREE; - -#define SET(t, f) ((t)->bt_flags |= (f)) -#define CLR(t, f) ((t)->bt_flags &= ~(f)) -#define ISSET(t, f) ((t)->bt_flags & (f)) - -#include "extern.h" diff --git a/cde/lib/DtMmdb/btree_berkeley/cdefs.h b/cde/lib/DtMmdb/btree_berkeley/cdefs.h deleted file mode 100644 index 76660a964..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/cdefs.h +++ /dev/null @@ -1,134 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: cdefs.h /main/4 1996/06/11 17:13:31 cde-hal $ */ -/* - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)cdefs.h 8.1 (Berkeley) 6/2/93 - */ - -#ifndef _CDEFS_H_ -#define _CDEFS_H_ - -#if defined(__cplusplus) -#ifndef __BEGIN_DECLS -#define __BEGIN_DECLS extern "C" { -#endif -#ifndef __END_DECLS -#define __END_DECLS }; -#endif -#else -#undef __BEGIN_DECLS -#define __BEGIN_DECLS -#undef __END_DECLS -#define __END_DECLS -#endif - -/* - * The __CONCAT macro is used to concatenate parts of symbol names, e.g. - * with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo. - * The __CONCAT macro is a bit tricky -- make sure you don't put spaces - * in between its arguments. __CONCAT can also concatenate double-quoted - * strings produced by the __STRING macro, but this only works with ANSI C. - */ -#if defined(__STDC__) || defined(__cplusplus) -#ifdef __P -#undef __P -#endif -#define __P(protos) protos /* full-blown ANSI C */ -#ifndef __CONCAT -#define __CONCAT(x,y) x ## y -#endif -#define __STRING(x) #x - -#else /* !(__STDC__ || __cplusplus) */ -#ifdef __P -#undef __P -#endif -#define __P(protos) () /* traditional C preprocessor */ -#define __CONCAT(x,y) x/**/y -#define __STRING(x) "x" - -#ifdef __GNUC__ -#define const __const /* GCC: ANSI C with -traditional */ -#define inline __inline -#define signed __signed -#define volatile __volatile - -#else /* !__GNUC__ */ -#define const /* delete ANSI C keywords */ -#define inline -#define signed -#define volatile -#endif /* !__GNUC__ */ -#endif /* !(__STDC__ || __cplusplus) */ - -/* - * GCC has extensions for declaring functions as `pure' (always returns - * the same value given the same inputs, i.e., has no external state and - * no side effects) and `dead' (nonreturning). These mainly affect - * optimization and warnings. Unfortunately, GCC complains if these are - * used under strict ANSI mode (`gcc -ansi -pedantic'), hence we need to - * define them only if compiling without this. - */ -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) -#undef __dead -#define __dead __volatile -#ifndef __pure -#define __pure __const -#endif -#else -#define __dead -#define __pure -#endif - -#endif /* !_CDEFS_H_ */ diff --git a/cde/lib/DtMmdb/btree_berkeley/compat.h b/cde/lib/DtMmdb/btree_berkeley/compat.h deleted file mode 100644 index 48de36163..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/compat.h +++ /dev/null @@ -1,262 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: compat.h /main/8 1996/07/18 16:32:14 drk $ */ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)compat.h 8.3 (Berkeley) 9/6/93 - */ - -#ifndef _COMPAT_H_ -#define _COMPAT_H_ - -#include -#include "utility/config.h" - -/* - * If your system doesn't typedef u_long, u_short, or u_char, change - * the 0 to a 1. - */ -#if 0 -typedef unsigned long u_long; -typedef unsigned short u_short; -typedef unsigned char u_char; -#endif - -/* If your system doesn't typedef size_t, change the 0 to a 1. */ -#if 0 -typedef unsigned int size_t; -#endif - -/* - * If your system doesn't have the POSIX type for a signal mask, - * change the 0 to a 1. - */ -#if 0 -typedef unsigned int sigset_t; -#endif - -/* - * If your system's vsnprintf returns a char *, not an int, - * change the 0 to a 1. - */ -#if !defined(_AIX) && !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#define VSPRINTF_CHARSTAR -#endif - -/* - * If you don't have POSIX 1003.1 signals, the signal code surrounding the - * temporary file creation is intended to block all of the possible signals - * long enough to create the file and unlink it. All of this stuff is - * intended to use old-style BSD calls to fake POSIX 1003.1 calls. - */ -#ifdef NO_POSIX_SIGNALS -#define sigemptyset(set) (*(set) = 0) -#define sigfillset(set) (*(set) = ~(sigset_t)0, 0) -#define sigaddset(set,signo) (*(set) |= sigmask(signo), 0) -#define sigdelset(set,signo) (*(set) &= ~sigmask(signo), 0) -#define sigismember(set,signo) ((*(set) & sigmask(signo)) != 0) - -#define SIG_BLOCK 1 -#define SIG_UNBLOCK 2 -#define SIG_SETMASK 3 - -static int __sigtemp; /* For the use of sigprocmask */ - -/* Repeated test of oset != NULL is to avoid "*0". */ -#define sigprocmask(how, set, oset) \ - ((__sigtemp = \ - (((how) == SIG_BLOCK) ? \ - sigblock(0) | *(set) : \ - (((how) == SIG_UNBLOCK) ? \ - sigblock(0) & ~(*(set)) : \ - ((how) == SIG_SETMASK ? \ - *(set) : sigblock(0))))), \ - ((oset) ? (*(oset ? oset : set) = sigsetmask(__sigtemp)) : \ - sigsetmask(__sigtemp)), 0) -#endif - -/* - * If realloc(3) of a NULL pointer on your system isn't the same as - * a malloc(3) call, change the 0 to a 1, and add realloc.o to the - * MISC line in your Makefile. - */ -/* -#if 1 -#define realloc __fix_realloc -#endif -*/ -void * __fix_realloc __P((void*, size_t)); - - -/* - * If your system doesn't have an include file with the appropriate - * byte order set, make sure you specify the correct one. - */ -#ifndef BYTE_ORDER - -#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax */ -#define BIG_ENDIAN 4321 /* MSB first: 68000, ibm, net */ - -#ifdef MMDB_LITTLE_ENDIAN -#define BYTE_ORDER LITTLE_ENDIAN /* Set for your system. */ -#endif - -#ifdef MMDB_BIG_ENDIAN -#define BYTE_ORDER BIG_ENDIAN /* Set for your system. */ -#endif - - -#endif - -#if defined(SYSV) || defined(SYSTEM5) || defined(SVR4) -/* #define index(a, b) strchr(a, b) */ -#ifndef rindex -#define rindex(a, b) strrchr(a, b) -#endif -#define bzero(a, b) memset(a, 0, b) -#define bcmp(a, b, n) memcmp(a, b, n) -#define bcopy(a, b, n) memmove(b, a, n) -#endif - -#if defined(BSD) || defined(BSD4_3) -#define strchr(a, b) index(a, b) -#define strrchr(a, b) rindex(a, b) -#define memcmp(a, b, n) bcmp(a, b, n) -#define memmove(a, b, n) bcopy(b, a, n) -#endif - -/* - * 32-bit machine. The db routines are theoretically independent of - * the size of u_shorts and u_longs, but I don't know that anyone has - * ever actually tried it. At a minimum, change the following #define's - * if you are trying to compile on a different type of system. - */ -#ifndef USHRT_MAX -#define USHRT_MAX 0xFFFF -#define ULONG_MAX 0xFFFFFFFF -#endif - -/* POSIX 1003.1 access mode mask. */ -#ifndef O_ACCMODE -#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR) -#endif - -/* POSIX 1003.2 RE limit. */ -#ifndef _POSIX2_RE_DUP_MAX -#define _POSIX2_RE_DUP_MAX 255 -#endif - -/* - * If you can't provide lock values in the open(2) call. Note, this - * allows races to happen. - */ -#ifndef O_EXLOCK -#define O_EXLOCK 0 -#endif - -#ifndef O_SHLOCK -#define O_SHLOCK 0 -#endif - -#ifndef EFTYPE -#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */ -#endif - -#ifndef WCOREDUMP /* 4.4BSD extension */ -#define WCOREDUMP(a) 0 -#endif - -#ifndef STDERR_FILENO -#define STDIN_FILENO 0 /* ANSI C #defines */ -#define STDOUT_FILENO 1 -#define STDERR_FILENO 2 -#endif - -#ifndef SEEK_END -#define SEEK_SET 0 /* POSIX 1003.1 seek values */ -#define SEEK_CUR 1 -#define SEEK_END 2 -#endif - -#ifndef S_ISLNK /* BSD POSIX 1003.1 extensions */ -#define S_ISLNK(m) ((m & 0170000) == 0120000) -#define S_ISSOCK(m) ((m & 0170000) == 0140000) -#endif - -#ifndef TCSASOFT -#define TCSASOFT 0 -#endif - -#ifndef _POSIX2_RE_DUP_MAX -#define _POSIX2_RE_DUP_MAX 255 -#endif - -#ifndef NULL /* ANSI C #defines NULL everywhere. */ -#define NULL 0 -#endif - -#undef MAX -#define MAX(a,b) ((a)<(b)?(b):(a)) - -#undef MIN -#define MIN(a,b) ((a)<(b)?(a):(b)) - -#ifndef DEFFILEMODE /* Default file permissions. */ -#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) -#endif - -#ifndef _BSD_VA_LIST_ -#define _BSD_VA_LIST_ char * -#endif - -#endif /* !_COMPAT_H_ */ diff --git a/cde/lib/DtMmdb/btree_berkeley/db.c b/cde/lib/DtMmdb/btree_berkeley/db.c deleted file mode 100644 index a735506c5..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/db.c +++ /dev/null @@ -1,122 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: db.c /main/3 1996/06/11 17:13:41 cde-hal $ */ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)db.c 8.2 (Berkeley) 9/7/93"; -#endif /* LIBC_SCCS and not lint */ - -#include - -#include -#include -#include -#include - -#define __DBINTERFACE_PRIVATE -#include - -DB * -dbopen(const char *fname, int flags, int mode, DBTYPE type, const void *openinfo) -{ - -#define DB_FLAGS (DB_LOCK | DB_SHMEM | DB_TXN) -#define USE_OPEN_FLAGS \ - (O_CREAT | O_EXCL | O_EXLOCK | O_RDONLY | O_RDWR | \ - O_SHLOCK | O_TRUNC) - - if ((flags & ~(USE_OPEN_FLAGS | DB_FLAGS)) == 0) - switch (type) { - case DB_BTREE: - return (__bt_open(fname, flags & USE_OPEN_FLAGS, - mode, openinfo, flags & DB_FLAGS)); -/* - case DB_HASH: - return (__hash_open(fname, flags & USE_OPEN_FLAGS, - mode, openinfo, flags & DB_FLAGS)); - case DB_RECNO: - return (__rec_open(fname, flags & USE_OPEN_FLAGS, - mode, openinfo, flags & DB_FLAGS)); -*/ - default: - break; - } - errno = EINVAL; - return (NULL); -} - -static int -__dberr(void) -{ - return (RET_ERROR); -} - -/* - * __DBPANIC -- Stop. - * - * Parameters: - * dbp: pointer to the DB structure. - */ -void -__dbpanic(DB *dbp) -{ - /* The only thing that can succeed is a close. */ - dbp->del = (int (*)())__dberr; - dbp->fd = (int (*)())__dberr; - dbp->get = (int (*)())__dberr; - dbp->put = (int (*)())__dberr; - dbp->seq = (int (*)())__dberr; - dbp->sync = (int (*)())__dberr; -} diff --git a/cde/lib/DtMmdb/btree_berkeley/db.h b/cde/lib/DtMmdb/btree_berkeley/db.h deleted file mode 100644 index d1bc23654..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/db.h +++ /dev/null @@ -1,249 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: db.h /main/3 1996/06/11 17:13:46 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)db.h 8.2 (Berkeley) 9/7/93 - */ - -#ifndef _DB_H_ -#define _DB_H_ - -#include -#include "cdefs.h" - -#include -#include "compat.h" - -#define RET_ERROR -1 /* Return values. */ -#define RET_SUCCESS 0 -#define RET_SPECIAL 1 - -#define MAX_PAGE_NUMBER ULONG_MAX /* >= # of pages in a file */ -typedef u_long pgno_t; -#define MAX_PAGE_OFFSET USHRT_MAX /* >= # of bytes in a page */ -typedef u_short indx_t; -#define MAX_REC_NUMBER ULONG_MAX /* >= # of records in a tree */ -typedef u_long recno_t; - -/* Key/data structure -- a Data-Base Thang. */ -typedef struct { - void *data; /* data */ - size_t size; /* data length */ -} DBT; - -/* Routine flags. */ -#define R_CURSOR 1 /* del, put, seq */ -#define __R_UNUSED 2 /* UNUSED */ -#define R_FIRST 3 /* seq */ -#define R_IAFTER 4 /* put (RECNO) */ -#define R_IBEFORE 5 /* put (RECNO) */ -#define R_LAST 6 /* seq (BTREE, RECNO) */ -#define R_NEXT 7 /* seq */ -#define R_NOOVERWRITE 8 /* put */ -#define R_PREV 9 /* seq (BTREE, RECNO) */ -#define R_SETCURSOR 10 /* put (RECNO) */ -#define R_RECNOSYNC 11 /* sync (RECNO) */ - -typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE; - -/* - * !!! - * The following flags are included in the dbopen(3) call as part of the - * open(2) flags. In order to avoid conflicts with the open flags, start - * at the top of the 16 or 32-bit number space and work our way down. If - * the open flags were significantly expanded in the future, it could be - * a problem. Wish I'd left another flags word in the dbopen call. - * - * !!! - * None of this stuff is implemented yet. The only reason that it's here - * is so that the access methods can skip copying the key/data pair when - * the DB_LOCK flag isn't set. - */ - -/* -assume 32 bit UINT. -*/ - -/* -#if UINT_MAX > 65535 -*/ -#define DB_LOCK 0x20000000 /* Do locking. */ -#define DB_SHMEM 0x40000000 /* Use shared memory. */ -#define DB_TXN 0x80000000 /* Do transactions. */ - -/* -#else -#define DB_LOCK 0x00002000 -#define DB_SHMEM 0x00004000 -#define DB_TXN 0x00008000 -#endif -*/ - -/* Access method description structure. */ -typedef struct __db { - DBTYPE type; /* Underlying db type. */ - int (*close) __P((struct __db *)); - int (*del) __P((const struct __db *, const DBT *, u_int)); - int (*fd) __P((const struct __db *)); - int (*get) __P((const struct __db *, const DBT *, DBT *, u_int)); - int (*put) __P((const struct __db *, DBT *, const DBT *, u_int)); - int (*seq) __P((const struct __db *, DBT *, DBT *, u_int)); - int (*sync) __P((const struct __db *, u_int)); - void *internal; /* access method private */ -} DB; - -#define BTREEMAGIC 0x053162 -#define BTREEVERSION 3 - -/* Structure used to pass parameters to the btree routines. */ -typedef struct { -#define R_DUP 0x01 /* duplicate keys */ - u_long flags; - int cachesize; /* bytes to cache */ - int maxkeypage; /* maximum keys per page */ - int minkeypage; /* minimum keys per page */ - int psize; /* page size */ - /* comparison, prefix functions */ - int (*compare) __P((const DBT *, const DBT *)); - int (*prefix) __P((const DBT *, const DBT *)); - int lorder; /* byte order */ -} BTREEINFO; - -#define HASHMAGIC 0x061561 -#define HASHVERSION 2 - -/* Structure used to pass parameters to the hashing routines. */ -typedef struct { - int bsize; /* bucket size */ - int ffactor; /* fill factor */ - int nelem; /* number of elements */ - int cachesize; /* bytes to cache */ - /* hash function */ - int (*hash) __P((const void *, size_t)); - int lorder; /* byte order */ -} HASHINFO; - -/* Structure used to pass parameters to the record routines. */ -typedef struct { -#define R_FIXEDLEN 0x01 /* fixed-length records */ -#define R_NOKEY 0x02 /* key not required */ -#define R_SNAPSHOT 0x04 /* snapshot the input */ - u_long flags; - int cachesize; /* bytes to cache */ - int psize; /* page size */ - int lorder; /* byte order */ - size_t reclen; /* record length (fixed-length records) */ - u_char bval; /* delimiting byte (variable-length records */ - char *bfname; /* btree file name */ -} RECNOINFO; - -/* - * Little endian <==> big endian long swap macros. - * BLSWAP swap a memory location - * BLPSWAP swap a referenced memory location - * BLSWAP_COPY swap from one location to another - */ -#define BLSWAP(a) { \ - u_long _tmp = a; \ - ((char *)&a)[0] = ((char *)&_tmp)[3]; \ - ((char *)&a)[1] = ((char *)&_tmp)[2]; \ - ((char *)&a)[2] = ((char *)&_tmp)[1]; \ - ((char *)&a)[3] = ((char *)&_tmp)[0]; \ -} -#define BLPSWAP(a) { \ - u_long _tmp = *(u_long *)a; \ - ((char *)a)[0] = ((char *)&_tmp)[3]; \ - ((char *)a)[1] = ((char *)&_tmp)[2]; \ - ((char *)a)[2] = ((char *)&_tmp)[1]; \ - ((char *)a)[3] = ((char *)&_tmp)[0]; \ -} -#define BLSWAP_COPY(a, b) { \ - ((char *)&(b))[0] = ((char *)&(a))[3]; \ - ((char *)&(b))[1] = ((char *)&(a))[2]; \ - ((char *)&(b))[2] = ((char *)&(a))[1]; \ - ((char *)&(b))[3] = ((char *)&(a))[0]; \ -} - -/* - * Little endian <==> big endian short swap macros. - * BSSWAP swap a memory location - * BSPSWAP swap a referenced memory location - * BSSWAP_COPY swap from one location to another - */ -#define BSSWAP(a) { \ - u_short _tmp = a; \ - ((char *)&a)[0] = ((char *)&_tmp)[1]; \ - ((char *)&a)[1] = ((char *)&_tmp)[0]; \ -} -#define BSPSWAP(a) { \ - u_short _tmp = *(u_short *)a; \ - ((char *)a)[0] = ((char *)&_tmp)[1]; \ - ((char *)a)[1] = ((char *)&_tmp)[0]; \ -} -#define BSSWAP_COPY(a, b) { \ - ((char *)&(b))[0] = ((char *)&(a))[1]; \ - ((char *)&(b))[1] = ((char *)&(a))[0]; \ -} - -__BEGIN_DECLS -DB *dbopen __P((const char *, int, int, DBTYPE, const void *)); - -#ifdef __DBINTERFACE_PRIVATE -DB *__bt_open __P((const char *, int, int, const BTREEINFO *, int)); -DB *__hash_open __P((const char *, int, int, const HASHINFO *, int)); -DB *__rec_open __P((const char *, int, int, const RECNOINFO *, int)); -void __dbpanic __P((DB *dbp)); -#endif -__END_DECLS -#endif /* !_DB_H_ */ diff --git a/cde/lib/DtMmdb/btree_berkeley/extern.h b/cde/lib/DtMmdb/btree_berkeley/extern.h deleted file mode 100644 index 813562c26..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/extern.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: extern.h /main/3 1996/06/11 17:13:51 cde-hal $ */ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)extern.h 8.2 (Berkeley) 9/7/93 - */ - -int __bt_close __P((DB *)); -int __bt_cmp __P((BTREE *, const DBT *, EPG *)); -int __bt_crsrdel __P((BTREE *, EPGNO *)); -int __bt_defcmp __P((const DBT *, const DBT *)); -int __bt_defpfx __P((const DBT *, const DBT *)); -int __bt_delete __P((const DB *, const DBT *, u_int)); -int __bt_dleaf __P((BTREE *, PAGE *, int)); -int __bt_fd __P((const DB *)); -EPG *__bt_first __P((BTREE *, const DBT *, int *)); -int __bt_free __P((BTREE *, PAGE *)); -int __bt_get __P((const DB *, const DBT *, DBT *, u_int)); -PAGE *__bt_new __P((BTREE *, pgno_t *)); -void __bt_pgin __P((void *, pgno_t, void *)); -void __bt_pgout __P((void *, pgno_t, void *)); -int __bt_push __P((BTREE *, pgno_t, int)); -int __bt_put __P((const DB *dbp, DBT *, const DBT *, u_int)); -int __bt_ret __P((BTREE *, EPG *, DBT *, DBT *)); -EPG *__bt_search __P((BTREE *, const DBT *, int *)); -int __bt_seq __P((const DB *, DBT *, DBT *, u_int)); -int __bt_split __P((BTREE *, PAGE *, - const DBT *, const DBT *, u_long, size_t, u_int)); -int __bt_sync __P((const DB *, u_int)); - -int __ovfl_delete __P((BTREE *, void *)); -int __ovfl_get __P((BTREE *, void *, size_t *, char **, size_t *)); -int __ovfl_put __P((BTREE *, const DBT *, pgno_t *)); - -#ifdef DEBUG -void __bt_dnpage __P((DB *, pgno_t)); -void __bt_dpage __P((PAGE *)); -void __bt_dump __P((DB *)); -#endif -#ifdef STATISTICS -void __bt_stat __P((DB *)); -#endif diff --git a/cde/lib/DtMmdb/btree_berkeley/memmove.c b/cde/lib/DtMmdb/btree_berkeley/memmove.c deleted file mode 100644 index 3568a01d2..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/memmove.c +++ /dev/null @@ -1,162 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: memmove.c /main/3 1996/06/11 17:13:55 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Chris Torek. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)bcopy.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include "cdefs.h" -#include - -/* - * sizeof(word) MUST BE A POWER OF TWO - * SO THAT wmask BELOW IS ALL ONES - */ -typedef int word; /* "word" used for optimal copy speed */ - -#define wsize sizeof(word) -#define wmask (wsize - 1) - -/* - * Copy a block of memory, handling overlap. - * This is the routine that actually implements - * (the portable versions of) bcopy, memcpy, and memmove. - */ -#ifdef MEMCOPY -void * -memcpy(dst0, src0, length) -#else -#ifdef MEMMOVE -void * -memmove(dst0, src0, length) -#else -void -bcopy(src0, dst0, length) -#endif -#endif - void *dst0; - const void *src0; - size_t length; -{ - char *dst = dst0; - const char *src = src0; - size_t t; - - if (length == 0 || dst == src) /* nothing to do */ - goto done; - - /* - * Macros: loop-t-times; and loop-t-times, t>0 - */ -#define TLOOP(s) if (t) TLOOP1(s) -#define TLOOP1(s) do { s; } while (--t) - - if ((unsigned long)dst < (unsigned long)src) { - /* - * Copy forward. - */ - t = (size_t)src; /* only need low bits */ - if ((t | (size_t)dst) & wmask) { - /* - * Try to align operands. This cannot be done - * unless the low bits match. - */ - if ((t ^ (size_t)dst) & wmask || length < wsize) - t = length; - else - t = wsize - (t & wmask); - length -= t; - TLOOP1(*dst++ = *src++); - } - /* - * Copy whole words, then mop up any trailing bytes. - */ - t = length / wsize; - TLOOP(*(word *)dst = *(word *)src; src += wsize; dst += wsize); - t = length & wmask; - TLOOP(*dst++ = *src++); - } else { - /* - * Copy backwards. Otherwise essentially the same. - * Alignment works as before, except that it takes - * (t&wmask) bytes to align, not wsize-(t&wmask). - */ - src += length; - dst += length; - t = (size_t)src; - if ((t | (size_t)dst) & wmask) { - if ((t ^ (size_t)dst) & wmask || length <= wsize) - t = length; - else - t &= wmask; - length -= t; - TLOOP1(*--dst = *--src); - } - t = length / wsize; - TLOOP(src -= wsize; dst -= wsize; *(word *)dst = *(word *)src); - t = length & wmask; - TLOOP(*--dst = *--src); - } -done: -#if defined(MEMCOPY) || defined(MEMMOVE) - return (dst0); -#else - return; -#endif -} diff --git a/cde/lib/DtMmdb/btree_berkeley/mktemp.c b/cde/lib/DtMmdb/btree_berkeley/mktemp.c deleted file mode 100644 index 4f043799b..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/mktemp.c +++ /dev/null @@ -1,150 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: mktemp.c /main/4 1996/11/01 10:18:53 drk $ */ -/* - * Copyright (c) 1987, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)mktemp.c 8.1 (Berkeley) 6/4/93"; -#endif /* LIBC_SCCS and not lint */ - -#include -#include -#include -#include -#include -#include -#include - -#include -#ifdef X_NOT_STDC_ENV -extern int errno; -#endif - -static int _gettemp(char*, int*); - -int mkstemp(char *path) -{ - int fd; - - return (_gettemp(path, &fd) ? fd : -1); -} - -char * -mktemp(char *path) -{ - return(_gettemp(path, (int *)NULL) ? path : (char *)NULL); -} - -static int -_gettemp(char *path, int *doopen) -{ - char *start, *trv; - struct stat sbuf; - u_int pid; - - pid = getpid(); - for (trv = path; *trv; ++trv); /* extra X's get set to 0's */ - while (*--trv == 'X') { - *trv = (pid % 10) + '0'; - pid /= 10; - } - - /* - * check the target directory; if you have six X's and it - * doesn't exist this runs for a *very* long time. - */ - for (start = trv + 1;; --trv) { - if (trv <= path) - break; - if (*trv == '/') { - *trv = '\0'; - if (stat(path, &sbuf)) - return(0); - if (!S_ISDIR(sbuf.st_mode)) { - errno = ENOTDIR; - return(0); - } - *trv = '/'; - break; - } - } - - for (;;) { - if (doopen) { - if ((*doopen = - open(path, O_CREAT|O_EXCL|O_RDWR, 0600)) >= 0) - return(1); - if (errno != EEXIST) - return(0); - } - else if (stat(path, &sbuf)) - return(errno == ENOENT ? 1 : 0); - - /* tricky little algorithm for backward compatibility */ - for (trv = start;;) { - if (!*trv) - return(0); - if (*trv == 'z') - *trv++ = 'a'; - else { - if (isdigit((unsigned char) *trv)) - *trv = 'a'; - else - ++*trv; - break; - } - } - } - /*NOTREACHED*/ -} diff --git a/cde/lib/DtMmdb/btree_berkeley/mpool.c b/cde/lib/DtMmdb/btree_berkeley/mpool.c deleted file mode 100644 index 92ce371bf..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/mpool.c +++ /dev/null @@ -1,542 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: mpool.c /main/4 1996/10/04 09:47:13 drk $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#if defined(LIBC_SCCS) && !defined(lint) -static char sccsid[] = "@(#)mpool.c 8.1 (Berkeley) 6/6/93"; -#endif /* LIBC_SCCS and not lint */ - -#include -#include - -#include -#include -#include -#include -#include - -#include -#define __MPOOLINTERFACE_PRIVATE -#include "mpool.h" - -static BKT *mpool_bkt __P((MPOOL *)); -static BKT *mpool_look __P((MPOOL *, pgno_t)); -static int mpool_write __P((MPOOL *, BKT *)); -#ifdef DEBUG -static void __mpoolerr __P((const char *fmt, ...)); -#endif - -/* - * MPOOL_OPEN -- initialize a memory pool. - * - * Parameters: - * key: Shared buffer key. - * fd: File descriptor. - * pagesize: File page size. - * maxcache: Max number of cached pages. - * - * Returns: - * MPOOL pointer, NULL on error. - */ -MPOOL * -mpool_open(DBT *key, int fd, pgno_t pagesize, pgno_t maxcache) -{ - struct stat sb; - MPOOL *mp; - int entry; - - if (fstat(fd, &sb)) - return (NULL); - /* XXX - * We should only set st_size to 0 for pipes -- 4.4BSD has the fix so - * that stat(2) returns true for ISSOCK on pipes. Until then, this is - * fairly close. - */ - if (!S_ISREG(sb.st_mode)) { - errno = ESPIPE; - return (NULL); - } - - if ((mp = malloc(sizeof(MPOOL))) == NULL) - return (NULL); - mp->free.cnext = mp->free.cprev = (BKT *)(void *)&mp->free; - mp->lru.cnext = mp->lru.cprev = (BKT *)(void *)&mp->lru; - for (entry = 0; entry < HASHSIZE; ++entry) - mp->hashtable[entry].hnext = mp->hashtable[entry].hprev = - mp->hashtable[entry].cnext = mp->hashtable[entry].cprev = - (BKT *)&mp->hashtable[entry]; - mp->curcache = 0; - mp->maxcache = maxcache; - mp->pagesize = pagesize; - mp->npages = sb.st_size / pagesize; - mp->fd = fd; - mp->pgcookie = NULL; - mp->pgin = mp->pgout = NULL; - -#ifdef STATISTICS - mp->cachehit = mp->cachemiss = mp->pagealloc = mp->pageflush = - mp->pageget = mp->pagenew = mp->pageput = mp->pageread = - mp->pagewrite = 0; -#endif - return (mp); -} - -/* - * MPOOL_FILTER -- initialize input/output filters. - * - * Parameters: - * pgin: Page in conversion routine. - * pgout: Page out conversion routine. - * pgcookie: Cookie for page in/out routines. - */ -void -mpool_filter(MPOOL *mp, - void (*pgin) __P((void *, pgno_t, void *)), - void (*pgout) __P((void *, pgno_t, void *)), - void *pgcookie) -{ - mp->pgin = pgin; - mp->pgout = pgout; - mp->pgcookie = pgcookie; -} - -/* - * MPOOL_NEW -- get a new page - * - * Parameters: - * mp: mpool cookie - * pgnoadddr: place to store new page number - * Returns: - * RET_ERROR, RET_SUCCESS - */ -void * -mpool_new(MPOOL *mp, pgno_t *pgnoaddr) -{ - BKT *b; - BKTHDR *hp; - -#ifdef STATISTICS - ++mp->pagenew; -#endif - /* - * Get a BKT from the cache. Assign a new page number, attach it to - * the hash and lru chains and return. - */ - if ((b = mpool_bkt(mp)) == NULL) - return (NULL); - *pgnoaddr = b->pgno = mp->npages++; - b->flags = MPOOL_PINNED; - inshash(b, b->pgno); - inschain(b, &mp->lru); - return (b->page); -} - -/* - * MPOOL_GET -- get a page from the pool - * - * Parameters: - * mp: mpool cookie - * pgno: page number - * flags: not used - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -void * -mpool_get(MPOOL *mp, pgno_t pgno, u_int flags /* XXX not used? */) -{ - BKT *b; - BKTHDR *hp; - off_t off; - int nr; - - /* - * If asking for a specific page that is already in the cache, find - * it and return it. - */ - if ((b = mpool_look(mp, pgno))) { -#ifdef STATISTICS - ++mp->pageget; -#endif -#ifdef DEBUG - if (b->flags & MPOOL_PINNED) - __mpoolerr("mpool_get: page %d already pinned", - b->pgno); -#endif - rmchain(b); - inschain(b, &mp->lru); - b->flags |= MPOOL_PINNED; - return (b->page); - } - - /* Not allowed to retrieve a non-existent page. */ - if (pgno >= mp->npages) { - errno = EINVAL; - return (NULL); - } - - /* Get a page from the cache. */ - if ((b = mpool_bkt(mp)) == NULL) - return (NULL); - b->pgno = pgno; - b->flags = MPOOL_PINNED; - -#ifdef STATISTICS - ++mp->pageread; -#endif - /* Read in the contents. */ - off = mp->pagesize * pgno; - if (lseek(mp->fd, off, SEEK_SET) != off) - return (NULL); - if ((nr = read(mp->fd, b->page, mp->pagesize)) != mp->pagesize) { - if (nr >= 0) - errno = EFTYPE; - return (NULL); - } - if (mp->pgin) - (mp->pgin)(mp->pgcookie, b->pgno, b->page); - - inshash(b, b->pgno); - inschain(b, &mp->lru); -#ifdef STATISTICS - ++mp->pageget; -#endif - return (b->page); -} - -/* - * MPOOL_PUT -- return a page to the pool - * - * Parameters: - * mp: mpool cookie - * page: page pointer - * pgno: page number - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -mpool_put(MPOOL *mp, void *page, u_int flags) -{ - BKT *baddr; -#ifdef DEBUG - BKT *b; -#endif - -#ifdef STATISTICS - ++mp->pageput; -#endif - baddr = (BKT *)((char *)page - sizeof(BKT)); -#ifdef DEBUG - if (!(baddr->flags & MPOOL_PINNED)) - __mpoolerr("mpool_put: page %d not pinned", b->pgno); - for (b = mp->lru.cnext; b != (BKT *)&mp->lru; b = b->cnext) { - if (b == (BKT *)&mp->lru) - __mpoolerr("mpool_put: %0x: bad address", baddr); - if (b == baddr) - break; - } -#endif - baddr->flags &= ~MPOOL_PINNED; - baddr->flags |= flags & MPOOL_DIRTY; - return (RET_SUCCESS); -} - -/* - * MPOOL_CLOSE -- close the buffer pool - * - * Parameters: - * mp: mpool cookie - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -mpool_close(MPOOL *mp) -{ - BKT *b, *next; - - /* Free up any space allocated to the lru pages. */ - for (b = mp->lru.cprev; b != (BKT *)(void *)&mp->lru; b = next) { - next = b->cprev; - free(b); - } - free(mp); - return (RET_SUCCESS); -} - -/* - * MPOOL_SYNC -- sync the file to disk. - * - * Parameters: - * mp: mpool cookie - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -int -mpool_sync(MPOOL *mp) -{ - BKT *b; - - for (b = mp->lru.cprev; b != (BKT *)(void *)&mp->lru; b = b->cprev) - if (b->flags & MPOOL_DIRTY && mpool_write(mp, b) == RET_ERROR) - return (RET_ERROR); - return (fsync(mp->fd) ? RET_ERROR : RET_SUCCESS); -} - -/* - * MPOOL_BKT -- get/create a BKT from the cache - * - * Parameters: - * mp: mpool cookie - * - * Returns: - * NULL on failure and a pointer to the BKT on success - */ -static BKT * -mpool_bkt(MPOOL *mp) -{ - BKT *b; - - if (mp->curcache < mp->maxcache) - goto new; - - /* - * If the cache is maxxed out, search the lru list for a buffer we - * can flush. If we find one, write it if necessary and take it off - * any lists. If we don't find anything we grow the cache anyway. - * The cache never shrinks. - */ - for (b = mp->lru.cprev; b != (BKT *)(void *)&mp->lru; b = b->cprev) - if (!(b->flags & MPOOL_PINNED)) { - if (b->flags & MPOOL_DIRTY && - mpool_write(mp, b) == RET_ERROR) - return (NULL); - rmhash(b); - rmchain(b); -#ifdef STATISTICS - ++mp->pageflush; -#endif -#ifdef DEBUG - { - void *spage; - spage = b->page; - memset(b, 0xff, sizeof(BKT) + mp->pagesize); - b->page = spage; - } -#endif - return (b); - } - -new: if ((b = malloc(sizeof(BKT) + mp->pagesize)) == NULL) - return (NULL); -#ifdef STATISTICS - ++mp->pagealloc; -#endif -/* -#ifdef DEBUG -*/ - memset(b, 0xff, sizeof(BKT) + mp->pagesize); -/* -#endif -*/ - b->page = (char *)b + sizeof(BKT); - - ++mp->curcache; - return (b); -} - -/* - * MPOOL_WRITE -- sync a page to disk - * - * Parameters: - * mp: mpool cookie - * - * Returns: - * RET_ERROR, RET_SUCCESS - */ -static int -mpool_write(MPOOL *mp, BKT *b) -{ - off_t off; - - if (mp->pgout) - (mp->pgout)(mp->pgcookie, b->pgno, b->page); - -#ifdef STATISTICS - ++mp->pagewrite; -#endif - off = mp->pagesize * b->pgno; - if (lseek(mp->fd, off, SEEK_SET) != off) - return (RET_ERROR); - if (write(mp->fd, b->page, mp->pagesize) != mp->pagesize) - return (RET_ERROR); - b->flags &= ~MPOOL_DIRTY; - return (RET_SUCCESS); -} - -/* - * MPOOL_LOOK -- lookup a page - * - * Parameters: - * mp: mpool cookie - * pgno: page number - * - * Returns: - * NULL on failure and a pointer to the BKT on success - */ -static BKT * -mpool_look(MPOOL *mp, pgno_t pgno) -{ - BKT *b; - BKTHDR *tb; - - /* XXX - * If find the buffer, put it first on the hash chain so can - * find it again quickly. - */ - tb = &mp->hashtable[HASHKEY(pgno)]; - for (b = tb->hnext; b != (BKT *)tb; b = b->hnext) - if (b->pgno == pgno) { -#ifdef STATISTICS - ++mp->cachehit; -#endif - return (b); - } -#ifdef STATISTICS - ++mp->cachemiss; -#endif - return (NULL); -} - -#ifdef STATISTICS -/* - * MPOOL_STAT -- cache statistics - * - * Parameters: - * mp: mpool cookie - */ -void -mpool_stat(MPOOL *mp) -{ - BKT *b; - int cnt; - char *sep; - - (void)fprintf(stderr, "%lu pages in the file\n", mp->npages); - (void)fprintf(stderr, - "page size %lu, cacheing %lu pages of %lu page max cache\n", - mp->pagesize, mp->curcache, mp->maxcache); - (void)fprintf(stderr, "%lu page puts, %lu page gets, %lu page new\n", - mp->pageput, mp->pageget, mp->pagenew); - (void)fprintf(stderr, "%lu page allocs, %lu page flushes\n", - mp->pagealloc, mp->pageflush); - if (mp->cachehit + mp->cachemiss) - (void)fprintf(stderr, - "%.0f%% cache hit rate (%lu hits, %lu misses)\n", - ((double)mp->cachehit / (mp->cachehit + mp->cachemiss)) - * 100, mp->cachehit, mp->cachemiss); - (void)fprintf(stderr, "%lu page reads, %lu page writes\n", - mp->pageread, mp->pagewrite); - - sep = ""; - cnt = 0; - for (b = mp->lru.cnext; b != (BKT *)&mp->lru; b = b->cnext) { - (void)fprintf(stderr, "%s%ld", sep, b->pgno); - if (b->flags & MPOOL_DIRTY) - (void)fprintf(stderr, "d"); - if (b->flags & MPOOL_PINNED) - (void)fprintf(stderr, "P"); - if (++cnt == 10) { - sep = "\n"; - cnt = 0; - } else - sep = ", "; - - } - (void)fprintf(stderr, "\n"); -} -#endif - -#ifdef DEBUG -#if __STDC__ -#include -#else -#include -#endif - -static void -#if __STDC__ -__mpoolerr(const char *fmt, ...) -#else -__mpoolerr(fmt, va_alist) - char *fmt; - va_dcl -#endif -{ - va_list ap; -#if __STDC__ - va_start(ap, fmt); -#else - va_start(ap); -#endif - (void)vfprintf(stderr, fmt, ap); - va_end(ap); - (void)fprintf(stderr, "\n"); - abort(); - /* NOTREACHED */ -} -#endif diff --git a/cde/lib/DtMmdb/btree_berkeley/mpool.h b/cde/lib/DtMmdb/btree_berkeley/mpool.h deleted file mode 100644 index be7d18280..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/mpool.h +++ /dev/null @@ -1,158 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: mpool.h /main/3 1996/06/11 17:14:12 cde-hal $ */ -/*- - * Copyright (c) 1991, 1993 - * The Regents of the University of California. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)mpool.h 8.1 (Berkeley) 6/2/93 - */ - -/* - * The memory pool scheme is a simple one. Each in memory page is referenced - * by a bucket which is threaded in three ways. All active pages are threaded - * on a hash chain (hashed by the page number) and an lru chain. Inactive - * pages are threaded on a free chain. Each reference to a memory pool is - * handed an MPOOL which is the opaque cookie passed to all of the memory - * routines. - */ -#define HASHSIZE 128 -#define HASHKEY(pgno) ((pgno - 1) % HASHSIZE) - -/* The BKT structures are the elements of the lists. */ -typedef struct BKT { - struct BKT *hnext; /* next hash bucket */ - struct BKT *hprev; /* previous hash bucket */ - struct BKT *cnext; /* next free/lru bucket */ - struct BKT *cprev; /* previous free/lru bucket */ - void *page; /* page */ - pgno_t pgno; /* page number */ - -#define MPOOL_DIRTY 0x01 /* page needs to be written */ -#define MPOOL_PINNED 0x02 /* page is pinned into memory */ - unsigned long flags; /* flags */ -} BKT; - -/* The BKTHDR structures are the heads of the lists. */ -typedef struct BKTHDR { - struct BKT *hnext; /* next hash bucket */ - struct BKT *hprev; /* previous hash bucket */ - struct BKT *cnext; /* next free/lru bucket */ - struct BKT *cprev; /* previous free/lru bucket */ -} BKTHDR; - -typedef struct MPOOL { - BKTHDR free; /* The free list. */ - BKTHDR lru; /* The LRU list. */ - BKTHDR hashtable[HASHSIZE]; /* Hashed list by page number. */ - pgno_t curcache; /* Current number of cached pages. */ - pgno_t maxcache; /* Max number of cached pages. */ - pgno_t npages; /* Number of pages in the file. */ - u_long pagesize; /* File page size. */ - int fd; /* File descriptor. */ - /* Page in conversion routine. */ - void (*pgin) __P((void *, pgno_t, void *)); - /* Page out conversion routine. */ - void (*pgout) __P((void *, pgno_t, void *)); - void *pgcookie; /* Cookie for page in/out routines. */ -#ifdef STATISTICS - unsigned long cachehit; - unsigned long cachemiss; - unsigned long pagealloc; - unsigned long pageflush; - unsigned long pageget; - unsigned long pagenew; - unsigned long pageput; - unsigned long pageread; - unsigned long pagewrite; -#endif -} MPOOL; - -#ifdef __MPOOLINTERFACE_PRIVATE -/* Macros to insert/delete into/from hash chain. */ -#define rmhash(bp) { \ - (bp)->hprev->hnext = (bp)->hnext; \ - (bp)->hnext->hprev = (bp)->hprev; \ -} -#define inshash(bp, pg) { \ - hp = &mp->hashtable[HASHKEY(pg)]; \ - (bp)->hnext = hp->hnext; \ - (bp)->hprev = (struct BKT *)hp; \ - hp->hnext->hprev = (bp); \ - hp->hnext = (bp); \ -} - -/* Macros to insert/delete into/from lru and free chains. */ -#define rmchain(bp) { \ - (bp)->cprev->cnext = (bp)->cnext; \ - (bp)->cnext->cprev = (bp)->cprev; \ -} -#define inschain(bp, dp) { \ - (bp)->cnext = (dp)->cnext; \ - (bp)->cprev = (struct BKT *)(void *)(dp); \ - (dp)->cnext->cprev = (bp); \ - (dp)->cnext = (bp); \ -} -#endif - -__BEGIN_DECLS -MPOOL *mpool_open __P((DBT *, int, pgno_t, pgno_t)); -void mpool_filter __P((MPOOL *, void (*)(void *, pgno_t, void *), - void (*)(void *, pgno_t, void *), void *)); -void *mpool_new __P((MPOOL *, pgno_t *)); -void *mpool_get __P((MPOOL *, pgno_t, u_int)); -int mpool_put __P((MPOOL *, void *, u_int)); -int mpool_sync __P((MPOOL *)); -int mpool_close __P((MPOOL *)); -#ifdef STATISTICS -void mpool_stat __P((MPOOL *)); -#endif -__END_DECLS diff --git a/cde/lib/DtMmdb/btree_berkeley/ndbm.h b/cde/lib/DtMmdb/btree_berkeley/ndbm.h deleted file mode 100644 index 077de5fbd..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/ndbm.h +++ /dev/null @@ -1,100 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: ndbm.h /main/3 1996/06/11 17:14:17 cde-hal $ */ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. All rights reserved. - * - * This code is derived from software contributed to Berkeley by - * Margo Seltzer. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)ndbm.h 8.1 (Berkeley) 6/2/93 - */ - -#ifndef _NDBM_H_ -#define _NDBM_H_ - -#include - -/* Map dbm interface onto db(3). */ -#define DBM_RDONLY O_RDONLY - -/* Flags to dbm_store(). */ -#define DBM_INSERT 0 -#define DBM_REPLACE 1 - -/* - * The db(3) support for ndbm(3) always appends this suffix to the - * file name to avoid overwriting the user's original database. - */ -#define DBM_SUFFIX ".db" - -typedef struct { - char *dptr; - int dsize; -} datum; - -typedef DB DBM; -#define dbm_pagfno(a) DBM_PAGFNO_NOT_AVAILABLE - -__BEGIN_DECLS -void dbm_close __P((DBM *)); -int dbm_delete __P((DBM *, datum)); -datum dbm_fetch __P((DBM *, datum)); -datum dbm_firstkey __P((DBM *)); -long dbm_forder __P((DBM *, datum)); -datum dbm_nextkey __P((DBM *)); -DBM *dbm_open __P((const char *, int, int)); -int dbm_store __P((DBM *, datum, datum, int)); -int dbm_dirfno __P((DBM *)); -__END_DECLS - -#endif /* !_NDBM_H_ */ diff --git a/cde/lib/DtMmdb/btree_berkeley/realloc.c b/cde/lib/DtMmdb/btree_berkeley/realloc.c deleted file mode 100644 index 16b5854f5..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/realloc.c +++ /dev/null @@ -1,32 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: realloc.c /main/3 1996/06/11 17:14:22 cde-hal $ */ -#include - -#include - -void * -__fix_realloc(void *p, size_t n) -{ - return (p == 0 ? malloc(n) : realloc(p, n)); -} diff --git a/cde/lib/DtMmdb/btree_berkeley/snprintf.c b/cde/lib/DtMmdb/btree_berkeley/snprintf.c deleted file mode 100644 index 5be30e363..000000000 --- a/cde/lib/DtMmdb/btree_berkeley/snprintf.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: snprintf.c /main/3 1996/06/11 17:14:27 cde-hal $ */ -#include -#include "cdefs.h" - -#include -#include -#include - -#ifdef __STDC__ -#include -#else -#include -#endif - -int -#ifdef __STDC__ -snprintf(char *str, size_t n, const char *fmt, ...) -#else -snprintf(str, n, fmt, va_alist) - char *str; - size_t n; - const char *fmt; - va_dcl -#endif -{ - va_list ap; -#ifdef VSPRINTF_CHARSTAR - char *rp; -#else - int rval; -#endif - -#ifdef __STDC__ - va_start(ap, fmt); -#else - va_start(ap); -#endif - -#ifdef VSPRINTF_CHARSTAR - rp = (char*)(size_t)vsnprintf(str, n, fmt, ap); - va_end(ap); - return (strlen(rp)); -#else - rval = vsnprintf(str, n, fmt, ap); - va_end(ap); - return (rval); -#endif -} - -#if 0 -int -vsnprintf(str, n, fmt, ap) - char *str; - size_t n; - const char *fmt; - va_list ap; -{ -#ifdef VSPRINTF_CHARSTAR - return (strlen((char*)(size_t)vsnprintf(str, fmt, ap))); -#else - return (vsnprintf(str, fmt, ap)); -#endif -} -#endif diff --git a/cde/lib/DtMmdb/compression/code.C b/cde/lib/DtMmdb/compression/code.C index f4272fa65..de27ea8f2 100644 --- a/cde/lib/DtMmdb/compression/code.C +++ b/cde/lib/DtMmdb/compression/code.C @@ -48,9 +48,10 @@ */ +#include "utility/debug.h" #include "compression/code.h" -encoding_unit::encoding_unit(ostring* w, unsigned int f) : +encoding_unit::encoding_unit(std::string* w, unsigned int f) : word(w), bits(0), freq(f), code(0), leaf_htr_node(NULL) { } @@ -60,7 +61,7 @@ encoding_unit::~encoding_unit() delete word; } -ostream& operator<<(ostream& out, encoding_unit& eu) +std::ostream& operator<<(std::ostream& out, encoding_unit& eu) { debug(out, *eu.word); debug(out, eu.freq); diff --git a/cde/lib/DtMmdb/compression/code.h b/cde/lib/DtMmdb/compression/code.h index 1fa14b8d8..e82f0cc16 100644 --- a/cde/lib/DtMmdb/compression/code.h +++ b/cde/lib/DtMmdb/compression/code.h @@ -51,7 +51,8 @@ #ifndef _code_h #define _code_h 1 -#include "utility/ostring.h" +#include + //////////////////////////////////////// // //////////////////////////////////////// @@ -61,17 +62,17 @@ class htr_node; class encoding_unit { public: - ostring* word; + std::string* word; int bits; unsigned int freq; unsigned int code; htr_node* leaf_htr_node; public: - encoding_unit(ostring* w, unsigned int freq); + encoding_unit(std::string* w, unsigned int freq); ~encoding_unit(); - friend ostream& operator <<(ostream&, encoding_unit&); + friend std::ostream& operator <<(std::ostream&, encoding_unit&); }; diff --git a/cde/lib/DtMmdb/compression/huffman.C b/cde/lib/DtMmdb/compression/huffman.C index d4cf430c5..8808f0b61 100644 --- a/cde/lib/DtMmdb/compression/huffman.C +++ b/cde/lib/DtMmdb/compression/huffman.C @@ -310,7 +310,7 @@ void huff::compress(const buffer& uncompressed, buffer& compressed) void huff::decompress(buffer& compressed, buffer& uncompressed) { char* buf_base = uncompressed.get_base(); - char* str; + const char* str; int str_len; char rem_bits; @@ -339,7 +339,7 @@ void huff::decompress(buffer& compressed, buffer& uncompressed) //} str_len = node_ptr -> eu -> word -> size(); - str = node_ptr -> eu -> word -> get(); + str = node_ptr -> eu -> word -> c_str(); if ( str_len == 1 ) { @@ -379,8 +379,8 @@ void huff::decompress(buffer& compressed, buffer& uncompressed) uncompressed.set_content_sz(buf_base-uncompressed.get_base()); if ( rem_bits > 0 ) - uncompressed.put( node_ptr -> eu -> word -> get(), - node_ptr -> eu -> word -> size() + uncompressed.put( node_ptr -> eu -> word -> c_str(), + node_ptr -> eu -> word -> size() ); } @@ -422,7 +422,7 @@ io_status huff::cdrOut(buffer& buf) word_sz = e_units[i] -> word -> size(); v_out_buf.put(char(word_sz)); - v_out_buf.put(e_units[i] -> word -> get(), word_sz); + v_out_buf.put(e_units[i] -> word -> c_str(), word_sz); v_out_buf.put(e_units[i] -> freq); } diff --git a/cde/lib/DtMmdb/compression/trie.C b/cde/lib/DtMmdb/compression/trie.C index f352ab321..dec1ab6b6 100644 --- a/cde/lib/DtMmdb/compression/trie.C +++ b/cde/lib/DtMmdb/compression/trie.C @@ -221,7 +221,7 @@ void trie::add(unsigned char* word, int sz, int fq) encoding_unit* trie::add_to_alphabet(unsigned char* word, int sz, int fq) { extend_alphabet(); - encoding_unit *x = new encoding_unit(new ostring((char*)word, sz), fq); + encoding_unit *x = new encoding_unit(new string((char*)word, sz), fq); alphabet[alphabet_sz++] = x; return x; } @@ -240,7 +240,7 @@ cerr << "\n"; static trie_node_info* y = 0; static char buf[1]; - static ostring *z; + static string *z; if ( root == 0 ) root = new trie_node(0); @@ -261,7 +261,7 @@ cerr << "\n"; y -> info.info_view.letter = j; buf[0] = char(j); - z = new ostring(buf, 1); + z = new string(buf, 1); y -> info.info_view.mark = 1; extend_alphabet(); @@ -292,7 +292,7 @@ void update_index(int ind, void* x) void trie::_find_leaf(trie_node* z, int& j) { trie_node_info* x = 0; - ostring *y; + string *y; for ( int i=0; i. -#if !defined(hpux) #define mthrow(OBJ) \ (OBJ)->throw_it (__LINE__, __FILE__, DEBUG_THROW_FLAG) -#else -#define mthrow(OBJ) \ - OBJ->throw_it (__LINE__, __FILE__, DEBUG_THROW_FLAG) -#endif #define rethrow \ Exception::current_exception().do_throw (__LINE__, __FILE__) diff --git a/cde/lib/DtMmdb/dti_excs/terminate.C b/cde/lib/DtMmdb/dti_excs/terminate.C index 1fe248f75..f7b684344 100644 --- a/cde/lib/DtMmdb/dti_excs/terminate.C +++ b/cde/lib/DtMmdb/dti_excs/terminate.C @@ -63,11 +63,4 @@ terminate() abort(); } #else - -#ifdef hpux -// HPUX doesn't define the set_terminate function from the ARM. -typedef void (*PFV)(); -PFV set_terminate (PFV) { return (0); } -#endif - #endif /* NATIVE_EXCEPTIONS */ diff --git a/cde/lib/DtMmdb/index/btree_index.C b/cde/lib/DtMmdb/index/btree_index.C index 792bd1a3f..f16de10bd 100644 --- a/cde/lib/DtMmdb/index/btree_index.C +++ b/cde/lib/DtMmdb/index/btree_index.C @@ -80,7 +80,7 @@ size_t btree_index::handler_to_inv_idx(const handler& query) { get_key_string(query); - data_t k(v_static_key.get(), v_static_key.size()); + data_t k(v_static_key.c_str(), v_static_key.size()); if ( v_idx_agent_ptr -> member(k) == false ) throw(stringException("first_of_invlist(): key is not in btree")); diff --git a/cde/lib/DtMmdb/index/btree_index.h b/cde/lib/DtMmdb/index/btree_index.h index d2fb82c0b..438e61828 100644 --- a/cde/lib/DtMmdb/index/btree_index.h +++ b/cde/lib/DtMmdb/index/btree_index.h @@ -53,7 +53,7 @@ #define _btree_index_h 1 #include "index/dyn_index.h" -#include "btree/mmdb_btree.h" +#include "btree/btree.h" class btree_index : public dyn_index { diff --git a/cde/lib/DtMmdb/index/dyn_index.C b/cde/lib/DtMmdb/index/dyn_index.C index 62f13e92e..852f698c7 100644 --- a/cde/lib/DtMmdb/index/dyn_index.C +++ b/cde/lib/DtMmdb/index/dyn_index.C @@ -81,7 +81,7 @@ if ( v_static_key.get() ) MESSAGE(cerr, "************"); */ - return new data_t(v_static_key.get(), v_static_key.size()); + return new data_t(v_static_key.c_str(), v_static_key.size()); } Boolean diff --git a/cde/lib/DtMmdb/index/fast_mphf.C b/cde/lib/DtMmdb/index/fast_mphf.C index 870ff1eb3..7db5f542f 100644 --- a/cde/lib/DtMmdb/index/fast_mphf.C +++ b/cde/lib/DtMmdb/index/fast_mphf.C @@ -257,7 +257,7 @@ debug(cerr, k); throw(stringException("hash table empty")); } - i = v_tbl0 -> atoi(k.get(), k.size(), r, v_key_set_sz); // for halmphf + i = v_tbl0 -> atoi(k.c_str(), k.size(), r, v_key_set_sz); // for halmphf if ( i < v_p1 ) { @@ -275,7 +275,7 @@ debug(cerr, k); //i = v_tbl1 -> atoi(k, c_bit+r+1) + gv; //debug(cerr, c_bit+r); - i = v_tbl1 -> atoi(k.get(), k.size(), c_bit+r+1, v_hash_tbl_sz) + gv; // for halmphf + i = v_tbl1 -> atoi(k.c_str(), k.size(), c_bit+r+1, v_hash_tbl_sz) + gv; // for halmphf return i % v_hash_tbl_sz; @@ -422,7 +422,7 @@ fast_mphf::print_mapping(const char *key_file, int option) //debug(cerr, option); MESSAGE(cerr, "print_mapping()"); - char string[LBUFSIZ]; + char str[LBUFSIZ]; fstream in(key_file, ios::in); if ( !in ) { @@ -432,23 +432,23 @@ fast_mphf::print_mapping(const char *key_file, int option) char *hash_table = new char[v_hash_tbl_sz]; for (unsigned int i = 0; i < v_hash_tbl_sz; hash_table[i++] = 0 ); - ostring lbuf(LBUFSIZ); + string lbuf; lbuf.reserve(LBUFSIZ); - while ( in.getline(string, LBUFSIZ, '\n') ) { + while ( in.getline(str, LBUFSIZ, '\n') ) { -// string[strlen(string)-1] = '\0'; +// str[strlen(str)-1] = '\0'; -//debug(cerr, string); -//debug(cerr, strlen(string)); +//debug(cerr, str); +//debug(cerr, strlen(str)); - lbuf.reset(); - lbuf.set(string, strlen(string)); + lbuf.clear(); + lbuf.assign(str, strlen(str)); int hash = hashTo(lbuf) ; if ( option == 1 ) { - cout << " string = " << string; + cout << " string = " << str; cout << ", hash = " << hash << "\n"; } @@ -457,7 +457,7 @@ fast_mphf::print_mapping(const char *key_file, int option) else hash_table[hash] = 1; - in.getline(string, LBUFSIZ, '\n'); + in.getline(str, LBUFSIZ, '\n'); } MESSAGE(cerr, "print_mapping() done"); diff --git a/cde/lib/DtMmdb/index/index.C b/cde/lib/DtMmdb/index/index.C index 8f3ad8d70..14fddffff 100644 --- a/cde/lib/DtMmdb/index/index.C +++ b/cde/lib/DtMmdb/index/index.C @@ -54,7 +54,7 @@ key_type* c_index::v_static_key_ptr; #define v_static_key (*v_static_key_ptr) #else -key_type c_index::v_static_key(LBUFSIZ); +key_type c_index::v_static_key; #endif void c_index::init_persistent_info(persistent_info* x) @@ -66,6 +66,7 @@ void c_index::init_persistent_info(persistent_info* x) c_index::c_index(c_code_t c_cd) : composite(c_cd), v_inv_lists_hd(NULL) { v_cmp_selector = 0; + v_static_key.reserve(LBUFSIZ); } oid_list_handler* c_index::operator()(int ind) @@ -108,27 +109,21 @@ oid_t c_index::first_of_invlist(int ind) Boolean c_index::get_key_string(const handler& t) const { ostringstream out; - int len; ((handler&)t) -> asciiOut(out); - len = out.str().size(); - v_static_key.set_size(len); - *((char *) memcpy(v_static_key.get(), out.str().c_str(), len) + len) = '\0'; + v_static_key = out.str(); return true; } Boolean c_index::get_key_string(const oid_t& t) const { - v_static_key.reset(); - int len; + v_static_key.clear(); + + ostringstream out(v_static_key.c_str()); - ostringstream out(v_static_key.get()); t.asciiOut(out); - - len = out.str().size(); - v_static_key.set_size(len); - *((char *) memcpy(v_static_key.get(), out.str().c_str(), len) + len) = '\0'; + v_static_key = out.str(); return true; } diff --git a/cde/lib/DtMmdb/index/mphf_index.C b/cde/lib/DtMmdb/index/mphf_index.C index 8439915c3..d0f990cd5 100644 --- a/cde/lib/DtMmdb/index/mphf_index.C +++ b/cde/lib/DtMmdb/index/mphf_index.C @@ -150,13 +150,13 @@ debug(cerr, (void*)(v_mphf->operator->())); v_sz = (*v_mphf) -> keysetsize(); (*v_inv_lists_hd) -> expand_space(v_sz); - key_type key(LBUFSIZ); - + key_type key; key.reserve(LBUFSIZ); + #ifdef DEBUG int i = 0; #endif - while ( in >> key ) { + while (std::getline(in, key)) { oid_t key_id(c_code_t(0), 0); diff --git a/cde/lib/DtMmdb/mgrs/misc.C b/cde/lib/DtMmdb/mgrs/misc.C index fa5a7bfa3..61f052a0b 100644 --- a/cde/lib/DtMmdb/mgrs/misc.C +++ b/cde/lib/DtMmdb/mgrs/misc.C @@ -62,7 +62,7 @@ debug(cerr, y -> v_name); */ - return ( x -> v_name.string_LS(y -> v_name) ); + return ( x -> v_name.compare(y -> v_name) < 0); } Boolean name_oid_eq(const void* o1, const void* o2) @@ -75,7 +75,7 @@ MESSAGE(cerr, "in name_oid_eq"); debug(cerr, x -> v_name); debug(cerr, y -> v_name); */ - return ( x -> v_name.string_EQ(y -> v_name) ); + return ( x -> v_name.compare(y -> v_name) == 0); } Boolean oid_ls(const void* o1, const void* o2) @@ -145,15 +145,14 @@ void delete_name_oid_rec_f(const void* name_oid_ptr) // // *************************************************** -mark_t::mark_t(char* marks) : ostring(strlen(marks)) +mark_t::mark_t(char* marks) : string(marks) { - set(marks); } istream& operator >>(istream& in, mark_t& m) { char c ; - char* ptr = m.get(); + const char* ptr = m.c_str(); Boolean read_marks = false; while ( in && in.get(c) ) { @@ -175,7 +174,7 @@ istream& operator >>(istream& in, mark_t& m) ostream& operator <<(ostream& out, mark_t& m) { - out << m.get(); + out << m.c_str(); return out ; } diff --git a/cde/lib/DtMmdb/mgrs/misc.h b/cde/lib/DtMmdb/mgrs/misc.h index ab3027461..11c664c39 100644 --- a/cde/lib/DtMmdb/mgrs/misc.h +++ b/cde/lib/DtMmdb/mgrs/misc.h @@ -52,7 +52,6 @@ #define _misc_h #include "object/root.h" -#include "utility/ostring.h" #include "storage/abs_storage.h" #include "object/handler.h" @@ -71,25 +70,25 @@ class name_oid_t public: name_oid_t(const char* nm, abs_storage* store = 0) : v_store(store) { - v_name.set(nm); + v_name.assign(nm); } name_oid_t(const char* nm, const oid_t& id, abs_storage* store = 0) : v_oid(id), v_store(store) { - v_name.set(nm); + v_name.assign(nm); }; ~name_oid_t() {}; public: - ostring v_name; + string v_name; oid_t v_oid; abs_storage* v_store; }; void delete_name_oid_rec_f(const void* name_oid_ptr); -class mark_t : private ostring +class mark_t : private string { public: mark_t(char* marks = (char*)"\t\n "); diff --git a/cde/lib/DtMmdb/mgrs/name_oid_t.h b/cde/lib/DtMmdb/mgrs/name_oid_t.h deleted file mode 100644 index 47903bac8..000000000 --- a/cde/lib/DtMmdb/mgrs/name_oid_t.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: name_oid_t.h /main/3 1996/06/11 17:22:59 cde-hal $ */ -class name_oid_t { - -public: - ostring name; - oid_t v_oid; - - name_oid_t(const char* nm, oid_t& id) : v_oid(id) { - name.set(nm); - }; -}; diff --git a/cde/lib/DtMmdb/misc/unique_id.c b/cde/lib/DtMmdb/misc/unique_id.c index 9447afac0..3f34eb576 100644 --- a/cde/lib/DtMmdb/misc/unique_id.c +++ b/cde/lib/DtMmdb/misc/unique_id.c @@ -97,22 +97,7 @@ static unsigned int mask[] = (bits & (1L << (sizeof(BITS) * 8)-1)) ? putchar('1') : putchar('0'); } \ putchar ('\n'); } -#if defined(hpux) -#include -static unsigned int -gethostid() -{ - struct utsname u; - int i; - - i=uname(&u); - if (i==-1) - abort(); - if (u.idnumber[0]) - return atoi(u.idnumber); - abort(); -} -#elif defined(SVR4) && !defined(sun) +#if defined(SVR4) && !defined(sun) static unsigned int gethostid() { diff --git a/cde/lib/DtMmdb/misc/unique_id.h b/cde/lib/DtMmdb/misc/unique_id.h index 185a1a095..ad06f7c7f 100644 --- a/cde/lib/DtMmdb/misc/unique_id.h +++ b/cde/lib/DtMmdb/misc/unique_id.h @@ -29,7 +29,7 @@ extern "C" { #endif -#if defined( __STDC__ ) || defined( _HPUX_SOURCE ) +#if defined( __STDC__ ) const char *unique_id(void); #else char *unique_id(); diff --git a/cde/lib/DtMmdb/object/long_pstring.h b/cde/lib/DtMmdb/object/long_pstring.h index c72bc26f3..89aab9689 100644 --- a/cde/lib/DtMmdb/object/long_pstring.h +++ b/cde/lib/DtMmdb/object/long_pstring.h @@ -52,7 +52,6 @@ #define _long_pstring_h 1 #include "object/pstring.h" -#include "utility/ostring.h" #include "storage/page_storage.h" #include "storage/chunks_index.h" diff --git a/cde/lib/DtMmdb/object/oid_list.C b/cde/lib/DtMmdb/object/oid_list.C index a1e6e2d3b..0bc1954be 100644 --- a/cde/lib/DtMmdb/object/oid_list.C +++ b/cde/lib/DtMmdb/object/oid_list.C @@ -52,7 +52,7 @@ void oid_list::init_persistent_info(persistent_info* x) { - ostring* u = list_ptr.p; + string* u = list_ptr.p; root::init_persistent_info(x); @@ -62,7 +62,7 @@ void oid_list::init_persistent_info(persistent_info* x) //debug(cerr, (void*)this); //debug(cerr, my_oid()); - char* w = 0; + const char* w = 0; int v= 0; //MESSAGE(cerr, "oid_list::init_persistent_info(), new object case"); @@ -70,7 +70,7 @@ void oid_list::init_persistent_info(persistent_info* x) //debug(cerr, (void*)list_ptr.p); if (u) { - w = u -> get(); + w = u -> c_str(); v = u -> size(); } @@ -132,7 +132,7 @@ void oid_list::init_data_member(int leng) } list_ptr.loc = 0; // to please purify - list_ptr.p = new ostring(ptr, char_leng); + list_ptr.p = new string(ptr, char_leng); //MESSAGE(cerr, "oid_list::init_data_member(int leng)"); //debug(cerr, (void*)this); @@ -170,8 +170,6 @@ debug(cerr, int(list_ptr.loc)); debug(cerr, int(&list_ptr.loc)); */ - Boolean ok; - int extra_char_leng = extra_oids * OID_T_SZ; if ( get_mode(PERSISTENT) == true ) { @@ -189,18 +187,15 @@ debug(cerr, int(&list_ptr.loc)); } delete [] ptr; - - ok = true; - } else { - ok = list_ptr.p -> expand( extra_char_leng ); + list_ptr.p -> resize( extra_char_leng ); } v_sz += extra_oids; set_mode(UPDATE, true); - return ok; + return true; } @@ -275,7 +270,7 @@ debug(cerr, int(list_ptr.p)); if ( list_ptr.p == 0 ) throw(stringException("zero list_ptr.p value")); - memcpy(z, list_ptr.p -> get() + offset, OID_T_SZ); + memcpy(z, list_ptr.p -> c_str() + offset, OID_T_SZ); } //MESSAGE(cerr, "oid_list::operator() done"); @@ -363,7 +358,7 @@ oid_list::update_component(int index, const oid_t& new_oid) if ( list_ptr.p == 0 ) throw(stringException("zero list_ptr.p value")); - list_ptr.p -> update(z, OID_T_SZ, (index-1)*OID_T_SZ); + list_ptr.p -> replace((index-1)*OID_T_SZ, OID_T_SZ, z); } //MESSAGE(cerr, "oid_list::update_component() done"); @@ -435,8 +430,8 @@ io_status oid_list::asciiIn(istream& in) } else { delete list_ptr.p; - list_ptr.p = new ostring(0); - list_ptr.p -> set(oid_array, v_sz); + list_ptr.p = new string(0); + list_ptr.p -> assign(oid_array, v_sz); } delete [] oid_array; diff --git a/cde/lib/DtMmdb/object/oid_list.h b/cde/lib/DtMmdb/object/oid_list.h index 8c8f1808b..ae3ca86a4 100644 --- a/cde/lib/DtMmdb/object/oid_list.h +++ b/cde/lib/DtMmdb/object/oid_list.h @@ -51,7 +51,6 @@ #ifndef _oid_list_h #define _oid_list_h 1 -#include "utility/ostring.h" #include "dstr/dlist.h" #include "dstr/dlist_void_ptr_cell.h" #include "object/oid.h" @@ -71,7 +70,7 @@ protected: union { mmdb_pos_t loc; - ostring* p; + string* p; } list_ptr; protected: diff --git a/cde/lib/DtMmdb/object/oid_t.C b/cde/lib/DtMmdb/object/oid_t.C index 0cc7c567e..f57f18430 100644 --- a/cde/lib/DtMmdb/object/oid_t.C +++ b/cde/lib/DtMmdb/object/oid_t.C @@ -91,7 +91,7 @@ oid_t::oid_t(const char* source, Boolean ascii_format, Boolean swap_order) memcpy((char*)&v_i_code, source, sizeof(v_i_code)); if ( swap_order == true ) - ORDER_SWAP_LONG(v_i_code); + ORDER_SWAP_I_CODE_T(v_i_code); } else { istringstream in((char*)source); @@ -248,7 +248,7 @@ void oid_t::to_char_string(char* sink, Boolean swap_order) const if ( swap_order == true ) { i_code_t x = v_i_code; - ORDER_SWAP_LONG(x); + ORDER_SWAP_I_CODE_T(x); memcpy(sink, (char*)&x, sizeof(x)); } else memcpy(sink, (char*)&v_i_code, sizeof(v_i_code)); diff --git a/cde/lib/DtMmdb/object/oid_t.h b/cde/lib/DtMmdb/object/oid_t.h index a2a0e3649..3b4c0ea0e 100644 --- a/cde/lib/DtMmdb/object/oid_t.h +++ b/cde/lib/DtMmdb/object/oid_t.h @@ -65,6 +65,7 @@ typedef unsigned short c_code_t; typedef mmdb_pos_t i_code_t; #define OID_T_SZ (sizeof(i_code_t)) +#define ORDER_SWAP_I_CODE_T(x) ORDER_SWAP(i_code_t, x) /************************************* // class code root diff --git a/cde/lib/DtMmdb/oliasdb/c_api.C b/cde/lib/DtMmdb/oliasdb/c_api.C index e77d6df1f..61ed62e14 100644 --- a/cde/lib/DtMmdb/oliasdb/c_api.C +++ b/cde/lib/DtMmdb/oliasdb/c_api.C @@ -25,15 +25,6 @@ #include "oliasdb/DtMmdb.h" #include -#if ( ARCH == hpux) -extern "C" -char __pure_virtual_called() -{ - return 0; -} -#endif - - #ifdef DEBUG extern "C" diff --git a/cde/lib/DtMmdb/oliasdb/c_api_pure_virtual.C b/cde/lib/DtMmdb/oliasdb/c_api_pure_virtual.C index 12d415851..8f007f024 100644 --- a/cde/lib/DtMmdb/oliasdb/c_api_pure_virtual.C +++ b/cde/lib/DtMmdb/oliasdb/c_api_pure_virtual.C @@ -28,22 +28,13 @@ extern "C" { -#if defined(hpux) -char __pure_virtual_called() -{ - fprintf(stderr, "DtMmdb: pure virtual called\n"); - exit (-1); - return 0; -} -#else #if defined(SVR4) && defined(SC3) void _pure_error_() { fprintf(stderr, "DtMmdb: pure virtual called\n"); exit (-1); } -#else -#ifdef _AIX +#elif _AIX void __PureVirtualCalled() { fprintf(stderr, "DtMmdb: pure virtual called\n"); @@ -57,8 +48,6 @@ void __pure_virtual_called() exit (-1); } -#endif -#endif #endif } diff --git a/cde/lib/DtMmdb/schema/desc.h b/cde/lib/DtMmdb/schema/desc.h index 7c0c71335..a2c2b5f19 100644 --- a/cde/lib/DtMmdb/schema/desc.h +++ b/cde/lib/DtMmdb/schema/desc.h @@ -59,7 +59,7 @@ #define desc_print3(s, n, x) s << " " << n << "=" << (x) << ":\\" << endl #define desc_print_end3(s, n, x) s << " " << n << "=" << (x) << endl -#if !defined ( __STDC__) && !defined (hpux) +#if !defined ( __STDC__) #define desc_print(s, x) s << " " << "x" << "=" << (x) << ":\\\n" #define desc_print_end(s, x) s << " " << "x" << "=" << (x) << "\n" #else diff --git a/cde/lib/DtMmdb/schema/index_desc.C b/cde/lib/DtMmdb/schema/index_desc.C index 0f3587cce..c82a13df8 100644 --- a/cde/lib/DtMmdb/schema/index_desc.C +++ b/cde/lib/DtMmdb/schema/index_desc.C @@ -164,7 +164,7 @@ handler* btree_index_desc::init_handler(object_dict& dict) (*(btree_index_handler*)v_handler_ptr) -> init_data_member( (inv_lists_handler*)inv_handler, - form("%s/%s", get_agent_nm(), dict.db_path()) + form("%s/%s", dict.db_path(), get_agent_nm()) ); (*(btree_index_handler*)v_handler_ptr) -> set_selector(position) ; diff --git a/cde/lib/DtMmdb/schema/object_dict.h b/cde/lib/DtMmdb/schema/object_dict.h index d863d7bd6..72d204e7c 100644 --- a/cde/lib/DtMmdb/schema/object_dict.h +++ b/cde/lib/DtMmdb/schema/object_dict.h @@ -53,7 +53,6 @@ #define _object_dict 1 #include "dstr/bset.h" -#include "utility/ostring.h" #include "object/handler.h" #include "mgrs/template_mgr.h" diff --git a/cde/lib/DtMmdb/storage/spointer.h b/cde/lib/DtMmdb/storage/spointer.h index f45641bba..aa13b45e0 100644 --- a/cde/lib/DtMmdb/storage/spointer.h +++ b/cde/lib/DtMmdb/storage/spointer.h @@ -118,7 +118,7 @@ public: }; void swap_order() { - ORDER_SWAP_LONG(fwd_ptr); + ORDER_SWAP_MMDB_POS_T(fwd_ptr); ORDER_SWAP_UINT(header.int_view); swapped = true; }; diff --git a/cde/lib/DtMmdb/utility/Makefile.am b/cde/lib/DtMmdb/utility/Makefile.am index 10beddabc..f9842303e 100644 --- a/cde/lib/DtMmdb/utility/Makefile.am +++ b/cde/lib/DtMmdb/utility/Makefile.am @@ -4,7 +4,7 @@ noinst_LTLIBRARIES = libutility.la libutility_la_CXXFLAGS = -DPORTABLE_DB -I.. -libutility_la_SOURCES = funcs.C ostring.C pm_random.C \ +libutility_la_SOURCES = funcs.C pm_random.C \ atoi_pearson.C xtime.C buffer.C \ atoi_larson.C atomic_lock.C rw_lock.C \ atoi_fast.C filter.C mmdb_exception.C \ diff --git a/cde/lib/DtMmdb/utility/atoi_fast.C b/cde/lib/DtMmdb/utility/atoi_fast.C index f9bf41e5e..a598d32a6 100644 --- a/cde/lib/DtMmdb/utility/atoi_fast.C +++ b/cde/lib/DtMmdb/utility/atoi_fast.C @@ -98,7 +98,7 @@ union u_tag { int atoi_fast::atoi(const key_type& k, int offset) const { - char* string = k.get(); + const char* string = k.c_str(); int l = k.size(); return atoi((const char*)string, l, offset, 0); } diff --git a/cde/lib/DtMmdb/utility/atoi_larson.C b/cde/lib/DtMmdb/utility/atoi_larson.C index 91695dd62..88e104ec7 100644 --- a/cde/lib/DtMmdb/utility/atoi_larson.C +++ b/cde/lib/DtMmdb/utility/atoi_larson.C @@ -73,7 +73,7 @@ atoi_larson::atoi(const char* str, int sz, int, int rang) const int atoi_larson::atoi(const key_type& k, int) const { - char* string = k.get(); + const char* string = k.c_str(); int l = k.size(); unsigned int sum = 0; diff --git a/cde/lib/DtMmdb/utility/atoi_larson.h b/cde/lib/DtMmdb/utility/atoi_larson.h index e21125d05..9bf2f5ff0 100644 --- a/cde/lib/DtMmdb/utility/atoi_larson.h +++ b/cde/lib/DtMmdb/utility/atoi_larson.h @@ -52,6 +52,7 @@ #else #include #endif +#include #include "key.h" // Based on Larson's algorithm presented in CACM ???. diff --git a/cde/lib/DtMmdb/utility/atoi_pearson.C b/cde/lib/DtMmdb/utility/atoi_pearson.C index afd001288..1a3c3a671 100644 --- a/cde/lib/DtMmdb/utility/atoi_pearson.C +++ b/cde/lib/DtMmdb/utility/atoi_pearson.C @@ -129,7 +129,7 @@ union u_tag { int atoi_pearson::atoi(const key_type& k, int offset) const { - char* string = k.get(); + const char* string = k.c_str(); int l = k.size(); return atoi((const char*)string, l, offset, 0); } diff --git a/cde/lib/DtMmdb/utility/debug.h b/cde/lib/DtMmdb/utility/debug.h index 1bbc98c85..d4401331a 100644 --- a/cde/lib/DtMmdb/utility/debug.h +++ b/cde/lib/DtMmdb/utility/debug.h @@ -48,7 +48,7 @@ #ifdef DEBUG -#if !defined ( __STDC__) && !defined (hpux) +#if !defined ( __STDC__) #define debug(s, x) s << "x" << " = " << (x) << "\n" #else #define debug(s, x) s << #x << " = " << (x) << "\n" diff --git a/cde/lib/DtMmdb/utility/filebuf.C b/cde/lib/DtMmdb/utility/filebuf.C index a0395d7fa..d08dbe7fa 100644 --- a/cde/lib/DtMmdb/utility/filebuf.C +++ b/cde/lib/DtMmdb/utility/filebuf.C @@ -26,10 +26,6 @@ #include #include -#if !defined(hpux) && !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif - #include #include diff --git a/cde/lib/DtMmdb/utility/funcs.C b/cde/lib/DtMmdb/utility/funcs.C index 44f1eb68d..0f78ee330 100644 --- a/cde/lib/DtMmdb/utility/funcs.C +++ b/cde/lib/DtMmdb/utility/funcs.C @@ -741,7 +741,7 @@ Boolean cc_is_digit(istream& in) unsigned long disk_space(const char* path) { -#if defined (hpux) || defined (SVR4) || defined(CSRG_BASED) +#if defined (SVR4) || defined(CSRG_BASED) struct statvfs statfs_buf; #else struct statfs statfs_buf; @@ -749,7 +749,7 @@ unsigned long disk_space(const char* path) long free_bytes; -#if defined (hpux) || defined (SVR4) || defined(CSRG_BASED) +#if defined (SVR4) || defined(CSRG_BASED) if ( statvfs(path, &statfs_buf) == 0 ) { free_bytes = statfs_buf.f_bavail * statfs_buf.f_frsize ; #else diff --git a/cde/lib/DtMmdb/utility/funcs.h b/cde/lib/DtMmdb/utility/funcs.h index 9efeecef1..b4253e4a4 100644 --- a/cde/lib/DtMmdb/utility/funcs.h +++ b/cde/lib/DtMmdb/utility/funcs.h @@ -52,15 +52,7 @@ #ifndef _funcs_h #define _funcs_h 1 -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif -#if defined(hpux) || defined(sgi) || \ - defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#else -#include -#endif #include #include #include diff --git a/cde/lib/DtMmdb/utility/key.h b/cde/lib/DtMmdb/utility/key.h index 2e690b335..156a258ed 100644 --- a/cde/lib/DtMmdb/utility/key.h +++ b/cde/lib/DtMmdb/utility/key.h @@ -45,8 +45,8 @@ #ifndef _key_h #define _key_h 1 -#include "utility/ostring.h" +#include -typedef ostring key_type; +typedef std::string key_type; #endif diff --git a/cde/lib/DtMmdb/utility/macro.h b/cde/lib/DtMmdb/utility/macro.h index 295619f83..f88c3ebfe 100644 --- a/cde/lib/DtMmdb/utility/macro.h +++ b/cde/lib/DtMmdb/utility/macro.h @@ -77,48 +77,18 @@ /* little endian to/from big endian swap macros. */ -#define ORDER_SWAP_LONG(x) \ -{ \ - long tmp_long = x; \ - ((unsigned char*)&x)[0] = ((unsigned char*)&tmp_long)[3]; \ - ((unsigned char*)&x)[1] = ((unsigned char*)&tmp_long)[2]; \ - ((unsigned char*)&x)[2] = ((unsigned char*)&tmp_long)[1]; \ - ((unsigned char*)&x)[3] = ((unsigned char*)&tmp_long)[0]; \ +#define ORDER_SWAP(type, value) \ +{ \ + type tmp = value; \ + int n = sizeof(type) - 1; \ + for (int i = 0; i <= n; ++i) \ + ((uint8_t *)&value)[i] = ((uint8_t *)&tmp)[n - i]; \ } -#define ORDER_SWAP_FLOAT(x) \ -{ \ - float tmp_float = x; \ - ((unsigned char*)&x)[0] = ((unsigned char*)&tmp_float)[3]; \ - ((unsigned char*)&x)[1] = ((unsigned char*)&tmp_float)[2]; \ - ((unsigned char*)&x)[2] = ((unsigned char*)&tmp_float)[1]; \ - ((unsigned char*)&x)[3] = ((unsigned char*)&tmp_float)[0]; \ -} - -#define ORDER_SWAP_INT(x) \ -{ \ - int tmp_uint = x; \ - ((unsigned char*)&x)[0] = ((unsigned char*)&tmp_uint)[3]; \ - ((unsigned char*)&x)[1] = ((unsigned char*)&tmp_uint)[2]; \ - ((unsigned char*)&x)[2] = ((unsigned char*)&tmp_uint)[1]; \ - ((unsigned char*)&x)[3] = ((unsigned char*)&tmp_uint)[0]; \ -} - -#define ORDER_SWAP_UINT(x) \ -{ \ - unsigned int tmp_uint = x; \ - ((unsigned char*)&x)[0] = ((unsigned char*)&tmp_uint)[3]; \ - ((unsigned char*)&x)[1] = ((unsigned char*)&tmp_uint)[2]; \ - ((unsigned char*)&x)[2] = ((unsigned char*)&tmp_uint)[1]; \ - ((unsigned char*)&x)[3] = ((unsigned char*)&tmp_uint)[0]; \ -} - -#define ORDER_SWAP_USHORT(x) \ -{ \ - unsigned short tmp_ushort = x; \ - ((unsigned char*)&x)[0] = ((unsigned char*)&tmp_ushort)[1]; \ - ((unsigned char*)&x)[1] = ((unsigned char*)&tmp_ushort)[0]; \ -} - +#define ORDER_SWAP_FLOAT(x) ORDER_SWAP(float, x) +#define ORDER_SWAP_LONG(x) ORDER_SWAP(long, x) +#define ORDER_SWAP_INT(x) ORDER_SWAP(int, x) +#define ORDER_SWAP_UINT(x) ORDER_SWAP(unsigned int, x) +#define ORDER_SWAP_USHORT(x) ORDER_SWAP(unsigned short, x) +#define ORDER_SWAP_MMDB_POS_T(x) ORDER_SWAP(mmdb_pos_t, x) #endif - diff --git a/cde/lib/DtMmdb/utility/ostring.C b/cde/lib/DtMmdb/utility/ostring.C deleted file mode 100644 index 32c572050..000000000 --- a/cde/lib/DtMmdb/utility/ostring.C +++ /dev/null @@ -1,284 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* - * $XConsortium: ostring.cc /main/3 1996/06/11 17:38:07 cde-hal $ - * - * Copyright (c) 1992 HaL Computer Systems, Inc. All rights reserved. - * UNPUBLISHED -- rights reserved under the Copyright Laws of the United - * States. Use of a copyright notice is precautionary only and does not - * imply publication or disclosure. - * - * This software contains confidential information and trade secrets of HaL - * Computer Systems, Inc. Use, disclosure, or reproduction is prohibited - * without the prior express written permission of HaL Computer Systems, Inc. - * - * RESTRICTED RIGHTS LEGEND - * Use, duplication, or disclosure by the Government is subject to - * restrictions as set forth in subparagraph (c)(l)(ii) of the Rights in - * Technical Data and Computer Software clause at DFARS 252.227-7013. - * HaL Computer Systems, Inc. - * 1315 Dell Avenue, Campbell, CA 95008 - * - */ - - -#include "utility/ostring.h" - -#ifdef C_API -char* ostring::input_buf = 0; -#else -char ostring::input_buf[LBUFSIZ]; -#endif - -ostring::ostring() : v_sz(0), v_allo_sz(1) -{ - v_p = new char[1]; -} - -ostring::ostring(const int i) : v_sz(0), v_allo_sz(i+1) -{ - v_p = new char[i+1]; -} - -ostring::ostring(char* x, const int i) -{ - int w = i; - - if ( w == -1 ) { - w = strlen(x); - } - - v_sz = w; - v_allo_sz = w+1; - - v_p = new char[w+1]; - memcpy(v_p, x, w); - v_p[w] = 0; -} - -ostring::ostring(const ostring& s) : -v_sz(s.v_sz), v_allo_sz(s.v_allo_sz) -{ - v_p = new char[v_allo_sz]; - memcpy(v_p, s.v_p, v_sz); - v_p[v_sz] = 0; -} - -/* -ostring::~ostring() -{ - delete v_p; -} -*/ - -Boolean ostring::set(const char* x, int l) -{ - expand(l+1); - - memcpy(v_p, x, l); - v_p[l] = 0; - v_sz = l; - - return true; -} - -/* -Boolean ostring::set(const char* x) -{ - return set(x, strlen(x)); -} - -void ostring::reset() -{ - v_sz = 0; -} - -void ostring::set_size(const int s) -{ - v_sz = s; - v_p[v_sz] = 0; -} -*/ - -/********************************************/ -// set alloc_sz to at least new_alloc_sz bytes -/********************************************/ -Boolean ostring::expand(const int new_alloc_sz, Boolean pre_zero) -{ - if ( new_alloc_sz > v_allo_sz ) { - v_allo_sz = new_alloc_sz+1; - char* new_p = new char[v_allo_sz]; - - if ( pre_zero == true ) - memset(new_p, char(0), v_allo_sz); - - if ( v_p ) { - memcpy(new_p, v_p, v_sz); - delete [] v_p; - } - - v_p = new_p; - } - return true; -} - -char* ostring::acquire() -{ - v_allo_sz = v_sz = 0; - char *x = v_p; - v_p = 0; - return x; -} - -Boolean ostring::append(const char* x, int l) -{ - expand(v_sz+l+1); - - memcpy(v_p+v_sz, x, l); - v_sz += l; - v_p[v_sz] = 0; - return true; -} - -Boolean ostring::update(const char* x, int l, int offset) -{ - if ( offset + l > v_sz ) { - MESSAGE(cerr, "update(): char chunk too small"); - throw(boundaryException(0, v_sz, offset+l)); - } - - memcpy(v_p+offset, x, l); - return true; -} - -int ostring::substr(ostring& s) -{ - if ( v_p == 0 || s.v_p == 0 ) - return -1; - - char* sub_p = strstr(v_p, s.v_p); - - if ( sub_p == 0 ) - return -1; - else - return (int)(sub_p - v_p); -} - -/* -int ostring::size() const -{ - return v_sz; -} - -int ostring::alloc_size() const -{ - return v_allo_sz; -} -*/ - -ostring& ostring::operator +(ostring& s) -{ - int l1 = v_sz; - int l2 = s.v_sz; - - ostring *new_ostring = new ostring(l1+l2); - - int i; - for ( i = 0; i get() ; - char* y_str = y.get() ; - - int x_sz = this -> size() ; - int y_sz = y.size() ; - - if ( x_sz == y_sz ) { - if ( memcmp(x_str, y_str, x_sz ) < 0 ) - return true; - else - return false; - } else { - - int min = MIN(x_sz, y_sz); - - for ( int i=0; i y_str[i] ) - return false; - } - if ( x_sz < y_sz ) - return true; - else - return false; - } -} - -Boolean ostring::string_EQ(ostring& y) const -{ - if ( this -> size() == y.size() && - memcmp(this -> get(), y.get(), this -> size() ) == 0 - ) - return true; - else - return false; -} - -ostream& operator <<(ostream& s, const ostring& o) -{ - if ( o.v_p ) { - //s << o.v_sz << ":"; - for ( int i=0; i>(istream& s, ostring& o) -{ - s.getline( o.input_buf, LBUFSIZ ); - o.set(o.input_buf); - return s; -} - - -ostring* ostring::operator+= (ostring* ) -{ - return 0; -} - -ostring* ostring::concate_with(...) -{ - return 0 ; -} - diff --git a/cde/lib/DtMmdb/utility/ostring.h b/cde/lib/DtMmdb/utility/ostring.h deleted file mode 100644 index b969b3add..000000000 --- a/cde/lib/DtMmdb/utility/ostring.h +++ /dev/null @@ -1,113 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* - * $XConsortium: ostring.h /main/3 1996/06/11 17:38:12 cde-hal $ - * - * Copyright (c) 1992 HaL Computer Systems, Inc. All rights reserved. - * UNPUBLISHED -- rights reserved under the Copyright Laws of the United - * States. Use of a copyright notice is precautionary only and does not - * imply publication or disclosure. - * - * This software contains confidential information and trade secrets of HaL - * Computer Systems, Inc. Use, disclosure, or reproduction is prohibited - * without the prior express written permission of HaL Computer Systems, Inc. - * - * RESTRICTED RIGHTS LEGEND - * Use, duplication, or disclosure by the Government is subject to - * restrictions as set forth in subparagraph (c)(l)(ii) of the Rights in - * Technical Data and Computer Software clause at DFARS 252.227-7013. - * HaL Computer Systems, Inc. - * 1315 Dell Avenue, Campbell, CA 95008 - * - */ - - -#ifndef _ostring_h -#define _ostring_h 1 - -#include "utility/funcs.h" - -class ostring { - -public: - ostring(); - ostring(const int chunk_size); - ostring(char* str, const int str_sz = -1); // -1 means take strlen(str) - ostring(const ostring&); - virtual ~ostring() { delete [] v_p; }; - -// length of the string - int size() const { return v_sz; }; -// length of the allocated chunk - int alloc_size() const { return v_allo_sz; }; - - ostring& operator +(ostring&); // merge of two strings - int substr(ostring&); // substring matching - -// set string to content x - Boolean set(const char* x) { return set(x, strlen(x)); }; - - Boolean set(const char* x, int i); // set string to content x with length i - Boolean append(const char* x, int l); // append a string x of length i - Boolean update(const char* x, int l, int offset); // update a substring x of length i at 'offset'. offset + l should be sz - -//set alloc_sz to at least new_alloc_sz bytes -// pre_zero = true -> zero new space before copy old content over - Boolean expand(const int, Boolean pre_zero = false); - - void reset() { v_sz = 0; }; - void set_size(const int s) { v_sz = s; v_p[v_sz] = 0; }; - - char* get() const { return v_p; }; // get char pointer p - - char* acquire() ; // return what is pointed at by p and reset - // alloc_sz, sz, and p to 0; - -// append x to this and return this. - ostring* operator+= (ostring* x); - -// concate all ostring arguments (ostring* 's) to this and return this. - ostring* concate_with(...); - - Boolean string_LS(ostring&) const; - Boolean string_EQ(ostring&) const; - - friend ostream& operator <<(ostream&, const ostring&); - friend istream& operator >>(istream&, ostring&); - -protected: - char *v_p; // memory chunk pointer - int v_sz; // string size - int v_allo_sz; // allocated memory chunk size - -#ifdef C_API - static char* input_buf; - - friend void initialize_MMDB(); - friend void quit_MMDB(); -#else - static char input_buf[LBUFSIZ]; -#endif -}; - -#endif diff --git a/cde/lib/DtMmdb/utility/streambuf.C b/cde/lib/DtMmdb/utility/streambuf.C index 959b62412..f01ad68e3 100644 --- a/cde/lib/DtMmdb/utility/streambuf.C +++ b/cde/lib/DtMmdb/utility/streambuf.C @@ -22,12 +22,7 @@ */ /* $XConsortium: streambuf.C /main/8 1996/08/21 15:55:14 drk $ */ #include "utility/c_streambuf.h" - -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#else -#include -#endif #define DEF_BUF_SIZ 4096 diff --git a/cde/lib/DtMmdb/utility/types.h b/cde/lib/DtMmdb/utility/types.h index b7ab58603..33a38beba 100644 --- a/cde/lib/DtMmdb/utility/types.h +++ b/cde/lib/DtMmdb/utility/types.h @@ -47,8 +47,10 @@ #define _types_h 1 #ifdef C_API +#include #include "utility/c_iostream.h" #else +#include #include using namespace std; #endif @@ -60,15 +62,7 @@ typedef char Boolean; typedef void* voidPtr; typedef char* charPtr; -typedef short s_int16; -typedef unsigned short u_int16; - -typedef int s_int32; -typedef unsigned int u_int32; - -typedef long s_long32; - -typedef float s_float32; +typedef intptr_t mmdb_pos_t; enum io_status { done, fail }; @@ -76,14 +70,4 @@ class root; typedef Boolean (*cmp_func_ptr_t)(const void*, const void*); typedef void (*app_func_ptr_t)(const void*); typedef void (*print_func_ptr_t)(ostream&, const void*); - -//enum Boolean { true, false }; - -#if !defined(__linux__) && !defined(CSRG_BASED) -typedef long mmdb_pos_t; -#else -typedef int mmdb_pos_t; -#endif - - #endif diff --git a/cde/lib/DtMrm/DtMrm.c b/cde/lib/DtMrm/DtMrm.c index a642a8dc7..acde8b8f9 100644 --- a/cde/lib/DtMrm/DtMrm.c +++ b/cde/lib/DtMrm/DtMrm.c @@ -85,10 +85,6 @@ static char rcsid[] = "$TOG: DtMrm.c /main/4 1999/10/14 13:35:44 mgreess $" * INCLUDE FILES * */ -#if defined(__hpux) -#include -#endif - #include #include #include diff --git a/cde/lib/DtMrm/libDtMrm.elist b/cde/lib/DtMrm/libDtMrm.elist deleted file mode 100644 index ba347accb..000000000 --- a/cde/lib/DtMrm/libDtMrm.elist +++ /dev/null @@ -1,16 +0,0 @@ -/**************************************************************************** - * Export list for libDtMrm. - * This list *must* be updated whenever a change is made to the libDtMrm API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libDtMrm.elist /main/1 1999/09/08 11:53:46 mgreess $ - *****************************************************************************/ - -public DtMrmInitialize diff --git a/cde/lib/DtPamSvc/Makefile.am b/cde/lib/DtPamSvc/Makefile.am deleted file mode 100644 index 7c21e8d8f..000000000 --- a/cde/lib/DtPamSvc/Makefile.am +++ /dev/null @@ -1,17 +0,0 @@ -MAINTAINERCLEANFILES = Makefile.in - -lib_LTLIBRARIES = libDtPamSvc.la - -# the PamSvc.h header file is located in include/Dt/ -libDtPamSvc_la_SOURCES = PamSvc.c ${top_srcdir}/include/Dt/PamSvc.h - -libDtPamSvc_la_LIBADD = -lpam - -# in order to try to keep lib versions the same across platforms, (2.1.0) -if BSD -libDtPamSvc_la_LDFLAGS = -version-info 2:1:0 -else -libDtPamSvc_la_LDFLAGS = -version-info 3:0:1 -endif - - diff --git a/cde/lib/DtPamSvc/PamSvc.c b/cde/lib/DtPamSvc/PamSvc.c deleted file mode 100644 index 8addc6d62..000000000 --- a/cde/lib/DtPamSvc/PamSvc.c +++ /dev/null @@ -1,310 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $TOG: pam_svc.c /main/5 1997/06/04 16:30:21 samborn $ */ -/******************************************************************************* - ** - ** pam_svc.c 1.10 95/11/25 - ** - ** Copyright 1993, 1994, 1995 Sun Microsystems, Inc. All rights reserved. - ** - ** This file contains procedures specific to use of - ** PAM (Pluggable Authentication Module) security library. - ** - *******************************************************************************/ -/* * - * (c) Copyright 1993, 1994 Hewlett-Packard Company * - * (c) Copyright 1993, 1994 International Business Machines Corp. * - * (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc. * - * (c) Copyright 1993, 1994 Novell, Inc. * - */ - -/* - * Header Files - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#if defined(__linux__) -#include -#endif -#include
- -/* - * Local function declarations - */ - -static int login_conv(int num_msg, const struct pam_message **msg, - struct pam_response **response, void *appdata_ptr); - -static char* create_devname(char* short_devname); - -/* - * Local structures and variables - */ - -static struct pam_conv pam_conv = {login_conv, NULL}; -static char *saved_user_passwd; -static pam_handle_t *pamh = NULL; - -/**************************************************************************** - * PamInit - * - * Initialize or Update PAM datastructures. - * - ****************************************************************************/ - -static int PamInit(char* prog_name, - char* user, - char* line_dev, - char* display_name) -{ - int status=PAM_SUCCESS; - - if (!pamh) { - /* Open PAM (Plugable Authentication module ) connection */ - status = pam_start( prog_name, user, &pam_conv, &pamh ); - if (status != PAM_SUCCESS) pamh = NULL; - } else { - if (prog_name) pam_set_item(pamh, PAM_SERVICE, prog_name); - if (user) pam_set_item(pamh, PAM_USER, user); - } - - if (status == PAM_SUCCESS) { - if (line_dev) pam_set_item(pamh, PAM_TTY, line_dev); - if (display_name) pam_set_item(pamh, PAM_RHOST, display_name); - } - - return(status); -} - -/**************************************************************************** - * _DtAuthentication - * - * Authenticate that user / password combination is legal for this system - * - ****************************************************************************/ - -int _DtAuthentication ( char* prog_name, - char* display_name, - char* user_passwd, - char* user, - char* line ) -{ - int status; - char* line_str = line ? line : "NULL"; - char* line_dev = create_devname(line_str); - - if (!user_passwd) - /* Password challenge required for dtlogin authentication */ - return(PAM_AUTH_ERR); - - status = PamInit(prog_name, user, line_dev, display_name); - - if (status == PAM_SUCCESS) { - saved_user_passwd = user_passwd; - status = pam_authenticate( pamh, 0 ); - }; - - if (status != PAM_SUCCESS) { - if (pamh) { - pam_end(pamh, PAM_ABORT); - pamh=NULL; - } - } - - return(status); -} - -/**************************************************************************** - * _DtAccounting - * - * Work related to open and close of user sessions - ****************************************************************************/ - -int _DtAccounting( char* prog_name, - char* display_name, - char* entry_id, - char* user, - char* line, - pid_t pid, - int entry_type, - int exitcode ) -{ - int session_type, status; - char *line_str = line ? line : "NULL"; - char *line_dev = create_devname(line_str); - - /* Open PAM (Plugable Authentication module ) connection */ - - status = PamInit(prog_name, user, line_dev, display_name); - - /* Session accounting */ - - if (status == PAM_SUCCESS) switch(entry_type) { - case DEAD_PROCESS: - status = pam_close_session(pamh, 0); - break; - - case USER_PROCESS: - case LOGIN_PROCESS: - default: - status = pam_open_session(pamh, 0); - break; - } - - free(line_dev); - return(status); -} - -/**************************************************************************** - * _DtSetCred - * - * Set Users login credentials: uid, gid, and group lists - ****************************************************************************/ - -int _DtSetCred(char* prog_name, char* user, uid_t uid, gid_t gid) -{ - int cred_type, status; - - status = PamInit(prog_name, user, NULL, NULL); - - /* Set users credentials */ - - if (status == PAM_SUCCESS && setgid(gid) == -1) - status = DT_BAD_GID; - - if ((status == PAM_SUCCESS && - !user) || (initgroups(user, gid) == -1)) - status = DT_INITGROUP_FAIL; - - if (status == PAM_SUCCESS) - status = pam_setcred(pamh, PAM_ESTABLISH_CRED); - - if (status == PAM_SUCCESS && (setuid(uid) == -1)) - status = DT_BAD_UID; - - return(status); -} - -/*************************************************************************** - * create_devname - * - * A utility function. Takes short device name like "console" and returns - * a long device name like "/dev/console" - ***************************************************************************/ - -static char* create_devname(char* short_devname) -{ - char* long_devname; - - if (short_devname == NULL) - short_devname = ""; - - long_devname = (char *) malloc (strlen(short_devname) + 5); - - if (long_devname == NULL) - return(NULL); - - strcpy(long_devname,"/dev/"); - strcat(long_devname, short_devname); - - return(long_devname); -} - -/***************************************************************************** - * login_conv(): - * - * This is a conv (conversation) function called from the PAM - * authentication scheme. It returns the user's password when requested by - * internal PAM authentication modules and also logs any internal PAM error - * messages. - *****************************************************************************/ - -static int login_conv(int num_msg, const struct pam_message **msg, - struct pam_response **response, void *appdata_ptr) -{ - const struct pam_message *m; - struct pam_response *r; - char *temp; - int k; - -#ifdef lint - conv_id = conv_id; -#endif - if (num_msg <= 0) - return (PAM_CONV_ERR); - - *response = (struct pam_response*) - calloc(num_msg, sizeof (struct pam_response)); - if (*response == NULL) - return (PAM_CONV_ERR); - - (void) memset(*response, 0, sizeof (struct pam_response)); - - k = num_msg; - m = *msg; - r = *response; - while (k--) { - - switch (m->msg_style) { - - case PAM_PROMPT_ECHO_OFF: - if (saved_user_passwd != NULL) { - r->resp = (char *) malloc(strlen(saved_user_passwd)+1); - if (r->resp == NULL) { - /* __pam_free_resp(num_msg, *response); */ - *response = NULL; - return (PAM_CONV_ERR); - } - (void) strcpy(r->resp, saved_user_passwd); - r->resp_retcode=0; - } - - m++; - r++; - break; - - case PAM_ERROR_MSG: - m++; - r++; - break; - - case PAM_TEXT_INFO: - m++; - r++; - break; - - default: - break; - } - } - - return (PAM_SUCCESS); -} diff --git a/cde/lib/DtPrint/libDtPrint.elist b/cde/lib/DtPrint/libDtPrint.elist deleted file mode 100644 index bcb629575..000000000 --- a/cde/lib/DtPrint/libDtPrint.elist +++ /dev/null @@ -1,150 +0,0 @@ -/* $XConsortium: libDtPrint.elist /main/15 1996/08/19 17:12:44 cde-hp $ */ - -/************************************************************************* - * Export list for libDtPrint - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public DtCreatePrintSetupBox -public DtCreatePrintSetupDialog -public DtPrintCopySetupData -public DtPrintFillSetupData -public DtPrintFreeSetupData -public DtPrintResetConnection -public dtPrintSetupBoxWidgetClass - - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private _DtCreatePDMJobSetup -private _DtPrintGetMessage -private _DtPrintSetupBoxCreateBottomSeparator -private _DtPrintSetupBoxCreateButtonSeparator -private _DtPrintSetupBoxCreateCancelButton -private _DtPrintSetupBoxCreateCopiesControl -private _DtPrintSetupBoxCreateDescription -private _DtPrintSetupBoxCreateDescriptionLabel -private _DtPrintSetupBoxCreateDestinationRadioBox -private _DtPrintSetupBoxCreateFileNameLabel -private _DtPrintSetupBoxCreateFileNameText -private _DtPrintSetupBoxCreateHelpButton -private _DtPrintSetupBoxCreatePrintButton -private _DtPrintSetupBoxCreatePrinterInfoButton -private _DtPrintSetupBoxCreatePrinterNameCombo -private _DtPrintSetupBoxCreatePrinterNameLabel -private _DtPrintSetupBoxCreateSelectFileButton -private _DtPrintSetupBoxCreateSelectPrinterButton -private _DtPrintSetupBoxCreateSetupButton -private _DtPrintSetupBoxCreateTopSeparator -private _DtPrintSetupBoxGeoMatrixCreate -private _DtPrintSetupBoxGetCopies -private _DtPrintSetupBoxGetDescription -private _DtPrintSetupBoxGetFileName -private _DtPrintSetupBoxGetPrinterName -private _DtPrintSetupBoxNoGeoRequest -private dtPrintSetupBoxClassRec - -private _DtPrintCreateHdrFtrFrame -private _DtPrintHdrFtrFrameEnumToWidget -private _DtPrintHdrFtrFrameMenuWidgets -private _DtPrintGetHdrFtrData -private _DtPrintGetHdrFtrIndex -private _DtPrintGetHdrFtrString -private _DtPrintSetHdrFtrByData -private _DtPrintSetHdrFtrByIndex -private _DtPrintSetHdrFtrByString - -private _DtPrintCreateMarginFrame -private _DtPrintMarginFrameEnumToWidget -private _DtPrintGetMarginSpec -private _DtPrintSetMarginSpec - - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal _DtPrMsgPrintSetupBox_0000 -internal _DtPrMsgPrintSetupBox_0001 -internal _DtPrMsgPrintSetupBox_0002 -internal _DtPrMsgPrintSetupBox_0003 -internal _DtPrMsgPrintSetupBox_0004 -internal _DtPrMsgPrintSetupBox_0005 -internal _DtPrMsgPrintSetupBox_0006 -internal _DtPrMsgPrintSetupBox_0007 -internal _DtPrMsgPrintSetupBox_0008 -internal _DtPrMsgPrintSetupBox_0009 -internal _DtPrMsgPrintSetupBox_0010 -internal _DtPrMsgPrintSetupBox_0011 -internal _DtPrMsgPrintSetupBox_0012 -internal _DtPrMsgPrintSetupBox_0013 -internal _DtPrMsgPrintSetupBox_0014 -internal _DtPrMsgPrintSetupBox_0015 -internal _DtPrMsgPrintSetupBox_0016 -internal _DtPrMsgPrintSetupBox_0017 -internal _DtPrMsgPrintSetupBox_0018 -internal _DtPrMsgPrintSetupBox_0019 -internal _DtPrMsgPrintSetupBox_0020 -internal _DtPrMsgPrintSetupBox_0021 -internal _DtPrMsgPrintSetupBox_0022 -internal _DtPrMsgPrintSetupBox_0023 -internal _DtPrMsgPrintSetupBox_0024 -internal _DtPrMsgPrintSetupBox_0025 -internal _DtPrMsgPrintSetupBox_0026 -internal _DtPrMsgPrintSetupBox_0027 -internal _DtPrMsgPrintSetupBox_0028 -internal _DtPrMsgPrintSetupBox_0029 -internal _DtPrMsgPrintSetupBox_0030 -internal _DtPrMsgPrintSetupBox_0031 -internal _DtPrMsgPrintSetupBox_0032 -internal _DtPrMsgPrintSetupBox_0033 -internal _DtPrMsgPrintSetupBox_0034 -internal _DtPrMsgPrintSetupBox_0035 -internal _DtPrMsgPrintSetupBox_0036 - -internal _DtPrMsgPrintOption_0000 -internal _DtPrMsgPrintOption_0001 -internal _DtPrMsgPrintOption_0002 -internal _DtPrMsgPrintOption_0003 -internal _DtPrMsgPrintOption_0004 -internal _DtPrMsgPrintOption_0005 -internal _DtPrMsgPrintOption_0006 -internal _DtPrMsgPrintOption_0007 -internal _DtPrMsgPrintOption_0008 -internal _DtPrMsgPrintOption_0009 - -internal _DtPrMsgPrintDlgMgr_0000 -internal _DtPrMsgPrintDlgMgr_0001 -internal _DtPrMsgPrintDlgMgr_0002 - -internal _DtPrintCreateXPrinterSpecifier -internal _DtPrintDefProcInitialize -internal _DtPrintDefProcManageErrorBox -internal _DtPrintFreeStringList -internal _DtPrintGetDefaultXPrinterName -internal _DtPrintGetXpPrinterList -internal _DtPrintGetXpServerList -internal _DtPrintParseXDisplaySpecifier -internal _DtPrintParseXPrinterSpecifier -internal _DtPrintSetupBoxSelectFileProc -internal _DtPrintSetupBoxSelectXPrinterProc -internal _DtPrintSetupBoxVerifyXPrinterProc -internal _DtPrintSetupBoxXPrinterInfoProc -internal _DtPrintVerifyXPrinter diff --git a/cde/lib/DtSearch/Makefile.am b/cde/lib/DtSearch/Makefile.am index fce13b0b6..fdd8f7585 100644 --- a/cde/lib/DtSearch/Makefile.am +++ b/cde/lib/DtSearch/Makefile.am @@ -21,10 +21,6 @@ endif libDtSearch_la_LIBADD = raima/libraima.la -if SOLARIS -libDtSearch_la_LIBADD += -lm -lc -endif - libDtSearch_la_SOURCES = apndext.c ausdopen.c ausexit.c \ bmstrstr.c boolpars.c boolsrch.c \ boolyac.y cuslang.c dbchange.c \ @@ -39,5 +35,3 @@ libDtSearch_la_SOURCES = apndext.c ausdopen.c ausexit.c \ ocf.c opendblk.c ophuf.c \ readchar.c strupr.c userint.c \ vedelete.c vestatis.c vstfunct.c - - diff --git a/cde/lib/DtSearch/boolyac.y b/cde/lib/DtSearch/boolyac.y index 8e3118d1f..8c7cf41df 100644 --- a/cde/lib/DtSearch/boolyac.y +++ b/cde/lib/DtSearch/boolyac.y @@ -41,6 +41,9 @@ */ #include #include "boolpars.h" + +void yyerror(char *); +int yylex(void); %} %union { diff --git a/cde/lib/DtSearch/libDtSearch.elist b/cde/lib/DtSearch/libDtSearch.elist deleted file mode 100644 index 9e4176fcd..000000000 --- a/cde/lib/DtSearch/libDtSearch.elist +++ /dev/null @@ -1,444 +0,0 @@ -/* $TOG: libDtSearch.elist /main/4 1999/10/14 14:12:00 mgreess $ */ - -/************************************************************************* - * Export list for libDtSearch - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * - **************************************************************************/ - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public DtSearchAddMessage -public DtSearchAddUserExit -public DtSearchExit -public DtSearchFormatObjdate -public DtSearchFreeMessages -public DtSearchFreeResults -public DtSearchGetKeytypes -public DtSearchGetMaxResults -public DtSearchGetMessages -public DtSearchHasMessages -public DtSearchHighlight -public DtSearchInit -public DtSearchMergeResults -public DtSearchQuery -public DtSearchReinit -public DtSearchRemoveUserExit -public DtSearchRetrieve -public DtSearchSetMaxResults -public DtSearchSortResults -public DtSearchValidDateString - - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private ADDRcmp -private INTcmp -private OEF_audit -private OEF_discard -private OEF_news -private OEF_notesnot -private OEF_notessem -private OEF_readme -private OE_bmhtab_strlen -private OE_bmhtables -private OE_dbn -private OE_enable_markdel -private OE_enable_usernotes -private OE_expiration -private OE_fastdecode -private OE_fileio -private OE_flags -private OE_inittab_dir -private OE_objsize -private OE_prodname -private OE_prox_factor -private OE_search_type -private OE_server_dir -private OE_sitecnfg_fname -private OE_sitecnfg_mtime -private OE_uppercase_keys -private OE_words_hitlimit -private Opera_Engine -private aa_argv0 -private aa_maxhits -private aa_stderr -private add_free_space -private add_syntax_errmsg -private alloc_table -private append_ext -private ascii_charmap -private ausapi_dbnamesc -private ausapi_dbnamesv -private ausapi_msglist -private austext_dopen -private austext_exit_comm -private austext_exit_dbms -private austext_exit_endwin -private austext_exit_first -private austext_exit_last -private austext_exit_mem -private austext_exit_user -private austext_malloc -private austools_catd -private batch_size -private bmhcore -private bmhtable_build -private bmstrstr -private boolyac_AND -private boolyac_COLLOC -private boolyac_NOT -private boolyac_OR -private check_dba -private clean_wrap -private clear_hitwords -private clear_usrblk_record -private compare_llist -private compat_dbd -private con_dbd -private con_dbf -private copy_final_truthtab -private crloc -private ctb_init -private ctbl_alloc -private ctbl_free -private cutnode_llist -private d_alloc -private d_calloc -private d_close -private d_cmtype -private d_connect -private d_cotype -private d_crget -private d_crread -private d_crset -private d_crtype -private d_crwrite -private d_csmget -private d_csmread -private d_csmset -private d_csmwrite -private d_csoget -private d_csoread -private d_csoset -private d_csowrite -private d_ctbpath -private d_dbdpath -private d_dbfpath -private d_dbuserid -private d_decode_dba -private d_delete -private d_destroy -private d_discon -private d_disdel -private d_encode_dba -private d_fillnew -private d_findco -private d_findfm -private d_findlm -private d_findnm -private d_findpm -private d_free -private d_initfile -private d_initialize -private d_ismember -private d_isowner -private d_keydel -private d_keyexist -private d_keyfind -private d_keyfrst -private d_keylast -private d_keynext -private d_keyprev -private d_keyread -private d_keystore -private d_makenew -private d_mapchar -private d_members -private d_off_opt -private d_on_opt -private d_open -private d_rdcurr -private d_recfrst -private d_reclast -private d_recnext -private d_recprev -private d_recread -private d_recset -private d_recwrite -private d_renfile -private d_rerdcurr -private d_setdb -private d_setfiles -private d_setkey -private d_setmm -private d_setmo -private d_setmr -private d_setom -private d_setoo -private d_setor -private d_setpages -private d_setrm -private d_setro -private d_wrcurr -private db_glob_init -private db_global -private db_oflag -private db_pgtab_sz -private db_status -private db_txtest -private dbautorec -private dberr -private dberr_exit -private dbn_check -private delete_whitespace -private dio_clear -private dio_close -private dio_clrfile -private dio_findpg -private dio_flush -private dio_free -private dio_get -private dio_init -private dio_open -private dio_out -private dio_pzalloc -private dio_pzclr -private dio_pzdel -private dio_pznext -private dio_pzread -private dio_read -private dio_release -private dio_setdef -private dio_touch -private dio_write -private discard_to_ETX -private dtsearch_catd -private dummy_workproc -private duprec_hashsize -private ensure_end_slash -private fillnew_wordrec -private final_truthtab -private find_free_space -private find_keyword -private fldcmp -private fread_d99_header -private free_llist -private fwrite_d99_header -private gen_vec -private gen_vec_hufid -private get_element -private get_hitlist_text -private global_memory_ptr -private hc_decode -private hc_encode -private hilite_cleartext -private init_header -private init_user_interrupt -private initdbt -private inittab -private is_compatible_version -private is_concordable -private is_duprec -private is_objdatestr -private is_objdatetm -private join_llists -private jpn_parser -private key_bldcom -private key_boundary -private key_close -private key_cmpcpy -private key_delete -private key_init -private key_insert -private key_locpos -private key_open -private key_reset -private key_scan -private largest_page -private latin_charmap -private ll_access -private ll_append -private ll_first -private ll_free -private ll_next -private ll_prepend -private load_custom_language -private load_jpn_language -private load_language -private load_ocf -private load_wordtree -private nfld_check -private nowstring -private nrec_check -private nset_check -private null_dba -private null_lstrupr -private null_stemmer -private objdate2fzkstr -private objdate2tm -private objdate_in_range -private oe_initialize -private oe_unblob -private oe_write_audit_rec -private oef_table -private old_no_of_dbs -private old_size_fd -private old_size_ft -private old_size_kt -private old_size_mt -private old_size_rt -private old_size_srt -private old_size_st -private open_b -private open_dblk -private parser_invalid_wordcount -private pop_llist -private print_dbrec -private print_dittolist -private print_stems -private print_usrblk_record -private qry_has_no_NOTs -private qry_is_all_ANDs -private r_chkfld -private r_clropt -private r_delrec -private r_gfld -private r_gmem -private r_gset -private r_pfld -private r_pmem -private r_pset -private r_setopt -private r_smem -private r_tstopt -private read_wordstr -private readchar_ftext -private readchar_string -private release_shm_mem -private renfiles -private replace_ext -private retncode_str -private saveusr -private shm_id -private shutdown_now -private size_compat -private sk_free -private sort_llist -private startup -private strupr -private swab_dbrec -private swab_objrec -private swab_page -private taskinit -private termfree -private teskey_parser -private tm2objdate -private trcommit -private unload_custom_language -private unload_language -private usrblk -private ve_append_notes -private ve_browse_dba -private ve_getblobs -private ve_getrec_dba -private ve_initialize -private ve_reckey2dba -private ve_shutdown -private ve_statistical -private vista_abort -private vista_msg -private write_wordstr - - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal Db_lookup -internal Dbpg_table -internal Used_files -internal aa_check_initialization -internal aa_getnews_flag -internal aa_is_initialized -internal boolean_parse -internal boolean_search -internal cnt_open_files -internal comp_stat -internal convert_str_2_char -internal database_has_changed -internal debugging_boolsrch -internal debugging_dbswab -internal debugging_dio_close -internal debugging_dio_init -internal debugging_dopen -internal debugging_inittab -internal debugging_jpn -internal debugging_key_swabs -internal debugging_loadlang -internal debugging_loadword -internal debugging_paice -internal debugging_search_wordtree -internal debugging_teskey -internal ditsort_type -internal dump_init_tables -internal efim_qsort -internal get_next_memory_block -internal hctree -internal hctree_id -internal hctree_name -internal hctree_root -internal init_memory -internal load_ditto_str -internal max_open_files -internal oe_uninitialize -internal process_char -internal save_init_switches -internal unload_jpn_language -internal user_interrupt -internal ve_delete - -internal yychar -internal yydebug -internal yyerror -internal yylex -internal yynerrs -internal yyparse - -#if defined(hpux) -internal yymaxdepth -#endif - -#if defined(sun) -internal yy_yys -internal yy_yyv -internal yyact -internal yychk -internal yydef -internal yyerrflag -internal yyexca -internal yylval -internal yypact -internal yypgo -internal yyps -internal yypv -internal yyr1 -internal yyr2 -internal yys -internal yystate -internal yytmp -internal yyv -internal yyval -#endif - diff --git a/cde/lib/DtSearch/raima/Makefile.am b/cde/lib/DtSearch/raima/Makefile.am index 5be3c10e4..7213ee168 100644 --- a/cde/lib/DtSearch/raima/Makefile.am +++ b/cde/lib/DtSearch/raima/Makefile.am @@ -7,16 +7,10 @@ libraima_la_CFLAGS = -DCDE_INSTALLATION_TOP=\"$(CDE_INSTALLATION_TOP)\" \ -DCDE_CONFIGURATION_TOP=\"$(CDE_CONFIGURATION_TOP)\" \ -DNO_TRANS -DUNIX -D_POSIX_SOURCE -DMULTIBYTE -if LINUX -libraima_la_CFLAGS += -D_XOPEN_SOURCE=700 -endif - -if BSD -libraima_la_CFLAGS += -D_XOPEN_SOURCE=700 -endif - if SOLARIS -libraima_la_CFLAGS += -D_XOPEN_SOURCE=500 -DNO_REGCOMP +libraima_la_CFLAGS += -D_XOPEN_SOURCE=500 +else +libraima_la_CFLAGS += -D_XOPEN_SOURCE=700 endif diff --git a/cde/lib/DtSearch/raima/connect.c b/cde/lib/DtSearch/raima/connect.c index 4e5160faf..e9054dbd0 100644 --- a/cde/lib/DtSearch/raima/connect.c +++ b/cde/lib/DtSearch/raima/connect.c @@ -84,8 +84,8 @@ int dbn /* Database number */ char *orec; /* ptr to current owner record contents in cache */ char *mrec; /* ptr to current member record contents in cache */ char *nrec; /* ptr to next member record contents in cache */ - DB_ADDR mdba = NULL; /* db address of current member record */ - DB_ADDR ndba = NULL; /* db address of next member record */ + DB_ADDR mdba = 0; /* db address of current member record */ + DB_ADDR ndba = 0; /* db address of next member record */ INT ordering; /* set order control variable */ int stat, compare; /* status code & sort comparison result */ SET_ENTRY *set_ptr; diff --git a/cde/lib/DtSearch/raima/crread.c b/cde/lib/DtSearch/raima/crread.c index 59fcd9e7e..80ba29282 100644 --- a/cde/lib/DtSearch/raima/crread.c +++ b/cde/lib/DtSearch/raima/crread.c @@ -53,7 +53,7 @@ int d_crread( long field, /* Field constant */ -char *data, /* Data area to contain field contents */ +void *data, /* Data area to contain field contents */ int dbn /* database number */ ) { diff --git a/cde/lib/DtSearch/raima/crwrite.c b/cde/lib/DtSearch/raima/crwrite.c index 516b4e3ad..5bfe5f780 100644 --- a/cde/lib/DtSearch/raima/crwrite.c +++ b/cde/lib/DtSearch/raima/crwrite.c @@ -53,7 +53,7 @@ int d_crwrite( long field, /* field constant */ -char *data, /* data area to contain field contents */ +void *data, /* data area to contain field contents */ int dbn /* database number */ ) { diff --git a/cde/lib/DtSearch/raima/fillnew.c b/cde/lib/DtSearch/raima/fillnew.c index c52bb07cc..f7444944b 100644 --- a/cde/lib/DtSearch/raima/fillnew.c +++ b/cde/lib/DtSearch/raima/fillnew.c @@ -57,7 +57,7 @@ int d_fillnew( int nrec, /* record number */ -const char *recval, /* record value */ +const void *recval, /* record value */ int dbn /* database number */ ) { diff --git a/cde/lib/DtSearch/raima/recread.c b/cde/lib/DtSearch/raima/recread.c index 427a8731f..194806cfa 100644 --- a/cde/lib/DtSearch/raima/recread.c +++ b/cde/lib/DtSearch/raima/recread.c @@ -53,7 +53,7 @@ */ int d_recread( -char *rec, /* ptr to record area */ +void *rec, /* ptr to record area */ int dbn ) { diff --git a/cde/lib/DtSearch/raima/recwrite.c b/cde/lib/DtSearch/raima/recwrite.c index 34a092cf9..62bf8a1a9 100644 --- a/cde/lib/DtSearch/raima/recwrite.c +++ b/cde/lib/DtSearch/raima/recwrite.c @@ -53,7 +53,7 @@ */ int d_recwrite( -const char *rec, /* ptr to record area */ +const void *rec, /* ptr to record area */ int dbn ) { diff --git a/cde/lib/DtSvc/DtEncap/pty.c b/cde/lib/DtSvc/DtEncap/pty.c index a26d3db0d..d580ea1af 100644 --- a/cde/lib/DtSvc/DtEncap/pty.c +++ b/cde/lib/DtSvc/DtEncap/pty.c @@ -35,14 +35,6 @@ #define __need_fd_set -#if defined(hpux) || defined(_hpux) || defined(__hpux) || defined(hp) -#define __hpux_pty -#endif - -#ifdef __hpux_pty -#define __need_timeval /* need struct timeval */ -#endif - #include /* NOTE: sbport.h must be the first include. */ #include #include @@ -56,11 +48,6 @@ #include #endif -#ifdef __hpux_pty -#include -#include -#endif - #ifdef __bsd #include #include @@ -165,28 +152,6 @@ pty_channel_clasp pty_channel_class = &pty_channel_class_struct; /* Local variable */ static XeChar *hexdigits = "0123456789abcdef"; -#ifdef __hpux_pty -/*----------------------------------------------------------------------+*/ -static SPC_Disable_Trapping(int fd) -/*----------------------------------------------------------------------+*/ -{ - int flag=0; - int disable=0; - struct request_info req_info; - - /* Disable trapping */ - ioctl(fd, TIOCTRAP, &disable); - - /* Just in case, flush any queued requests */ - - while((ioctl(fd, TIOCTRAPSTATUS, &flag) != ERROR) && flag) { - ioctl(fd, TIOCREQGET, &req_info); - ioctl(fd, TIOCREQSET, &req_info); - } - return(TRUE); -} -#endif /* __hpux_pty */ - /* * Routines for opening pty master/slave devices */ @@ -384,14 +349,6 @@ int master_pty(int fd, struct termios *state) if (fd < 0) return(TRUE); -#ifdef __hpux_pty - /* Enable trapping of ioctl/open/close (we care about close()) */ - if(ioctl(fd, TIOCTRAP, &enable)==ERROR) { - SPC_Error(SPC_Bad_Ioctl); - return(SPC_ERROR); - } -#endif /* __hpux_pty */ - set_pty_state(fd, state); @@ -510,91 +467,6 @@ int read_pty_channel_object(SPC_Channel_Ptr channel, XeString buffer, int nbytes) /*----------------------------------------------------------------------+*/ -#ifdef __hpux_pty -{ - - int result, select_value; - struct fd_set read_mask, except_mask; - int fd=channel->file_descs[connector]; - struct request_info req_info; - struct timeval timeout, *timeptr; - int i; - - call_parent_method(channel, - read, - (channel, connector, buffer, nbytes), - result); - - if(result==SPC_ERROR) - return(SPC_ERROR); - - if(!IS_SPCIO_DATA(channel->wires[connector]->flags)) - return(0); - - FD_ZERO(&read_mask); - FD_ZERO(&except_mask); - - FD_SET(fd, &read_mask); - FD_SET(fd, &except_mask); - - if(channel->close_timeout) { - timeout.tv_sec=channel->close_timeout; - timeout.tv_usec=0; - timeptr = (&timeout); - } else - timeptr=NULL; - - do - select_value=select(fd+1, &read_mask, NULL, &except_mask, timeptr); - while(select_value==ERROR && errno==EINTR); - - if(select_value==ERROR) { - SPC_Error(SPC_Bad_Select); - return(SPC_ERROR); - } - - /* If there is anything to read, read it & return */ - IS_FD_SET(&read_mask, result); - if(result) { - do { - result = read(fd, buffer, nbytes); - } while (result<0 && errno == EINTR); - if(result==ERROR) { - SPC_Error(SPC_Reading); - return(SPC_ERROR); - } - return(result); - } - - /* Nothing to read. We either timed out or got an exception. */ - - if(select_value != 0) { - - /* We got an exception */ - ioctl(fd, TIOCREQGET, &req_info); - - /* Clear the request (Not really necessary in the case of a close, - but do it anyway) */ - - ioctl(fd, TIOCREQSET, &req_info); - } - - if((select_value == 0) || (req_info.request == TIOCCLOSE)) { - - /* Close, disable trapping on this fd & return EOF. We regard - a timeout as being the same as a close. */ - - SPC_Disable_Trapping(fd); - SPC_Change_State(channel, connector, 0, -1); - return(0); - - } else - - /* Otherwise (open or IOCTL), return -1 */ - - return(EXCEPT_FLAG); -} -#else /* not __hpux_pty */ { int result; int fd=channel->file_descs[connector]; @@ -648,7 +520,6 @@ int read_pty_channel_object(SPC_Channel_Ptr channel, return(result); } -#endif /* __hpux_pty */ /*----------------------------------------------------------------------+*/ int pre_fork_pty_channel_object(SPC_Channel_Ptr channel) @@ -671,38 +542,14 @@ int pre_fork_pty_channel_object(SPC_Channel_Ptr channel) result=SPC_ERROR; } -#ifndef __hpux_pty if(pipe(channel->sync_pipe) < 0) { SPC_Error(SPC_No_Pipe); return(SPC_ERROR); } -#endif /* __hpux_pty */ return(result); } -#ifdef __hpux_pty -/*----------------------------------------------------------------------+*/ -/* clear_trap */ -/*----------------------------------------------------------------------+*/ - -/* I am not particularly enamored of this macro. However, the style of - the SCANBITS macro kinda forces me to write it this way. In particular, - I am a bit worried about the reference to except_mask, which is a - "nonlocal reference" */ - -#define clear_trap(fd) {struct request_info req_info; \ - int my_fd=(fd); \ - ioctl(my_fd, TIOCREQGET, &req_info); \ - if(req_info.request != TIOCOPEN) { \ - SPC_Error(SPC_Bad_Ioctl); \ - return(SPC_ERROR); \ - } \ - ioctl(my_fd, TIOCREQSET, &req_info); \ - FD_CLR(my_fd, &except_mask); \ - } -#endif /* __hpux_pty */ - /*----------------------------------------------------------------------+*/ int post_fork_pty_channel_object(SPC_Channel_Ptr channel, int parentp) @@ -714,9 +561,6 @@ int post_fork_pty_channel_object(SPC_Channel_Ptr channel, int iomode=channel->IOMode; int fd=channel->file_descs[STDIN]; int stdinfd, stdoutfd, stderrfd; -#ifdef __hpux_pty - struct fd_set except_mask, temp_mask; -#endif int pid; char c; @@ -726,40 +570,12 @@ int post_fork_pty_channel_object(SPC_Channel_Ptr channel, return(SPC_ERROR); if (parentp) { /* Master process */ -#ifdef __hpux_pty - { int i; - int select_value; - - stdinfd = channel->wires[STDIN]->fd[MASTER_SIDE]; - stdoutfd = channel->wires[STDOUT]->fd[MASTER_SIDE]; - stderrfd = channel->wires[STDERR]->fd[MASTER_SIDE]; - - FD_ZERO(&except_mask); - - if(stdinfd >= 0) - FD_SET(stdinfd, &except_mask); - if(stdoutfd >= 0) - FD_SET(stdoutfd, &except_mask); - if(stderrfd >= 0) - FD_SET(stderrfd, &except_mask); - - IS_FD_SET(&except_mask, result); - while (result) { - temp_mask = except_mask; - select_value=select(max_fds, NULL, NULL, &temp_mask, NULL); - SCANBITS(&temp_mask, clear_trap); - IS_FD_SET(&except_mask, result); - } - } -#else /* not __hpux_pty */ close(channel->sync_pipe[WRITE_SIDE]); read(channel->sync_pipe[READ_SIDE], &c, 1); close(channel->sync_pipe[READ_SIDE]); channel->sync_pipe[READ_SIDE] = -1; channel->sync_pipe[WRITE_SIDE] = -1; XeSPCAddInput(channel, NULL, NULL); -#endif /* __hpux_pty */ - } else { /* Slave process */ /* Open the slave pty. Do it up to three times to set up @@ -811,14 +627,12 @@ int post_fork_pty_channel_object(SPC_Channel_Ptr channel, stderrfd=stdoutfd; } -#ifndef __hpux_pty /* The pty trapping stuff handles EOF for us. Use the "sync" pipe */ /* to inform the other side when we don't have that code. */ c=040; write(channel->sync_pipe[WRITE_SIDE], &c, 1); close(channel->sync_pipe[READ_SIDE]); close(channel->sync_pipe[WRITE_SIDE]); -#endif /* __hpux_pty */ /* Duplicate these file descriptors to 3, 4, 5 so we don't have to worry about any of std[in|out|err]fd being 0, 1, or 2. */ @@ -863,15 +677,6 @@ int reset_pty_channel_object(SPC_Channel_Ptr channel) for(wirelist=channel->wire_list; wirelist; wirelist=wirelist->next) { -#ifdef __hpux_pty - { - int fd=wirelist->fd[MASTER_SIDE]; - /* Disable trapping of ioctl/open/close */ - if(SPC_Disable_Trapping(fd) == SPC_ERROR) - result=SPC_ERROR; - } -#endif /* __hpux_pty */ - wirelist->flags &= ~SPCIO_DATA; } @@ -925,13 +730,6 @@ int add_input_pty_channel_object(SPC_Channel_Ptr channel, fd, channel->class_ptr->input, SPC_Input); -#ifdef __hpux_pty - SPC_XtAddInput(channel, - &wirelist->except_toolkit_id, - fd, - channel->class_ptr->input, - SPC_Exception); -#endif /* __hpux_pty */ } return(TRUE); diff --git a/cde/lib/DtSvc/DtEncap/spc-exec.c b/cde/lib/DtSvc/DtEncap/spc-exec.c index 7afcb0522..eb49d8e4d 100644 --- a/cde/lib/DtSvc/DtEncap/spc-exec.c +++ b/cde/lib/DtSvc/DtEncap/spc-exec.c @@ -603,11 +603,7 @@ int exec_proc_local_channel_object(SPC_Channel_Ptr channel) if(result!=SPC_ERROR) { /* Execute */ /* Compiler barfs without cast ? */ -#if defined(__hpux_8_0) || defined(__aix) - result=execvp(channel->path, channel->argv); -#else result=execvp(channel->path, channel->argv); -#endif /* If we return from exec, it failed */ SPC_Error(SPC_Cannot_Exec, channel->path); } diff --git a/cde/lib/DtSvc/DtEncap/usersig.c b/cde/lib/DtSvc/DtEncap/usersig.c index c5e2ab957..ff95c7ab5 100644 --- a/cde/lib/DtSvc/DtEncap/usersig.c +++ b/cde/lib/DtSvc/DtEncap/usersig.c @@ -90,55 +90,55 @@ static void Xe_init_sig_table(void) /* Now add signals that may or may not be around on a given platform */ # ifdef SIGIO - Xe_addsig((XeString)"SIGIO", SIGIO); /* hpux sun */ + Xe_addsig((XeString)"SIGIO", SIGIO); /* sun */ # else # ifdef SIGPOLL - Xe_addsig((XeString)"SIGIO", SIGPOLL); /* hpux sun */ + Xe_addsig((XeString)"SIGIO", SIGPOLL); /* sun */ # endif # endif # ifdef SIGPOLL - Xe_addsig((XeString)"SIGPOLL", SIGPOLL); /* hpux sun */ + Xe_addsig((XeString)"SIGPOLL", SIGPOLL); /* sun */ # else # ifdef SIGIO - Xe_addsig((XeString)"SIGPOLL", SIGIO); /* hpux sun */ + Xe_addsig((XeString)"SIGPOLL", SIGIO); /* sun */ # endif # endif # ifdef SIGEMT - Xe_addsig((XeString)"SIGEMT", SIGEMT); /* hpux sun */ + Xe_addsig((XeString)"SIGEMT", SIGEMT); /* sun */ # endif # ifdef SIGBUS - Xe_addsig((XeString)"SIGBUS", SIGBUS); /* hpux sun */ + Xe_addsig((XeString)"SIGBUS", SIGBUS); /* sun */ # endif # ifdef SIGIOT - Xe_addsig((XeString)"SIGIOT", SIGIOT); /* hpux sun */ + Xe_addsig((XeString)"SIGIOT", SIGIOT); /* sun */ # endif # ifdef SIGURG - Xe_addsig((XeString)"SIGURG", SIGURG); /* hpux sun */ + Xe_addsig((XeString)"SIGURG", SIGURG); /* sun */ # endif # ifdef SIGSYS - Xe_addsig((XeString)"SIGSYS", SIGSYS); /* hpux sun */ + Xe_addsig((XeString)"SIGSYS", SIGSYS); /* sun */ # endif # ifdef SIGTRAP - Xe_addsig((XeString)"SIGTRAP", SIGTRAP); /* hpux sun */ + Xe_addsig((XeString)"SIGTRAP", SIGTRAP); /* sun */ # endif # ifdef SIGPROF - Xe_addsig((XeString)"SIGPROF", SIGPROF); /* hpux sun */ + Xe_addsig((XeString)"SIGPROF", SIGPROF); /* sun */ # endif # ifdef SIGCLD - Xe_addsig((XeString)"SIGCLD", SIGCLD); /* hpux sun */ + Xe_addsig((XeString)"SIGCLD", SIGCLD); /* sun */ # endif # ifdef SIGVTALRM - Xe_addsig((XeString)"SIGVTALRM", SIGVTALRM); /* hpux sun */ + Xe_addsig((XeString)"SIGVTALRM", SIGVTALRM); /* sun */ # endif # ifdef SIGWINCH @@ -204,56 +204,56 @@ XeString XeSignalToName(int sig) /* code to the stuff in Xe_init_sig_table() above, you see a one */ /* to one correspondance. */ -# ifdef SIGIO /* hpux sun */ +# ifdef SIGIO /* sun */ /* (SIGPOLL, SIGTINT are aliases) */ case SIGIO: return (XeString)"SIGIO"; # endif -# ifdef SIGPOLL /* hpux sun */ +# ifdef SIGPOLL /* sun */ /* ----> Duplicated by SIGIO above case SIGPOLL: return (XeString)"SIGPOLL"; */ # endif -# ifdef SIGEMT /* hpux sun */ +# ifdef SIGEMT /* sun */ case SIGEMT: return (XeString)"SIGEMT"; # endif -# ifdef SIGBUS /* hpux sun */ +# ifdef SIGBUS /* sun */ case SIGBUS: return (XeString)"SIGBUS"; # endif -# ifdef SIGIOT /* hpux sun */ +# ifdef SIGIOT /* sun */ /* ----> Duplicated by SIGABRT above case SIGIOT: return (XeString)"SIGIOT"; */ # endif -# ifdef SIGURG /* hpux sun */ +# ifdef SIGURG /* sun */ case SIGURG: return (XeString)"SIGURG"; # endif -# ifdef SIGSYS /* hpux sun */ +# ifdef SIGSYS /* sun */ case SIGSYS: return (XeString)"SIGSYS"; # endif -# ifdef SIGTRAP /* hpux sun */ +# ifdef SIGTRAP /* sun */ case SIGTRAP: return (XeString)"SIGTRAP"; # endif -# ifdef SIGPROF /* hpux sun */ +# ifdef SIGPROF /* sun */ case SIGPROF: return (XeString)"SIGPROF"; # endif -# ifdef SIGCLD /* hpux sun */ +# ifdef SIGCLD /* sun */ /* ----> Duplicated by SIGCHLD above case SIGCLD: return (XeString)"SIGCLD"; */ # endif -# ifdef SIGVTALRM /* hpux sun */ +# ifdef SIGVTALRM /* sun */ case SIGVTALRM: return (XeString)"SIGVTALRM"; # endif diff --git a/cde/lib/DtSvc/DtUtil1/CmdMain.c b/cde/lib/DtSvc/DtUtil1/CmdMain.c index 67dfd9dac..61f2069d6 100644 --- a/cde/lib/DtSvc/DtUtil1/CmdMain.c +++ b/cde/lib/DtSvc/DtUtil1/CmdMain.c @@ -73,14 +73,6 @@ */ #define COMMAND_CHECK_FAILURE 1 -#ifdef __hpux -#ifdef hpV4 -#define INETD_SECURITY_FILE "/var/adm/inetd.sec" -#else /* hpV4 */ -#define INETD_SECURITY_FILE "/usr/adm/inetd.sec" -#endif /* hpV4 */ -#endif /* __hpux */ - #define Cmd_FreeAllocatedStringVector(sv) \ _DtCmdFreeStringVector(sv);\ XtFree((char *)sv); @@ -337,24 +329,11 @@ _DtSPCOpen( SPC_BUFSIZ); break; case SPC_Connection_EOF: -#ifdef __hpux - (void) sprintf (errorMessage, - errorInetSecurity, - hostname, - _cmdClientHost, - SPC_SERVICE, - _cmdClientHost, - SPC_SERVICE, - INETD_SECURITY_FILE, - hostname); - -#else /* __hpux */ (void) sprintf (errorMessage, errorBadConnect, hostname, SPC_SERVICE, _cmdClientHost); -#endif /* __hpux */ break; default: /* diff --git a/cde/lib/DtSvc/DtUtil1/CmdProcess.c b/cde/lib/DtSvc/DtUtil1/CmdProcess.c index ecb66a780..1a70a78d8 100644 --- a/cde/lib/DtSvc/DtUtil1/CmdProcess.c +++ b/cde/lib/DtSvc/DtUtil1/CmdProcess.c @@ -45,10 +45,6 @@ #include #endif -#if defined(__hpux) -#include -#endif - #include #include #include diff --git a/cde/lib/DtSvc/DtUtil1/DbLoad.c b/cde/lib/DtSvc/DtUtil1/DbLoad.c index 07caa4ee7..9fb8275f7 100644 --- a/cde/lib/DtSvc/DtUtil1/DbLoad.c +++ b/cde/lib/DtSvc/DtUtil1/DbLoad.c @@ -49,18 +49,12 @@ #include #include -#ifdef __hpux -#include -#else - #if defined(sun) || defined(CSRG_BASED) #include #else #include #endif /* sun || CSRD_BASED */ -#endif /* __hpux */ - #include #include diff --git a/cde/lib/DtSvc/DtUtil1/Dts.c b/cde/lib/DtSvc/DtUtil1/Dts.c index 0e29ba405..5cb2c5271 100644 --- a/cde/lib/DtSvc/DtUtil1/Dts.c +++ b/cde/lib/DtSvc/DtUtil1/Dts.c @@ -54,12 +54,7 @@ #include #include #include -#if defined (__hpux) -/* - * On HP MAXINT is defined in both and - */ -#undef MAXINT -#elif defined(CSRG_BASED) +#if defined(CSRG_BASED) #define MAXINT INT_MAX #else #include diff --git a/cde/lib/DtSvc/DtUtil1/DtsInit.c b/cde/lib/DtSvc/DtUtil1/DtsInit.c index 0e385e274..1d92a0bde 100644 --- a/cde/lib/DtSvc/DtUtil1/DtsInit.c +++ b/cde/lib/DtSvc/DtUtil1/DtsInit.c @@ -47,18 +47,12 @@ #include #include -#ifdef __hpux -#include -#else - #if defined(sun) || defined(CSRG_BASED) #include #else #include #endif /* sun || CSRG_BASED */ -#endif /* __hpux */ - #include #include diff --git a/cde/lib/DtSvc/DtUtil2/FileUtil.c b/cde/lib/DtSvc/DtUtil2/FileUtil.c index d3e799ccd..32ba894a9 100644 --- a/cde/lib/DtSvc/DtUtil2/FileUtil.c +++ b/cde/lib/DtSvc/DtUtil2/FileUtil.c @@ -37,15 +37,11 @@ #include /* MAXPATHLEN */ #include /* errno(2) */ -#ifdef __hpux -#include /* opendir(), directory(3C) */ -#else #if defined(sun) || defined(CSRG_BASED) #include /* opendir(), directory(3C) */ #else #include #endif /* sun || CSRG_BASED */ -#endif /* __hpux */ #include #include /* Xt stuff */ diff --git a/cde/lib/DtSvc/DtUtil2/MsgCat.c b/cde/lib/DtSvc/DtUtil2/MsgCat.c index f34b8020b..99afa3497 100644 --- a/cde/lib/DtSvc/DtUtil2/MsgCat.c +++ b/cde/lib/DtSvc/DtUtil2/MsgCat.c @@ -44,116 +44,10 @@ #else #include #include -#endif /* NO_XLIB */ +#endif #include
-#if defined(hpV4) && !defined(NO_XLIB) -typedef struct _dt_msg_cache -{ - char ***cached_msgs; - int nmsgs_per_set; - int nsets; - - nl_catd catd; - struct _dt_msg_cache *next; -} _DtMsgCache; - -static _DtMsgCache *catalog_message_caches = NULL; - -static _DtMsgCache *get_msg_cache(nl_catd catd) -{ - const int initial_nmsgs_per_set = 300; - const int initial_nsets = 50; - - _DtMsgCache *c; - - for (c=catalog_message_caches; NULL!=c; c=c->next) - if (catd == c->catd) return c; - - c = (_DtMsgCache*) XtMalloc(sizeof(_DtMsgCache)); - c->cached_msgs = NULL; - c->nmsgs_per_set = initial_nmsgs_per_set; - c->nsets = initial_nsets; - c->catd = catd; - c->next = catalog_message_caches; - catalog_message_caches = c; - return c; -} - -/* - * Wrapper around catgets -- this makes sure the message string is saved - * in a safe location; so repeated calls to catgets() do not overwrite - * the catgets() internal buffer. This has been a problem on HP systems. - */ -char *_DtCatgetsCached(nl_catd catd, int set, int num, const char *dflt) -{ - char *message = NULL; - _DtMsgCache *c; - char **setptr; - int i, multiplier; - int size; - - /* convert to a zero based index */ - int setIdx = set - 1; - int numIdx = num - 1; - - c = get_msg_cache(catd); - if (NULL == c) - { - message = catgets(catd, set, num, dflt); - return message; - } - - if (NULL == c->cached_msgs) - { - size = sizeof(char**) * c->nsets; - c->cached_msgs = (char***) XtMalloc(size); - memset((char*) c->cached_msgs, 0, size); - } - else if (setIdx >= c->nsets) - { - for (multiplier=2; setIdx > multiplier*c->nsets; multiplier++) {} - size = sizeof(char**) * c->nsets; - c->cached_msgs = - (char***) XtRealloc((char*) c->cached_msgs, multiplier*size); - memset((char*) (c->cached_msgs + size), 0, multiplier*size); - c->nsets *= multiplier; - } - - if (NULL == c->cached_msgs[setIdx]) - { - size = sizeof(char*) * c->nmsgs_per_set; - c->cached_msgs[setIdx] = (char**) XtMalloc(size); - memset((char*) c->cached_msgs[setIdx], 0, size); - } - else if (numIdx >= c->nmsgs_per_set) - { - for (multiplier=2; numIdx > multiplier*c->nsets; multiplier++) {} - size = sizeof(char*) * c->nmsgs_per_set; - - for (i=0; inmsgs_per_set; i++) - { - if (NULL != c->cached_msgs[i]) - { - c->cached_msgs[i] = - (char**) XtRealloc((char*)c->cached_msgs[i], multiplier*size); - memset((char*) (c->cached_msgs[i] + size), 0, multiplier*size); - } - } - c->nmsgs_per_set *= multiplier; - } - - setptr = c->cached_msgs[setIdx]; - if (NULL == setptr[numIdx]) - setptr[numIdx] = strdup(catgets(catd, set, num, dflt)); - - message = setptr[numIdx]; - - return message; -} -#endif /* hpV4 */ - int _DtCatclose(nl_catd catd) { return (catd == (nl_catd) -1) ? 0 : catclose(catd); @@ -169,11 +63,7 @@ char *_DtCatgets(nl_catd catd, int set, int num, const char *dflt) } else { /* Per POSIX, we cannot assume catgets() is thread-safe. */ _DtSvcProcessLock(); -#if defined(hpV4) && !defined(NO_XLIB) - msg = _DtCatgetsCached(catd, set, num, dflt); -#else msg = catgets(catd, set, num, dflt); -#endif /* hpV4 */ _DtSvcProcessUnlock(); } diff --git a/cde/lib/DtSvc/DtUtil2/SvcPam.c b/cde/lib/DtSvc/DtUtil2/SvcPam.c new file mode 100644 index 000000000..a2bc76bb5 --- /dev/null +++ b/cde/lib/DtSvc/DtUtil2/SvcPam.c @@ -0,0 +1,243 @@ +/* + * CDE - Common Desktop Environment + * + * Copyright (c) 1993-2012, The Open Group. All rights reserved. + * + * These libraries and programs are free software; you can + * redistribute them and/or modify them under the terms of the GNU + * Lesser General Public License as published by the Free Software + * Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * These libraries and programs are distributed in the hope that + * they will be useful, but WITHOUT ANY WARRANTY; without even the + * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with these libraries and programs; if not, write + * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth + * Floor, Boston, MA 02110-1301 USA + */ + +/* + * Header Files + */ + +#include +#include +#include + +/* + * Local function declarations + */ + +static int login_conv(int num_msg, const struct pam_message **msg, + struct pam_response **response, void *appdata_ptr); + +/* + * Local structures and variables + */ + +static struct pam_conv pam_conv = {login_conv, NULL}; +static char *saved_user_passwd; +static pam_handle_t *pamh; + +static int PamStart(const char *service_name, const char *user, + const char *display_name) +{ + int status; + char *colon, *hostname; + + if (pamh) { + if (service_name) + status = pam_set_item(pamh, PAM_SERVICE, service_name); + + if (status != PAM_SUCCESS && user) pam_set_item(pamh, PAM_USER, user); + } + else { + status = pam_start(service_name, user, &pam_conv, &pamh); + } + + if (status != PAM_SUCCESS) goto done; + + if (!display_name) goto done; + + if (display_name[0] == ':') { + status = pam_set_item(pamh, PAM_TTY, display_name); + goto done; + } + + if (!(hostname = strdup(display_name))) { + status = PAM_BUF_ERR; + goto done; + } + + if (colon = strrchr(hostname, ':')) *colon = '\0'; + + status = pam_set_item(pamh, PAM_RHOST, hostname); + + free(hostname); + +done: + if (status != PAM_SUCCESS && pamh && pam_end(pamh, status) == PAM_SUCCESS) + pamh = NULL; + + return status; +} + +/** + * @brief Authenticate that user / password combination is legal for this + * system. + * + * @param service_name + * @param user + * @param display_name + * @param user_passwd + * + * @return See pam_authenticate. + */ +int _DtSvcPamAuthenticate(const char *service_name, const char *user, + const char *display_name, const char *user_passwd) +{ + int status; + + if (!user_passwd) return PAM_AUTH_ERR; + + if ((status = PamStart(service_name, user, display_name)) != PAM_SUCCESS) + return status; + + saved_user_passwd = (char *) user_passwd; + + return pam_authenticate(pamh, PAM_DISALLOW_NULL_AUTHTOK); +} + +/** + * @brief Start PAM session management. + * + * @param service_name + * @param user + * @param display_name + * + * @return See pam_open_session. + */ +int _DtSvcPamOpenSession(const char *service_name, const char *user, + const char *display_name) +{ + int status; + + if ((status = PamStart(service_name, user, display_name)) != PAM_SUCCESS) + return status; + + return pam_open_session(pamh, 0); +} + +/** + * @brief Terminate PAM session management. + * + * @param service_name + * @param user + * @param display_name + * + * @return See pam_close_session. + */ +int _DtSvcPamCloseSession(const char *service_name, const char *user, + const char *display_name) +{ + int status; + + if ((status = PamStart(service_name, user, display_name)) != PAM_SUCCESS) + return status; + + return pam_close_session(pamh, 0); +} + +/** + * @brief Set Users login credentials. + * + * @param service_name + * @param user + * @param display_name + * + * @return See pam_setcred. + */ +int _DtSvcPamSetcred(const char *service_name, const char *user, + const char *display_name) +{ + int status; + + if ((status = PamStart(service_name, user, display_name)) != PAM_SUCCESS) + return status; + + return pam_setcred(pamh, PAM_ESTABLISH_CRED); +} + +/***************************************************************************** + * login_conv(): + * + * This is a conv (conversation) function called from the PAM + * authentication scheme. It returns the user's password when requested by + * internal PAM authentication modules and also logs any internal PAM error + * messages. + *****************************************************************************/ + +static int login_conv(int num_msg, const struct pam_message **msg, + struct pam_response **response, void *appdata_ptr) +{ + const struct pam_message *m; + struct pam_response *r; + char *temp; + int k; + +#ifdef lint + conv_id = conv_id; +#endif + if (num_msg <= 0) + return (PAM_CONV_ERR); + + *response = (struct pam_response*) + calloc(num_msg, sizeof (struct pam_response)); + if (*response == NULL) + return (PAM_BUF_ERR); + + k = num_msg; + m = *msg; + r = *response; + while (k--) { + + switch (m->msg_style) { + + case PAM_PROMPT_ECHO_OFF: + if (saved_user_passwd != NULL) { + r->resp = (char *) malloc(strlen(saved_user_passwd)+1); + if (r->resp == NULL) { + /* __pam_free_resp(num_msg, *response); */ + *response = NULL; + return (PAM_BUF_ERR); + } + (void) strcpy(r->resp, saved_user_passwd); + r->resp_retcode=0; + } + + m++; + r++; + break; + + case PAM_ERROR_MSG: + m++; + r++; + break; + + case PAM_TEXT_INFO: + m++; + r++; + break; + + default: + break; + } + } + + return (PAM_SUCCESS); +} diff --git a/cde/lib/DtSvc/DtUtil2/Utility.c b/cde/lib/DtSvc/DtUtil2/Utility.c index af2db9454..30cb63555 100644 --- a/cde/lib/DtSvc/DtUtil2/Utility.c +++ b/cde/lib/DtSvc/DtUtil2/Utility.c @@ -35,15 +35,11 @@ #include #include -#ifdef __hpux -#include -#else #if defined(sun) || defined(CSRG_BASED) #include #else #include #endif -#endif #include #ifdef NLS16 diff --git a/cde/lib/DtSvc/DtUtil2/XlationSvc.c b/cde/lib/DtSvc/DtUtil2/XlationSvc.c index c36f97dee..669586170 100644 --- a/cde/lib/DtSvc/DtUtil2/XlationSvc.c +++ b/cde/lib/DtSvc/DtUtil2/XlationSvc.c @@ -2245,8 +2245,10 @@ int _DtXlateGetXlateEnv( 809 = (int) (100.0 * atof("8.09")); ===========================*/ -#if !defined(OSMAJORVERSION) || !defined(OSMINORVERSION) || OSMAJORVERSION == 0 -#error OSMAJORVERSION and/or OSMINORVERSION not defined +#if !defined(OSMAJORVERSION) && !defined(OSMINORVERSION) +#warning "OSMAJORVERSION and OSMINORVERSION not defined, assuming 99.0: +#define OSMAJORVERSION 99 +#define OSMINORVERSION 0 #endif #if defined(__linux__) || defined(CSRG_BASED) diff --git a/cde/lib/DtSvc/Makefile.am b/cde/lib/DtSvc/Makefile.am index 273048f26..f603a781e 100644 --- a/cde/lib/DtSvc/Makefile.am +++ b/cde/lib/DtSvc/Makefile.am @@ -19,6 +19,35 @@ if SOLARIS libDtSvc_la_CPPFLAGS += -DNO_REGCOMP endif +# OSVERSION hackery. This database works by comparing a number +# computed with the OS major/minor versions to determine appropriate +# entries in the Xlocale DB. These are currently hardcoded per OS in +# configure.ac. Well, no more. Now they will be hardcoded per OS +# here - the only place where they are really needed currently, until +# some time in the future when old and irrelevant entries are removed +# from the DB and we won't need this at all. + +if LINUX +libDtSvc_la_CPPFLAGS += -DOSMAJORVERSION=4 -DOSMINORVERSION=15 +endif + +if FREEBSD +libDtSvc_la_CPPFLAGS += -DOSMAJORVERSION=10 -DOSMINORVERSION=0 +endif + +if OPENBSD +libDtSvc_la_CPPFLAGS += -DOSMAJORVERSION=6 -DOSMINORVERSION=2 +endif + +if NETBSD +libDtSvc_la_CPPFLAGS += -DOSMAJORVERSION=8 -DOSMINORVERSION=0 +endif + +if SOLARIS +libDtSvc_la_CPPFLAGS += -DOSMAJORVERSION=5 -DOSMINORVERSION=10 +endif + + libDtSvc_la_SOURCES = DtCodelibs/buf.C \ DtCodelibs/buf.h \ DtCodelibs/filegen.C \ @@ -143,3 +172,8 @@ libDtSvc_la_SOURCES = DtCodelibs/buf.C \ DtUtil2/Utility.c \ DtUtil2/XlationSvc.c \ DtUtil2/XmWrap.c + +if HAS_PAM_LIBRARY +libDtSvc_la_SOURCES += DtUtil2/SvcPam.c +libDtSvc_la_LIBADD = $(PAMLIB) +endif diff --git a/cde/lib/DtSvc/include/codelibs/dynarray.h b/cde/lib/DtSvc/include/codelibs/dynarray.h index 785606393..5cf7e99f9 100644 --- a/cde/lib/DtSvc/include/codelibs/dynarray.h +++ b/cde/lib/DtSvc/include/codelibs/dynarray.h @@ -36,15 +36,7 @@ #ifndef __DYNARRAY_H_ #define __DYNARRAY_H_ -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif -#if defined(sun) || defined(__linux__) || defined(CSRG_BASED) #define _DELETE_ARRAY(sz) delete[] -#else -#define _DELETE_ARRAY(sz) delete[(sz)] -#endif - // this is used to create an ARRAY of a TYPE #define declare_array(ARRAY, TYPE, BUMP) \ diff --git a/cde/lib/DtSvc/include/codelibs/privbuf.h b/cde/lib/DtSvc/include/codelibs/privbuf.h index b692dda57..e5f1d85ba 100644 --- a/cde/lib/DtSvc/include/codelibs/privbuf.h +++ b/cde/lib/DtSvc/include/codelibs/privbuf.h @@ -41,14 +41,6 @@ typedef void (*privbuf_func)(void *v); #include #include -#if defined(sun) || defined(__linux__) || defined(CSRG_BASED) -// Rejects valid inline declarations, claiming they have both internal and -// external linkage. -#else -inline static void *operator new(size_t size) { return malloc((unsigned)size); } -inline static void operator delete(void *p) { if (p) free((char*)p); } -#endif - #include declare_array(privbuf_charbuf, char, 128) declare_array(privbuf_strvec, char*, 128) diff --git a/cde/lib/DtSvc/include/codelibs/stringx.h b/cde/lib/DtSvc/include/codelibs/stringx.h index 78a8ddc2b..e702d0e9a 100644 --- a/cde/lib/DtSvc/include/codelibs/stringx.h +++ b/cde/lib/DtSvc/include/codelibs/stringx.h @@ -66,28 +66,11 @@ extern "C" #ifdef __cplusplus char *strtokx(char *&ptr, const char *sep); -# if !defined(__linux__) && !defined(sun) && !defined(CSRG_BASED) - char **strsep(const char *str, const char *sep, - boolean whsp = TRUE, int *num = NULL); - const char *strcmbn(const char **vec, const char *sep = " "); -# endif - #else /* __STDC__ */ char *strtokx(char **ptr, const char *sep); -# if !defined(__linux__) && !defined(sun) && !defined(CSRG_BASED) - char **strsep(const char *str, const char *sep, - boolean whsp, int *num); -#endif const char *strcmbn(const char **vec, const char *sep); - #endif /* __STDC__ */ - -#ifdef __OBSOLETE - size_t nl_strlen(const char *str); /* __OBSOLETE */ - int strcharsize(const char *str); /* __OBSOLETE */ -#endif /* __OBSOLETE */ - #else /* C */ extern void strfree(); @@ -102,12 +85,6 @@ extern unsigned strhashi(); extern char *strupper(), *strlower(); - -#ifdef __OBSOLETE -extern int strcharsize(); /* __OBSOLETE */ -extern size_t nl_strlen(); /* __OBSOLETE */ -#endif /* __OBSOLETE */ - #endif /* C */ #if defined(__cplusplus) } @@ -124,11 +101,11 @@ inline void strfree(const char *s) { if (s != NULL) free((char *)s); } #else inline void strfree(const char *s) -#if defined(__hpux) || defined(CSRG_BASED) +#if defined(CSRG_BASED) { if (s != NULL) free((void *)s); } #else { if (s != NULL) free((void *)s); } -#endif /* __hpux */ +#endif /* bsd */ #endif #if defined(bsd) inline char *strdup(const char *s) @@ -145,12 +122,6 @@ inline char *strdup(const char *s) /* macros for funcs that work on top of privbuf versions */ -/* for backward compatibility only - __OBSOLETE */ -#ifdef __OBSOLETE -#define strpos strstrx /* __OBSOLETE */ -#define strrpos strrstrx /* __OBSOLETE */ -#endif /* __OBSOLETE */ - #endif /* C || __STDC__ */ #endif /* __STRINGX_H_ */ diff --git a/cde/lib/DtSvc/libDtSvc.elist b/cde/lib/DtSvc/libDtSvc.elist deleted file mode 100644 index 719f3e7c8..000000000 --- a/cde/lib/DtSvc/libDtSvc.elist +++ /dev/null @@ -1,1173 +0,0 @@ -/* $TOG: libDtSvc.elist /main/27 1999/10/15 17:21:56 mgreess $ */ - -/************************************************************************* - * Export list for libDtSvc - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - -#if defined(SVR4) -# define boolean boolean_t -#else -# define boolean int -#endif - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public DtActionDescription -public DtActionExists -public DtActionIcon -public DtActionInvoke -public DtActionLabel -public DtAppInitialize -public DtDbLoad -public DtDbReloadNotify -public DtDndCreateSourceIcon -public DtDndDragStart -public DtDndDropRegister -public DtDndDropUnregister -public DtDndVaDragStart -public DtDndVaDropRegister -public DtDtsBufferToAttributeList -public DtDtsBufferToAttributeValue -public DtDtsBufferToDataType -public DtDtsDataToDataType -public DtDtsDataTypeIsAction -public DtDtsDataTypeNames -public DtDtsDataTypeToAttributeList -public DtDtsDataTypeToAttributeValue -public DtDtsFileToAttributeList -public DtDtsFileToAttributeValue -public DtDtsFileToDataType -public DtDtsFindAttribute -public DtDtsFreeAttributeList -public DtDtsFreeAttributeValue -public DtDtsFreeDataType -public DtDtsFreeDataTypeNames -public DtDtsIsTrue -public DtDtsLoadDataTypes -public DtDtsRelease -public DtDtsSetDataType -public DtInfoShowTopic -public DtInitialize -public DtMsgLogMessage -public DtMsgLogOpenFile -public DtMsgLogSetHandler -public DtSaverGetWindows -public DtSessionRestorePath -public DtSessionSavePath -public DtVersion -public DtVersionString -public DtWsmAddCurrentWorkspaceCallback -public DtWsmAddWorkspaceFunctions -public DtWsmAddWorkspaceModifiedCallback -public DtWsmFreeWorkspaceInfo -public DtWsmGetCurrentBackdropWindow -public DtWsmGetCurrentWorkspace -public DtWsmGetWorkspaceInfo -public DtWsmGetWorkspaceList -public DtWsmGetWorkspacesOccupied -public DtWsmOccupyAllWorkspaces -public DtWsmRemoveWorkspaceCallback -public DtWsmRemoveWorkspaceFunctions -public DtWsmSetCurrentWorkspace -public DtWsmSetWorkspacesOccupied -public DtWsmSetWorkspaceTitle -public DtWsmChangeBackdrop -public DtWsmAddWorkspace -public DtWsmDeleteWorkspace - - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private Dt_charCount -private Dt_lastChar -private Dt_nlInit -private Dt_strchr -private Dt_strcspn -private Dt_strrchr -private Dt_strspn -private Dt_strtok -private Dt_strtok_r -private SPCD_Authentication_Dir -private SPC_Add_Env_File -private SPC_Close_Log -private SPC_Dispatch_Protocol -private SPC_Encode_Termios -private SPC_Error -private SPC_Filter_Connection -private SPC_Format_Log -private SPC_Free_Protocol_Ptr -private SPC_Getenv -private SPC_Get_Multi_Packet -private SPC_Get_Termio -private SPC_Get_Termios -private SPC_Initialize -private SPC_LocalHostinfo -private SPC_Merge_Envp -private SPC_Open_Log -private SPC_Print_Protocol -private SPC_Putenv -private SPC_Read_Protocol -private SPC_Start_Daemon -private SPC_Wait_For_Termination -private SPC_Write_Protocol_Request -private SPC_Write_Reply -private SPC_XtAddInput -private SPC_client_version_number -private SPC_logfile_list -private SPC_mount_point_env_var -private SPC_pid_list -private SPC_who_am_i -private SbAddException_hookfn -private SbAddInput_hookfn -private SbBreakMainLoop_hookfn -private SbMainLoopUntil_hookfn -private SbRemoveException_hookfn -private SbRemoveInput_hookfn -private XeCall_SbMainLoopUntil -private XeCreateContextString -private XeFree -private XeIsLocalHostP -private XeMalloc -private XeNameToSignal -private XeParseFileString -private XeProgName -private XeSBTempPath -private XeSPCAddInput -private XeSPCAttach -private XeSPCClose -private XeSPCErrorNumber -private XeSPCExecuteProcess -private XeSPCGetLogfile -private XeSPCOpen -private XeSPCRegisterTerminator -private XeSPCRemoveLogfile -private XeSPCReset -private XeSPCSendEOF -private XeSPCSetTermio -private XeSPCSignalProcess -private XeSPCSpawn -private XeSPCWrite -private XeToolClass -private Xechdir -private Xegetshorthostname -private Xestrcat -private Xestrchr -private Xestrcmp -private Xestrcoll -private Xestrcpy -private Xestrdup -private Xestrlen -private Xestrncat -private Xestrncmp -private Xestrncpy -private Xestrpbrk -private Xestrrchr -private Xestrstr -private Xestrtok -private _DtActMapFileName -private _DtAddResString -private _DtAddToResource -private _DtApplyString -private _DtBasename -private _DtCancelString -private _DtCatgetsCached -private _DtCloseString -private _DtCmdStringToArrayOfStrings -private _DtCommandInvokerExecute -private _DtCreateDtDirs -private _DtDbGetDataBaseEnv -private _DtDbPathIdToString -private _DtDbRead -private _DtDtsMMBosonToString -private _DtDtsMMExpandValue -private _DtDtsMMGet -private _DtDtsMMGetPtr -private _DtDtsMMInit -private _DtDtsMMSafeFree -private _DtEnvControl -private _DtEnvMapForRemote -private _DtEnvRestoreLocal -private _DtEnv_tt_file_netfile -private _DtFindMatchingFiles -private _DtFlushIconFileCache -private _DtFreeDatabaseDirPaths -private _DtFreeStringVector -private _DtGetDatabaseDirPaths -private _DtGetDisplayResolution -private _DtGetEmbeddedClients -private _DtGetHourGlassCursor -private _DtGetIconFileName -private _DtGetLock -private _DtGetMask -private _DtGetMessage -private _DtGetMwmWindow -private _DtGetPixmap -private _DtGetPixmapByDepth -private _DtGetResString -private _DtGetSmAudio -private _DtGetSmFont -private _DtGetSmPreedit -private _DtGetSmKeyboard -private _DtGetSmPointer -private _DtGetSmSaver -private _DtGetSmScreen -private _DtGetSmState -private _DtGetSmWindow -private _DtHelpString -private _DtHostString -private _DtInitializeCommandInvoker -private _DtInitializeToolTalk -private _DtIsSameHost -private _DtMessage -private _DtMessageClose -private _DtMessageDialog -private _DtMessageOK -private _DtNl_is_multibyte -private _DtOkString -private _DtPerfChkpntEnd -private _DtPerfChkpntInit -private _DtPerfChkpntListenInit -private _DtPerfChkpntMsgReceive -private _DtPerfChkpntMsgSend -private _DtPrintDefaultError -private _DtPrintDefaultErrorSafe -private _DtQualifyWithFirst -private _DtReleaseLock -private _DtResourceDatabase -private _DtSPCOpen -private _DtSPCSpawn -private _DtSaverStart -private _DtSaverStop -private _DtSendActivityDoneNotification -private _DtSendActivityNotification -private _DtSetSmSaver -private _DtSetSmState -private _DtSimpleErrnoError -private _DtSimpleError -private _DtStripSpaces -private _DtTurnOffHourGlass -private _DtTurnOnHourGlass -private _DtVectorizeInPlace -private _DtWmRestart -private _DtWmRestartNoConfirm -private _DtWsmAddMarqueeSelectionCallback -private _DtWsmChangeBackdrop -private _DtWsmCreateWorkspace -private _DtWsmDeleteWorkspace -private _DtWsmFreeWorkspaceHints -private _DtWsmGetDtWmHints -private _DtWsmGetWorkspaceHints -private _DtWsmIsBackdropWindow -private _DtWsmSelectionNameForScreen -private _DtWsmSetBackdropSearchPath -private _DtWsmSetDtWmHints -private _DtWsmSetWorkspaceTitle -private _Dt_NextChar -private _Dt_PrevChar -private _Dt_isspace -private _DtsMMListDb -private pathcollapse -private print_protocol_request -private shellscan -private spc_logF -private spc_user_environment_file -private sscan_application_data -private sscan_register_data - -/***************************************************************************** - ***** Private API accessible to any other Dt client - ***** This API could be moved to another library, - ***** if someone antes up to own it. Moved from DtHelp. - ***** Commented functions are part of the API but - ***** currently not in use by any Dt client. - ***** If uncommented, remove from "internal" below. - ****************************************************************************/ - -/* private _DtXlateOpenDb */ -/* private _DtXlateOpenAndMergeDbs */ -/* private _DtXlateMergeDbs */ -/* private _DtXlateOpenAllDbs */ - -private _DtXlateCloseDb - -/* private _DtXlateStdToOpValue */ -/* private _DtXlateOpToStdValue */ - -private _DtXlateGetXlateEnv -private _DtLcxOpenAllDbs -private _DtLcxXlateOpToStd -private _DtLcxXlateStdToOp - -#ifdef sun -/* Symbols from the sun-specific DtUtil2/SunDtHelp.c module. */ -private DtCreateHelpDialog -private DtCreateHelpQuickDialog -private DtHelpQuickDialogGetChild -private DtHelpReturnSelectedWidgetId -#endif - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal Alloc_Argv -internal Dt11GetMessage -internal InitDefaultTermioStruct -internal SPC_Add_Connection -internal SPC_Alloc_Connection -internal SPC_Change_State -internal SPC_Channel_Terminated -internal SPC_Channel_Terminator_Connection -internal SPC_Check_Style -internal SPC_Child_Terminated -internal SPC_Close_Connection -internal SPC_Close_Unused -internal SPC_Conditional_Packet_Handler -internal SPC_Contact_Server -internal SPC_Create_Default_Envp -internal SPC_Debug_Mode -internal SPC_Decode_Termios -internal SPC_Find_PID -internal SPC_Fixup_Environment -internal SPC_Flush_Queued_Data -internal SPC_Free_Envp -internal SPC_Get_Current_Termio -internal SPC_Inetd_Daemon -internal SPC_Init_Child -internal SPC_Init_Local_Host_Info -internal SPC_Initialize_Channel -internal SPC_Initialized -internal SPC_Input_Handler -internal SPC_Local_Hostname -internal SPC_Lookup_Channel -internal SPC_Lookup_Connection -internal SPC_Lookup_Connection_Fd -internal SPC_Lookup_Error -internal SPC_MakeSystemCommand -internal SPC_Make_Connection -internal SPC_Make_Log_Filename -internal SPC_New_Buffered_Data_Ptr -internal SPC_New_Protocol_Ptr -internal SPC_Newline_Filter -internal SPC_Open_Connection -internal SPC_Open_Socket -internal SPC_Process_Single_Prot_Request -internal SPC_Query_Devices -internal SPC_Query_Logfile -internal SPC_Read_Chars -internal SPC_Read_Remote_Data -internal SPC_ResetTerminator -internal SPC_Reset_Protocol_Ptr -internal SPC_Send_Environ -internal SPC_Send_Multi_Packet -internal SPC_Setpgrp -internal SPC_Setup_Synchronous_Terminator -internal SPC_Standalone_Daemon -internal SPC_Transform_Iomode -internal SPC_Validate_User -internal SPC_Waitfor_Reply -internal SPC_Write_Chars -internal SPC_Write_Log -internal SPC_Write_Single_Prot_Request -internal SPC_XtBreak -internal SPC_XtRemoveInput -internal SPC_copy_string -/* internal SPC_except_handlers */ -internal SPC_fd_to_connector -/* internal SPC_input_handlers */ -/* internal SetNetworkPrefix */ -/* internal SeverityString */ -internal ToolTalkErrorMsg -internal ToolTalkErrorMsg2 -internal TtFileArgMapErr -internal Ttmedia_to_Dt_StatusUpdateCB -internal XA_DELETE -internal XA_HOST_NAME -internal XA_MULTIPLE -internal XA_NULL -internal XA_SUN_ATM_FILE_NAME -internal XA_SUN_ATM_METHODS -internal XA_SUN_DATA_LABEL -internal XA_SUN_ENUM_COUNT -internal XA_SUN_FILE_HOST_NAME -internal XA_SUN_SELN_READONLY -internal XA_TARGETS -internal XA_TEXT -internal XA_TIMESTAMP -/* internal XeActivateUserMessages */ -/* internal XeAddClearCallback */ -/* internal XeAddFailNotificationCallback */ -/* internal XeAddGeneralCallbacks */ -/* internal XeAddMessageInput */ -/* internal XeAddMsgCallback */ -/* internal XeAddNotificationCallback */ -/* internal XeAddRequestCallback */ -/* internal XeAddStatusCallback */ -/* internal XeAddStopCallbacks */ -internal XeAppendToStringBuffer -/* internal XeBaseAppResources */ -/* internal XeBlockMessageInput */ -/* internal XeBottomMessageHandler */ -/* internal XeCalloc */ -/* internal XeCbSelectHook */ -/* internal XeCdToSubDir */ -/* internal XeChangeContext */ -/* internal XeChangeStatusCallback */ -/* internal XeClearBits */ -/* internal XeClearMsgServerCallbacks */ -/* internal XeClearSavedUserMessages */ -internal XeClearStringBuffer -/* internal XeCloseMsgServerConnect */ -/* internal XeConcatSBPath */ -/* internal XeConcatSavedUserMessages */ -/* internal XeContextStringFopen */ -/* internal XeContextStringFreopen */ -/* internal XeContextStringMakeConnectionReturnPath */ -/* internal XeContextStringOpen */ -/* internal XeConvertBitsToIndices */ -/* internal XeCopyContext */ -/* internal XeCreateViewableContextString */ -/* internal XeCtoI */ -/* internal XeCurrentContext */ -/* internal XeDefaultCoreUserMessageHandler */ -internal XeDefaultTermioStruct -/* internal XeDeleteSymbol */ -/* internal XeDestroyContext */ -/* internal XeDestroyStringBuffer */ -/* internal XeDomainSocketPath */ -/* internal XeDontOpenMsgChn */ -/* internal XeExecRelativePath */ -/* internal XeExpandSBPath */ -internal XeFindHost -internal XeFindShortHost -/* internal XeFlushUserMsg */ -/* internal XeFopen */ -/* internal XeFormatContext */ -/* internal XeFreopen */ -/* internal XeGetFileContextFromPath */ -/* internal XeGetMsgChannel */ -/* internal XeGetToolContextFromPath */ -/* internal XeInitMsgServer */ -/* internal XeInitMsgServerReturnStatus */ -/* internal XeInitializeContext */ -/* internal XeInitializeSBPath */ -/* internal XeInvokingContext */ -internal XeIsSameHostP -/* internal XeLookUpSBPath */ -/* internal XeMakeConnectionReturnPath */ -/* internal XeMakeContext */ -/* internal XeMakeHostRelativePath */ -internal XeMakeStringBuffer -/* internal XeMaskAndSetBits */ -/* internal XeMaxFileTypes */ -/* internal XeMsgServerConnectP */ -/* internal XeNLSInit */ -/* internal XeNLSPath */ -/* internal XeOpen */ -/* internal XeOrBits */ -/* internal XeParseContextFromPath */ -/* internal XePostInternalError */ -/* internal XePrependToStringBuffer */ -/* internal XePushAUserMessage */ -/* internal XeRealloc */ -/* internal XeRegisterFunction */ -/* internal XeRegisterSymbol */ -/* internal XeRestoreXAPPLRESDIR */ -/* internal XeSBPath */ -/* internal XeSBXAPPLRESDIR */ -internal XeSPCActive -internal XeSPCData -internal XeSPCDetach -internal XeSPCGetChannelSyncFd -internal XeSPCGetDevice -internal XeSPCGetPID -internal XeSPCGetProcessStatus -internal XeSPCHandleTerminator -internal XeSPCInterruptProcess -internal XeSPCKillProcess -internal XeSPCKillProcesses -internal XeSPCLookupError -internal XeSPCOpenAndSpawn -internal XeSPCRead -internal XeSPCRestartCallbacks -internal XeSPCShutdownCallbacks -/* internal XeSavedUserMessages */ -/* internal XeSendBusy */ -/* internal XeSendFailNotification */ -/* internal XeSendMsg */ -/* internal XeSendMsgString */ -/* internal XeSendReady */ -/* internal XeSendRequest */ -/* internal XeSendRequestCatchResponse */ -/* internal XeSendRequestWithId */ -/* internal XeSendStart */ -/* internal XeSendSuccessNotification */ -/* internal XeServerDeathFn */ -/* internal XeSetAllBits */ -/* internal XeSetBit */ -/* internal XeSetCbInputAddFn */ -/* internal XeSetCbInputBlockFn */ -/* internal XeSetContextDirectory */ -/* internal XeSetContextFile */ -/* internal XeSetContextHost */ -/* internal XeSetUserMessageHandler */ -/* internal XeSetUserSignalHandler */ -/* internal XeSetXAPPLRESDIR */ -internal XeSetpgrp -/* internal XeSignalHandler */ -internal XeSignalToName -/* internal XeSimpleErrnoError */ -/* internal XeSimpleError */ -/* internal XeSplitIntoDirAndFile */ -/* internal XeStringBufferPrintf */ -/* internal XeStringBufferSetLength */ -/* internal XeStripPrefix */ -/* internal XeSuppressUserMessages */ -internal XeTermioStruct -/* internal XeToolStatus */ -/* internal XeUniqueRequestId */ -/* internal XeUserMessage */ -/* internal XeUserMessagesSuppressed */ -/* internal XeUserMsg */ -/* internal XeUserMsgWithCallback */ -internal Xe_default_symtab -internal Xe_delete_queue_element -/* internal Xe_delete_sym */ -/* internal Xe_free_symtab */ -internal Xe_init_queue -internal Xe_intern -/* internal Xe_intern_anysym */ -internal Xe_lookup -/* internal Xe_lookup_anysym */ -/* internal Xe_make_bitmask */ -internal Xe_make_list -internal Xe_make_queue -internal Xe_new_symtab -/* internal Xe_next_anysym */ -/* internal Xe_next_sym */ -/* internal Xe_pathwexp */ -internal Xe_pop_queue -internal Xe_push_queue -/* internal Xe_queue_length */ -/* internal Xe_release_bitmask */ -internal Xe_release_queue -/* internal Xe_set_next_anysym */ -/* internal Xe_set_next_sym */ -internal Xe_set_sym_fns -internal Xe_shellexp -/* internal Xe_shellrelexp */ -/* internal Xe_top_queue */ -/* internal Xecatopen */ -internal Xegetcwd -internal Xegethostname -internal Xestrxfrm -internal _DtActAllocChildRec -internal _DtActAllocID -internal _DtActAllocInvRec -internal _DtActDeleteChildRec -internal _DtActDeleteInvRec -internal _DtActEvalChildren -internal _DtActExecutionLeafNodeCleanup -internal _DtActFindChildRec -internal _DtActFindInvRec -internal _DtActFreeArgArray -internal _DtActGenerateTmpFile -internal _DtActGetCmdReturnArgs -/* internal _DtActInvRecArray */ -internal _DtActMallocEmptyArgArray -internal _DtActReadTmpFileToBuffer -internal _DtActionCommandInvoke -internal _DtActionCompareRecordBoson -internal _DtActionConverter -internal _DtActionFindDBEntry -internal _DtActionLocateRecord -/* internal _DtAddEntry */ -internal _DtAllocHashTable -internal _DtAppContext -/* internal _DtAppInit */ -/* internal _DtAppendEntryToBuffer */ -/* internal _DtAppendToBuffer */ -internal _DtCloneRequest -/* internal _DtCmdBufferLocalStderr */ -/* internal _DtCmdBufferRemoteStderr */ -internal _DtCmdBuildPathList -internal _DtCmdCheckForExecutable -internal _DtCmdCheckQForId -internal _DtCmdCommandInvokerExecute -/* internal _DtCmdCreateStderrPipe */ -internal _DtCmdCreateTerminalCommand -internal _DtCmdFreeStringVector -/* internal _DtCmdGetDefaultShell */ -/* internal _DtCmdGetDisplayHost */ -internal _DtCmdGetQueueHead -internal _DtCmdGetResources -/* internal _DtCmdInitializeErrorMessages */ -/* internal _DtCmdLocalXhost */ -internal _DtCmdLogErrorMessage -/* internal _DtCmdProcessError */ -/* internal _DtCmdRemoteXhost */ -internal _DtCmdSPCAddExceptionHandler -internal _DtCmdSPCAddInputHandler -/* internal _DtCmdSPCTerminator */ -/* internal _DtCmdSPCXhostTerminator */ -/* internal _DtCmdSuccessNotification */ -internal _DtCmdValidDir -/* internal _DtCmdValidRequest */ -/* internal _DtCompareEntries */ -internal _DtCompileMessagePiece -internal _DtCreateDirs -internal _DtCreateErrorDialog -internal _DtDbFillVariables -internal _DtDbLoad -internal _DtDestroyPixmap -internal _DtDirname -internal _DtDndArgListFromVarArgs -internal _DtDndBuffTransferProtocolInitialize -internal _DtDndCallCallbackList -internal _DtDndCopyCallbackList -internal _DtDndCountVarArgs -internal _DtDndCreateExportTransfer -internal _DtDndCreateImportTransfers -/* internal _DtDndDataConvertProc */ -/* internal _DtDndDataConvertTargets */ -/* internal _DtDndDataTransferEntries */ -/* internal _DtDndDataTransferProc */ -internal _DtDndDestroyTransfers -/* internal _DtDndFileConvertProc */ -/* internal _DtDndFileConvertTargets */ -/* internal _DtDndFileTransferEntries */ -/* internal _DtDndFileTransferProc */ -internal _DtDndFileTransferProtocolInitialize -/* internal _DtDndGetContextID */ -internal _DtDndGetHostName -internal _DtDndGetIconOffset -/* internal _DtDndGetTextualDragIcon */ -/* internal _DtDndInitializeIcons */ -internal _DtDndSelectDragSource -/* internal _DtDndTextConvertProc */ -/* internal _DtDndTextConvertTargets */ -/* internal _DtDndTextTransferEntries */ -/* internal _DtDndTextTransferProc */ -internal _DtDndTextTransferProtocolInitialize -internal _DtDndTransferAdd -internal _DtDndTransferFromTargets -internal _DtDtsClear -internal _DtDtsDAConverter -internal _DtDtsDCConverter -internal _DtDtsDbAddDatabase -internal _DtDtsDbAddField -internal _DtDtsDbAddRecord -internal _DtDtsDbCompareFieldNames -internal _DtDtsDbCompareRecordNames -internal _DtDtsDbDeleteDb -internal _DtDtsDbDeleteField -internal _DtDtsDbDeleteFields -internal _DtDtsDbDeleteRecord -internal _DtDtsDbDeleteRecords -internal _DtDtsDbFieldSort -internal _DtDtsDbGet -internal _DtDtsDbGetField -internal _DtDtsDbGetFieldByName -internal _DtDtsDbGetRecordByName -internal _DtDtsDbInit -internal _DtDtsDbPrint -internal _DtDtsDbPrintFields -internal _DtDtsDbPrintRecords -internal _DtDtsDbRecordSort -internal _DtDtsMMCacheName -internal _DtDtsMMCompareFieldNames -internal _DtDtsMMCompareRecordNames -internal _DtDtsMMCreateDb -internal _DtDtsMMCreateFile -internal _DtDtsMMGetBufferIndex -internal _DtDtsMMGetDCNameIndex -internal _DtDtsMMGetDbName -internal _DtDtsMMGetField -internal _DtDtsMMGetFieldByName -internal _DtDtsMMGetFileList -internal _DtDtsMMGetNoNameIndex -internal _DtDtsMMGetPtrSize -internal _DtDtsMMGetRecordByName -internal _DtDtsMMIsMemory -internal _DtDtsMMPathHash -internal _DtDtsMMPrint -internal _DtDtsMMPrintDb -internal _DtDtsMMPrintFld -internal _DtDtsMMPrintRec -internal _DtDtsMMStringToBoson -internal _DtDtsMMUnLoad -internal _DtDtsMMapDB -internal _DtDtsNextDASeq -internal _DtDtsNextDCSeq -internal _DtDtsSeqReset -internal _DtEmptyString -internal _DtEnumerateHashTable -/* internal _DtEnvPrint */ -internal _DtEnvRemove -internal _DtEnv_tt_host_netfile_file -internal _DtExecuteAccess -/* internal _DtExtractFieldValue */ -internal _DtFindCwd -/* internal _DtFindFirst */ -internal _DtFreeActionDB -internal _DtFreeActionStruct -/* internal _DtFreeContext */ -internal _DtFreeHashTable -internal _DtFreeRequest -internal _DtGetActionIconDefault -internal _DtGetDisplayHostName -internal _DtGetDisplayName -internal _DtGetDtTmpDir -/* internal _DtGetEntries */ -internal _DtGetExecHostsDefault -internal _DtGetImage -internal _DtGetLocalHostName -internal _DtGetNthChar -internal _DtGetSessionHostName -internal _DtInitAppContextp -internal _DtInitTtContextWidget -internal _DtInstallImage -internal _DtIsOpenableDir -internal _DtIsOpenableDirContext -internal _DtKeyToHashEntry -/* internal _DtMakeAndSetContext */ -/* internal _DtMergeEntries */ -/* internal _DtMsgBroadcastAddNewReceiver */ -/* internal _DtMsgBroadcastAddToRegistry */ -/* internal _DtMsgBroadcastCreateSharedWindow */ -/* internal _DtMsgBroadcastDeleteReceiver */ -/* internal _DtMsgBroadcastDeleteReceiverEntry */ -/* internal _DtMsgBroadcastFindWindowInRegistry */ -/* internal _DtMsgBroadcastGenerateNewPropertyName */ -/* internal _DtMsgBroadcastGetRegistry */ -/* internal _DtMsgBroadcastGetSharedWindow */ -/* internal _DtMsgBroadcastGetUnusedPropertyForReceiver */ -/* internal _DtMsgBroadcastRegister */ -/* internal _DtMsgBroadcastSend */ -/* internal _DtMsgBroadcastSenderInitialize */ -/* internal _DtMsgBroadcastSenderUninitialize */ -/* internal _DtMsgBroadcastSetPropsUnread */ -/* internal _DtMsgBroadcastUnregister */ -/* internal _DtMsgGetMessage */ -/* internal _DtMsgHandleAllocate */ -/* internal _DtMsgHandleDestroy */ -/* internal _DtMsgHandleGetAtom */ -/* internal _DtMsgHandleGetName */ -/* internal _DtMsgHandleGetPropertyAtom */ -/* internal _DtMsgHandleGetPropertyName */ -/* internal _DtMsgHandleGetWidget */ -/* internal _DtMsgHandleSetProperty */ -/* internal _DtMsgServiceIsOffered */ -/* internal _DtMsgServiceOffer */ -/* internal _DtMsgServiceReply */ -/* internal _DtMsgServiceRequest */ -/* internal _DtMsgServiceUniqueProperty */ -/* internal _DtMsgServiceWithdraw */ -/* internal _DtMsgSetMessage */ -/* internal _DtMsgW4wAddEventHandler */ -/* internal _DtMsgW4wCreate */ -/* internal _DtMsgW4wRealize */ -internal _DtPathname -internal _DtProcessTtRequest -internal _DtRegisterHashEntry -internal _DtRemoveTrailingBlanksInPlace -/* internal _DtSetContext */ -internal _DtShmBosonToString -internal _DtShmFindIntTabEntry -internal _DtShmProtoAddIntLst -internal _DtShmProtoAddInttab -internal _DtShmProtoAddStrtab -internal _DtShmProtoCopyIntLst -internal _DtShmProtoCopyInttab -internal _DtShmProtoCopyStrtab -internal _DtShmProtoDestroyIntLst -internal _DtShmProtoDestroyInttab -internal _DtShmProtoDestroyStrtab -internal _DtShmProtoInitIntLst -internal _DtShmProtoInitInttab -internal _DtShmProtoInitStrtab -internal _DtShmProtoLookUpStrtab -internal _DtShmProtoSizeIntLst -internal _DtShmProtoSizeInttab -internal _DtShmProtoSizeStrtab -internal _DtShmStringToBoson -internal _DtSortActionDb -internal _DtStringsAreEqual -/* internal _DtSvcGetName */ -internal _DtSvcInitToolTalk -/* internal _DtSvcIsRegistered */ -/* internal _DtSvcLogMsg */ -/* internal _DtSvcMsgSendTT */ -/* internal _DtSvcNotifyHandler */ -/* internal _DtSvcNotifyMsgUnregister */ -/* internal _DtSvcReplyHandler */ -/* internal _DtSvcRequestHandler */ -/* internal _DtSvcStart */ -/* internal _DtSvcUnregister */ -internal _DtTestLock -internal _DtUninstallImage -internal _DtUnregisterHashEntry -/* internal _DtUserMsgHandler */ -internal _DtUtilDelHash -internal _DtUtilDestroyHash -internal _DtUtilFindHash -internal _DtUtilGetHash -internal _DtUtilMakeHash -internal _DtUtilMakeIHash -internal _DtUtilOperateHash -/* internal _DtValidateFieldNames */ -internal _DtWsmConsumeReply -/* internal _DtWsmRemoveMarqueeSelectionCallback */ -internal _DtWsmSetWorkspaceHints -internal _Dt_isdigit -/* internal _Dt_msg_context */ -/* internal _Dt_msg_widget */ -internal _DtsDbListDb -internal _MMWriteDb -internal __DtGetPixmapData -internal __DtInstallPixmap -/* internal __nlh_buf */ -/* internal _actInvRecArraySize */ -/* internal _cmdAppContext */ -/* internal _cmdClientHost */ -/* internal _cmdDisplay */ -/* internal _cmdLocalDisplay */ -/* internal _curr_exception */ -internal _DtApplicationClass -internal _DtApplicationName -internal _DtDisplay -internal _DtEnvSessionManager -internal _DtToolClass -internal _dt_strpbrk -internal _is_previous_single -internal _mb_schr -/* internal _mb_srchr */ -internal _path_search -/* internal _strcmbn_privbuf */ -/* internal _strcmbnb_privbuf */ -/* internal _strsep_privbuf */ -/* internal _strsepb_privbuf */ -internal add_input_channel_object -internal add_input_pipe_channel_object -internal add_input_pty_channel_object -internal add_input_remote_channel_object -/* internal add_pattern_to_tree */ -internal alloc_channel_object -internal append -/* internal atoui */ -internal attach_channel_object -internal attach_noio_channel_object -internal attach_pipe_channel_object -internal attach_pty_channel_object -internal attach_remote_channel_object -internal break_on_termination -internal cde_da_compare -internal cde_dc_compare -internal cde_dc_field_compare -internal channel_class -internal channel_class_init -internal channel_object_wait_for_termination -internal check_content -internal check_pattern -internal close_channel_object -internal close_local_channel_object -/* internal close_msg_channel */ -internal close_remote_channel_object -internal cmd_Globals -internal cmd_Resources -internal connection_list -internal connector_eof -internal connector_eof_with_reset -/* internal copy_word */ -/* internal copy_word_inc_ptr */ -internal current_sequence_number -/* internal defaultShell */ -/* internal dndTargetsInList */ -/* internal errno */ -/* internal errorAddInput */ -/* internal errorBadConnect */ -/* internal errorBadService */ -/* internal errorChdir */ -/* internal errorDirectoryNameMap */ -/* internal errorEnvTooBig */ -/* internal errorExec */ -/* internal errorFork */ -/* internal errorInetSecurity */ -/* internal errorLength */ -/* internal errorLogPipe */ -/* internal errorLogfileNameMap */ -/* internal errorParams */ -/* internal errorRegisterHandshake */ -/* internal errorRegisterNetrc */ -/* internal errorRegisterOpen */ -/* internal errorRegisterUsername */ -/* internal errorRemoteSubprocess */ -/* internal errorRequest */ -/* internal errorShell */ -/* internal errorSpawn */ -/* internal errorSpcTerminator */ -/* internal errorSubprocess */ -/* internal errorTerminal */ -/* internal errorTerminalExec */ -/* internal errorUnknownHost */ -/* internal errorXhost */ -internal error_fun -internal exec_proc_channel_object -internal exec_proc_local_channel_object -internal exec_proc_remote_channel_object -internal expand_shell -internal free_protocol_requests -internal free_wire -internal get_buff_size -internal get_link_info -internal get_name_list -internal get_new_remote_wire -internal get_new_wire -internal getpipe -/* internal init_msg_channel */ -/* internal init_msg_write */ -/* internal is_multibyte */ -internal local_channel_object_input_handler -internal local_channel_object_send_eof -internal local_channel_object_wait_for_termination -internal master_pty -/* internal match_pattern_tree */ -internal max_fds -internal mode_count -/* internal mserve_host_and_port */ -/* internal msg_channel_rfd */ -/* internal msprintf */ -/* internal mvsprintf */ -/* internal next_token */ -internal noio_channel_class -internal noio_channel_class_init -internal noio_channel_object_input_handler -/* internal numActiveTransferEntries */ -internal object_create -internal object_destroy -internal object_init -internal official_hostname -internal open_channel_object -/* internal open_msg_channel */ -/* internal open_msg_chn */ -/* internal open_msg_chn_return_status */ -internal open_noio_channel_object -internal open_pipe_channel_object -internal open_pty_channel_object -internal open_remote_channel_object -internal parts_of_pattern -/* internal pathList */ -/* internal pathbase */ -/* internal pathdir */ -internal pipe_channel_class -internal pipe_channel_class_init -internal post_fork_channel_object -internal post_fork_noio_channel_object -internal post_fork_pipe_channel_object -internal post_fork_pty_channel_object -internal pre_fork_channel_object -internal pre_fork_noio_channel_object -internal pre_fork_pipe_channel_object -internal pre_fork_pty_channel_object -internal privbuf_release -internal pty_channel_class -internal pty_channel_class_init -internal read_channel_object -/* internal read_msg */ -/* internal read_msg_step */ -internal read_noio_channel_object -internal read_pipe_channel_object -internal read_pty_channel_object -internal read_remote_channel_object -internal read_terminator -internal remote_channel_class -internal remote_channel_class_init -internal remove_logfile_channel_object -internal remove_logfile_local_channel_object -internal remove_logfile_remote_channel_object -/* internal remove_tree_patterns */ -internal reset_channel_object -internal reset_noio_channel_object -internal reset_pipe_channel_object -internal reset_pty_channel_object -internal reset_remote_channel_object -internal root_class -internal root_class_struct -internal send_eof_noio_channel_object -internal send_eof_remote_channel_object -internal set_termio_noio_channel_object -internal set_termio_pty_channel_object -internal set_termio_remote_channel_object -/* internal set_up_msg_reads */ -internal setpgrp_wire -internal sigcld_with_reset -internal signal_channel_object -internal signal_local_channel_object -internal signal_remote_channel_object -internal spc_activation_list -internal spc_close -internal spc_dup2 -internal spc_error_struct -internal spc_init_fds -internal spc_logfd -internal spc_logfile -internal spc_logging -internal sprint_application_data -internal sprint_counted_string -internal sprint_device_data -internal sprint_logfile_data -internal sprint_register_data -internal sprintf_len -internal sscan_counted_string -internal sscan_device_data -internal sscan_logfile_data -internal strend -/* internal strfree */ -internal strhash -internal strhashi -internal strlower -internal strtokx -internal strupper -internal strwcmp -internal strwpat -/* internal successHost */ -/* internal svect */ -internal use_in_memory_db -/* internal word_length */ -internal write_channel_object -internal write_local_channel_object -/* internal write_msg */ -/* internal write_msg_step */ -internal write_noio_channel_object -internal write_remote_channel_object -internal write_terminator -/* internalC++ Charbuf::Charbuf(const Charbuf&) */ -/* internalC++ Charbuf::bumpsize(long) */ -/* internalC++ Charbuf::operator=(const Charbuf&) */ -/* internalC++ _Exception::_Exception(void) */ -/* internalC++ _Exception::accept(const char *const) */ -/* internalC++ _Exception::raise(const char *const) */ -/* internalC++ _Exception::recover(void) */ -/* internalC++ _Exception::~_Exception(void) */ -internalC++ _SHXbuf::append(const char*,char) -internalC++ _SHXbuf::append(const int,char) -internalC++ _SHXbuf::expand(_SHXcomponents&,char *const,char*,int) -internalC++ _SHXbuf::filegen(void) -internalC++ _SHXbuf::quote(unsigned char) -internalC++ _SHXbuf::reset(boolean,boolean) -internalC++ _SHXbuf::start_token(void) -internalC++ _SHXbuf::vector(void) -internalC++ _SHXcomponents::_SHXcomponents(const _SHXcomponents&) -internalC++ _SHXcomponents::bumpsize(long) -internalC++ _SHXcomponents::operator=(const _SHXcomponents&) -internalC++ _StringIO::doit(int) -/* internalC++ __hashtable_bump(unsigned int) */ -/* internalC++ _raise_exception(const char *const) */ -internalC++ privbuf_allocprivbuf(void) -internalC++ privbuf_charbuf::bumpsize(long) -internalC++ privbuf_charbuf::operator=(const privbuf_charbuf&) -internalC++ privbuf_charbuf::privbuf_charbuf(const privbuf_charbuf&) -internalC++ privbuf_freeprivbuf(void*) -internalC++ privbuf_strvec::bumpsize(long) -internalC++ privbuf_strvec::operator=(const privbuf_strvec&) -internalC++ privbuf_strvec::privbuf_strvec(const privbuf_strvec&) -internalC++ pushgrave(_StringIO&,const char,boolean,privbuf_charbuf&) -/* internalC++ restdirname(const char*) */ - -#if defined(sun) -/* C++ symbols from the Sun compiler */ -internal __new_handler -internal __handler_lk -internalC++ operator delete(void*) -internalC++ operator new(unsigned int) -internalC++ set_new_handler(void(*)(void)) -internalC++ set_terminate(void(*)(void)) -internalC++ set_unexpected(void(*)(void)) -internalC++ terminate(void) -internalC++ unexpected(void) -internalC++ xstack::get_prev(void) -internalC++ xalloc::xalloc(const char*,unsigned int) -#endif - -/* This symbol does not get mangled consistently across platforms. -#ifdef hpV4 -internalC++ shellscan_C_000046c7_parsemeta_:__std -internal __link__std__shellscan_C_000046c7_parsemeta_ -#elif defined(sun) -internalC++ shellscan_C:__std -#elif defined(_AIX) -internalC++ __sterm80000000_x_2fproj_2fcde_2flib_2fDtSvc_2fDtCodelibs_2fshellscan_2eC() -#endif -*/ - -#ifdef sun -/* Symbols from the sun-specific DtUtil2/SunDtHelp.c module. */ -internal SUNWDtHelpdlopen -internal _DtCreateHelpDialog -internal _DtCreateHelpQuickDialog -internal _DtHelpQuickDialogGetChild -internal _DtHelpReturnSelectedWidgetId - -/* Symbols from */ -internal advance -internal basename -internal _basename -internal braelist -internal _braelist -internal ___braelist -internal braslist -internal _braslist -internal ___braslist -internal compile -internal _compile -internal __compile -internal locs -internal _locs -internal ___locs -internal loc1 -internal _loc1 -internal ___loc1 -internal loc2 -internal _loc2 -internal ___loc2 -internal nbra -internal _nbra -internal ___nbra -internal _pure_error_ -internal _radvance -internal regerrno -internal _regerrno -internal ___regerrno -internal reglength -internal _reglength -internal ___reglength -internal step -internal _step -#endif - -/* Moved from DtHelp */ -internal ExpandPath -internal _DtMBStrchr -internal _DtMBStrrchr -internal _DtXlateMergeDbs -internal _DtXlateOpToStdValue -internal _DtXlateOpenAllDbs -internal _DtXlateOpenAndMergeDbs -internal _DtXlateOpenDb -internal _DtXlateStdToOpValue diff --git a/cde/lib/DtTerm/Makefile.am b/cde/lib/DtTerm/Makefile.am index 7b96f2127..36d71c183 100644 --- a/cde/lib/DtTerm/Makefile.am +++ b/cde/lib/DtTerm/Makefile.am @@ -18,7 +18,7 @@ libDtTerm_la_LIBADD += -lutil endif if SOLARIS -libDtTerm_la_LIBADD += -ldl -lgen +libDtTerm_la_LIBADD += -lgen endif if HAS_UTEMPTER_LIBRARY diff --git a/cde/lib/DtTerm/Term/Term.c b/cde/lib/DtTerm/Term/Term.c index 82fdedd82..536c6519d 100644 --- a/cde/lib/DtTerm/Term/Term.c +++ b/cde/lib/DtTerm/Term/Term.c @@ -699,7 +699,6 @@ static void Resize(Widget w) { DtTermWidget tw = (DtTermWidget) w; - DtTermData td = tw->vt.td; /* let our superclass (the Term Widget) perform the resize... */ tw->core.widget_class->core_class.superclass->core_class.resize(w); @@ -880,7 +879,6 @@ static void Destroy(Widget w) { DtTermWidget tw = (DtTermWidget) w; - DtTermData td = tw->vt.td; /* remove the DtTermData structure contents, followed by the structure... */ diff --git a/cde/lib/DtTerm/Term/TermAction.c b/cde/lib/DtTerm/Term/TermAction.c index 12c163eae..c1c4fa8c5 100644 --- a/cde/lib/DtTerm/Term/TermAction.c +++ b/cde/lib/DtTerm/Term/TermAction.c @@ -572,7 +572,6 @@ _DtTermActionEditKeyExecute(Widget w, XEvent *event, String *params, long keyNumber; char *ret; int i; - DtTermData td = tw->vt.td; if (*num_params < 1) { return; diff --git a/cde/lib/DtTerm/Term/TermBuffer.c b/cde/lib/DtTerm/Term/TermBuffer.c index 5325b9f5e..fd5cf8836 100644 --- a/cde/lib/DtTerm/Term/TermBuffer.c +++ b/cde/lib/DtTerm/Term/TermBuffer.c @@ -624,12 +624,7 @@ _DtTermDeleteEnhancement } /* - ** get a copy of the current enhancement - */ - fillEnh = enh[col]; - - /* - ** move all of the enhancement blocks between col + width and and the + ** move all of the enhancement blocks between col + width and the ** end of the line to col */ copyCount = WIDTH(line) - (col + width); @@ -736,19 +731,19 @@ _DtTermSetEnhancement switch (id) { case enhVideo: - enhState->video = (value &= VIDEO_MASK); + enhState->video = value & VIDEO_MASK; break; case enhField: - enhState->field = (value &= FIELD_MASK); + enhState->field = value & FIELD_MASK; break; case enhFgColor: - enhState->fgColor = (value &= COLOR_MASK); + enhState->fgColor = value & COLOR_MASK; break; case enhBgColor: - enhState->bgColor = (value &= COLOR_MASK); + enhState->bgColor = value & COLOR_MASK; break; case enhFont: - enhState->font = (value &= FONT_MASK); + enhState->font = value & FONT_MASK; break; default: return(-1); diff --git a/cde/lib/DtTerm/Term/TermFunction.c b/cde/lib/DtTerm/Term/TermFunction.c index dfc425af5..f661662a3 100644 --- a/cde/lib/DtTerm/Term/TermFunction.c +++ b/cde/lib/DtTerm/Term/TermFunction.c @@ -90,7 +90,6 @@ void _DtTermFuncScroll(Widget w, int count, FunctionSource functionSource) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; /* make sure the cursor is off... */ (void) _DtTermPrimCursorOff(w); @@ -120,7 +119,6 @@ void _DtTermFuncEndOfBuffer(Widget w, int count, FunctionSource functionSource) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; EXIT_IF_MARGINS_SET(tw) (void) _DtTermPrimCursorOff(w); @@ -220,13 +218,9 @@ termFuncErase { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; DtTermPrimData tpd = tw->term.tpd; - TermBuffer tb = tpd->termBuffer; short row; short col; - row = tpd->cursorRow + tpd->topRow; - col = tpd->cursorColumn; - switch(eraseSwitch) { case eraseToEOL: @@ -339,8 +333,6 @@ void _DtTermFuncClearToEndOfBuffer(Widget w, int count, FunctionSource functionSource) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - DtTermPrimData tpd = tw->term.tpd; - short trow ; /* turn the cursor off... */ (void) _DtTermPrimCursorOff(w); @@ -855,7 +847,6 @@ _DtTermFuncInsertLine(Widget w, int count, FunctionSource functionSource) } /* update screen info and counts... */ - count -= moveCount; insertedRows += moveCount; } } @@ -954,7 +945,6 @@ _DtTermVideoEnhancement(Widget w,int value) DtTermPrimData tpd = tw->term.tpd; DtTermWidget vtw = (DtTermWidget) w; DtTermData td = vtw->vt.td; - ParserContext context = GetParserContext(w); switch(value) { case 0: @@ -1075,8 +1065,6 @@ _DtTermFontEnhancement(Widget w,int value) DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; DtTermPrimData tpd = tw->term.tpd; DtTermWidget vtw = (DtTermWidget) w; - DtTermData td = vtw->vt.td; - ParserContext context = GetParserContext(w); (void)_DtTermPrimBufferSetEnhancement(tpd->termBuffer, tpd->topRow + tpd->cursorRow, tpd->cursorColumn, enhFont, value); diff --git a/cde/lib/DtTerm/Term/TermFunctionKey.c b/cde/lib/DtTerm/Term/TermFunctionKey.c index 27a87d4c4..2dc475c0c 100644 --- a/cde/lib/DtTerm/Term/TermFunctionKey.c +++ b/cde/lib/DtTerm/Term/TermFunctionKey.c @@ -54,7 +54,6 @@ _DtTermFunctionKeyExecute( ) { DtTermWidget tw = (DtTermWidget) w; - DtTermData td = tw->vt.td; if (!shift || tw->vt.sunFunctionKeys == True ) { if ( tw->vt.sunFunctionKeys == True ) { diff --git a/cde/lib/DtTerm/Term/TermParse.c b/cde/lib/DtTerm/Term/TermParse.c index 9750ecca6..747363234 100644 --- a/cde/lib/DtTerm/Term/TermParse.c +++ b/cde/lib/DtTerm/Term/TermParse.c @@ -49,12 +49,6 @@ #include "TermPrimUtil.h" #include "TermPrimParseTable.h" -#if defined (__hpux) -/* - * On HP MAXINT is defined in both and - */ -#undef MAXINT -#endif #if defined(CSRG_BASED) #define MAXSHORT SHRT_MAX #else @@ -542,11 +536,10 @@ _DtTermEraseChars(Widget w) /* ECH CSIpX */ { ParserContext context ; DtTermWidget vtw = (DtTermWidget) w; - int row,col,cnt ; + int col,cnt ; Debug('P', fprintf(stderr,">>In func _DtTermEraseChars\n")) ; KILLWRAP(vtw) ; context = GetParserContext(w) ; - row = vtw->term.tpd->cursorRow ; col = vtw->term.tpd->cursorColumn ; STORELASTARG(context) ; cnt = context->parms[1] ; @@ -602,12 +595,11 @@ _DtTermCursorUp(Widget w) /* CUU CISpA */ { ParserContext context ; DtTermWidget vtw = (DtTermWidget) w; - int trow, row, tmargin, cnt; + int row, tmargin, cnt; Debug('P', fprintf(stderr,">>In func _DtTermCursorUp\n")) ; context = GetParserContext(w) ; KILLWRAP(vtw) ; tmargin = TOPMARGIN(vtw) ; - trow = TOPROW(vtw) ; STORELASTARG(context) ; cnt = context->parms[1] ; if (!(cnt))cnt=1; @@ -665,13 +657,12 @@ _DtTermCursorBack(Widget w) /* CUB CISpD */ { ParserContext context ; DtTermWidget vtw = (DtTermWidget) w; - int i,k,j,row,col,fcol,cnt ; + int i,k,j,row,col,cnt ; Debug('P', fprintf(stderr,">>In func _DtTermCursorBack\n")) ; KILLWRAP(vtw) ; context = GetParserContext(w) ; STORELASTARG(context) ; cnt = context->parms[1] ; - fcol = FIRSTCOLUMN(vtw) ; row = vtw->term.tpd->cursorRow; col = vtw->term.tpd->cursorColumn; if (!cnt) cnt=1; @@ -699,10 +690,8 @@ void _DtTermCursorToLineUp(Widget w) /* CPL CSIpF */ { DtTermWidget vtw = (DtTermWidget) w; - ParserContext context ; Debug('P', fprintf(stderr,">>In func _DtTermCursorToLineUp\n")) ; KILLWRAP(vtw) ; - context = GetParserContext(w) ; vtw->term.tpd->cursorColumn = FIRSTCOLUMN(vtw) ; _DtTermCursorUp(w) ; } @@ -893,7 +882,6 @@ _DtTermCharAttributes(Widget w) /* SGR CSIpm */ Debug('P', fprintf(stderr,">>In func _DtTermCharAttributes\n")) ; context = GetParserContext(w) ; STORELASTARG(context) ; - cnt = PCOUNT(context) ; if(PCOUNT(context)) { for (cnt=1; cnt <= PCOUNT(context); cnt++) _DtTermVideoEnhancement(w,context->parms[cnt]) ; @@ -942,7 +930,6 @@ _DtTermChangeTextParam(Widget w) /* xterm CSIp;pcCtrl-G */ { ParserContext context ; DtTermWidget tw = (DtTermWidget) w; - DtTermData vtd = tw->vt.td; Widget sw; int i ; Arg arg[5]; @@ -1039,7 +1026,6 @@ _DtTermSaveCursor(Widget w) /* DECSC ESC7 */ { DtTermWidget vtw = (DtTermWidget) w; DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - DtTermBuffer tb = (DtTermBuffer)tw->term.tpd->termBuffer ; DtTermData vtd = vtw->vt.td; Debug('P', fprintf(stderr,">>In func _DtTermSaveCursor\n")) ; @@ -1174,19 +1160,13 @@ _DtTermSetCompatLevel(Widget w) /* DECSCL CSI p;p"p (last p literal) */ void _DtTermInvokeG3(Widget w) /* LS3R ESC| */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermInvokeG3\n")) ; - context = GetParserContext(w) ; } void _DtTermInvokeG2(Widget w) /* LS3R ESC} */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermInvokeG2\n")) ; - context = GetParserContext(w) ; } void @@ -1447,10 +1427,7 @@ _DtTermAlignTest(Widget w) /* DECALN ESC#8 */ void _DtTermInvokeG1(Widget w) /* ESC~ESC */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermInvokeG1\n")) ; - context = GetParserContext(w) ; } void @@ -1544,7 +1521,6 @@ _DtTermSelEraseInDisplay(Widget w) /* DECSED ESC?pJ */ { DtTermWidget vtw = (DtTermWidget) w; DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - TermBuffer tb = tw->term.tpd->termBuffer ; ParserContext context ; enhValues evalues; int r,col1,col2,row1,row2,col,row ; @@ -1695,10 +1671,7 @@ _DtTermParseHexDigit(Widget w) /* vt220 DECUDK store hex digit*/ void _DtTermReset(Widget w) /* RIS ESCc */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermReset\n")) ; - context = GetParserContext(w) ; _DtTermFuncHardReset(w,0 ,fromParser) ; } @@ -1772,28 +1745,19 @@ _DtTermSetCharEraseMode(Widget w) /* DECSCA ESCp"q */ void _DtTermSingleWide(Widget w) /* DECSWL ESC#5 */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermSingleWide\n")) ; - context = GetParserContext(w) ; } void _DtTermDoubleWide(Widget w) /* DECDWL ESC#6 */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermDoubleWide\n")) ; - context = GetParserContext(w) ; } void _DtTermDoubleHigh(Widget w) /* DECWHL ESC#4 */ { - ParserContext context ; - int cnt ; Debug('P', fprintf(stderr,">>In func _DtTermDoubleHigh\n")) ; - context = GetParserContext(w) ; } void @@ -1996,11 +1960,9 @@ _DtTermParseBackspace /* Ctrl-H */ Widget w ) { - ParserContext context ; DtTermWidget vtw = (DtTermWidget) w; int row,col,fcol,cnt ; Debug('P', fprintf(stderr,">>In func _DtTermParseBackspace\n")) ; - context = GetParserContext(w) ; fcol = FIRSTCOLUMN(vtw) ; row = vtw->term.tpd->cursorRow; col = vtw->term.tpd->cursorColumn; @@ -2104,7 +2066,6 @@ _DtTermParseSunMisc /* Misc sun esc seqs */ DtTermWidget vtw = (DtTermWidget) w; Display *display = XtDisplay(w); int i, scr_num = XScreenNumberOfScreen(XtScreen(w)); - Window win = XtWindow(w); Window sh_win; Widget sw; XWindowChanges values; @@ -2195,18 +2156,18 @@ _DtTermParseSunMisc /* Misc sun esc seqs */ s = XtMalloc(strlen(icon) + strlen(fmt) + 1); else s = buf; - sprintf(s, "%s", fmt); + sprintf(s, fmt, icon); sendEscSequence(w,s) ; if (s != buf) XtFree(s); break ; case 21: XtVaGetValues(sw,XmNtitle, &title, NULL); fmt = "\033]l%s\033\\"; - if (strlen(icon) + strlen(fmt) + 1 >= sizeof(buf)) - s = XtMalloc(strlen(icon) + strlen(fmt) + 1); + if (strlen(title) + strlen(fmt) + 1 >= sizeof(buf)) + s = XtMalloc(strlen(title) + strlen(fmt) + 1); else s = buf; - sprintf(s, "%s", fmt); + sprintf(s, fmt, title); sendEscSequence(w,s) ; if (s != buf) XtFree(s); break ; @@ -2239,8 +2200,6 @@ Widget w void _DtTermParserSunIconFile(Widget w) /* Sun set icon to pixmap in file */ { - DtTermBuffer tb = - (DtTermBuffer)((DtTermPrimitiveWidget)w)->term.tpd->termBuffer ; ParserContext context ; int fg, bg; Widget sw; diff --git a/cde/lib/DtTerm/TermPrim/Makefile.am b/cde/lib/DtTerm/TermPrim/Makefile.am index 6ecc554f4..6c404dd7a 100644 --- a/cde/lib/DtTerm/TermPrim/Makefile.am +++ b/cde/lib/DtTerm/TermPrim/Makefile.am @@ -35,24 +35,6 @@ libTermPrim_la_SOURCES = TermPrim.c \ if SOLARIS libTermPrim_la_SOURCES += TermPrimGetPty-svr4.c -AM_CPPFLAGS += -DSUN_ARCHITECTURE -endif - -# Use the posix pts api, like linux -if BSD +else libTermPrim_la_SOURCES += TermPrimGetPty-pts.c -# uses CSRG_BASED global define -endif - -if FREEBSD -AM_CPPFLAGS += -DFREEBSD_ARCHITECTURE -endif - -if OPENBSD -AM_CPPFLAGS += -DOPENBSD_ARCHITECTURE -endif - -if LINUX -libTermPrim_la_SOURCES += TermPrimGetPty-pts.c -AM_CPPFLAGS += -DLINUX_ARCHITECTURE endif diff --git a/cde/lib/DtTerm/TermPrim/TermPrim.c b/cde/lib/DtTerm/TermPrim/TermPrim.c index 3688e4623..2221afd3e 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrim.c +++ b/cde/lib/DtTerm/TermPrim/TermPrim.c @@ -75,7 +75,7 @@ extern char * _DtTermPrimGetMessage( char *filename, int set, int n, char *s ); #include #include
#include -#if defined(__linux__) || defined(hpV4) +#if defined(__linux__) # include /* For FD_* macros. */ # include /* For select() prototype. */ #else @@ -246,21 +246,12 @@ static XtResource resources[] = XtOffsetOf(struct _DtTermPrimitiveRec, term.columns), XmRImmediate, (XtPointer) defaultColumns }, -#ifdef HPVUE - { - DtNbackgroundIsSelect, DtCBackgroundIsSelect, XmRBoolean, - sizeof(Boolean), - XtOffsetOf(struct _DtTermPrimitiveRec, term.backgroundIsSelect), - XtRImmediate, (XtPointer) True - }, -#else /* HPVUE */ { DtNbackgroundIsSelect, DtCBackgroundIsSelect, XmRBoolean, sizeof(Boolean), XtOffsetOf(struct _DtTermPrimitiveRec, term.backgroundIsSelect), XtRImmediate, (XtPointer) False }, -#endif /* HPVUE */ { XmNtraversalOn, XmCTraversalOn, XmRBoolean, sizeof(Boolean), XtOffsetOf(struct _DtTermPrimitiveRec, primitive.traversal_on), @@ -1100,11 +1091,28 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) &tw->term.boldFontSet, &tw->term.boldFont); } else { /* let's try and build a bold fontlist off of the base fontlist... */ + int num_fonts; + char **fontNames; + char *boldFontNames = NULL; + const char *bold = "bold"; + size_t boldLen = strlen(bold); + if (tw->term.fontSet) { - int num_fonts; + int i; XFontStruct **fonts; - char **fontNames; - char boldFontNames[BUFSIZ]; + size_t len = 1; /* 1: NUL */ + + Debug('f', fprintf(stderr, ">>generating bold fontset\n")); + num_fonts = XFontsOfFontSet(tw->term.fontSet, &fonts, &fontNames); + + for (i = 0; i < num_fonts; ++i) + /* 2: COMMA and SPACE */ + len += strlen(fontNames[i]) + boldLen + 2; + + boldFontNames = malloc(len); + } + + if (boldFontNames) { char *c1; char *c2; int i1; @@ -1112,8 +1120,6 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) char **missingCharsetList; int missingCharsetCount; - Debug('f', fprintf(stderr, ">>generating bold fontset\n")); - num_fonts = XFontsOfFontSet(tw->term.fontSet, &fonts, &fontNames); for (i1 = 0, c2 = boldFontNames; i1 < num_fonts; i1++) { /* if this is not the first name we need a comma to * separate the names... @@ -1137,8 +1143,8 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) /* make boldFont bold by swapping the bold in for the * weight... */ - (void) strcpy(c2, "bold"); - c2 += strlen("bold"); + (void) strcpy(c2, bold); + c2 += boldLen; /* skip over the weight in the source... */ while (*c1 && (*c1 != '-')) { @@ -1160,6 +1166,9 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) &missingCharsetList, &missingCharsetCount, (char **) 0); + + free(boldFontNames); + if (missingCharsetCount > 0) { int i; @@ -1205,8 +1214,8 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) /* make boldFont bold by swapping the bold in for the * weight... */ - (void) strcpy(c2, "bold"); - c2 += strlen("bold"); + (void) strcpy(c2, bold); + c2 += boldLen; /* skip over the weight in the source... */ while (*c1 && (*c1 != '-')) { @@ -1335,7 +1344,7 @@ Initialize(Widget ref_w, Widget w, Arg *args, Cardinal *num_args) tw->term.log_on = False ; if (tw->term.logging) { - _DtTermPrimStartLog(tw) ; + _DtTermPrimStartLog((Widget) tw); } Debug('T', timeStamp("TermPrim Initialize() finished")); @@ -2346,7 +2355,6 @@ static void Realize(Widget w, XtValueMask *p_valueMask, XSetWindowAttributes *attributes) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - DtTermPrimData tpd = tw->term.tpd; Mask valueMask = *p_valueMask; sigset_t sigNew; char buffer[BUFSIZ]; @@ -2667,7 +2675,7 @@ Destroy(Widget w) /* flush the log file */ if (tw->term.logging ) { - _DtTermPrimCloseLog(tw) ; + _DtTermPrimCloseLog((Widget) tw); } if (tw->term.boldFont) { @@ -3882,7 +3890,7 @@ PreeditHighlight( TermSelectInfo selectInfo = tw->term.tpd->selectInfo; /* check for null feedback */ - if (call_data->text->feedback) { + if (call_data && call_data->text && call_data->text->feedback) { switch (*call_data->text->feedback) { case XIMReverse: case XIMUnderline: diff --git a/cde/lib/DtTerm/TermPrim/TermPrimAction.c b/cde/lib/DtTerm/TermPrim/TermPrimAction.c index 4287e3e81..b6b2953a9 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimAction.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimAction.c @@ -157,7 +157,6 @@ _DtTermPrimActionTab(Widget w, XEvent *event, String *params, Cardinal *num_params) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; Boolean shiftedTab = False; Boolean numericTab = False; int i; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimDebug.c b/cde/lib/DtTerm/TermPrim/TermPrimDebug.c index 9990ebfb8..f80dcf91f 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimDebug.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimDebug.c @@ -33,11 +33,7 @@ #include #include #include -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) -# include -#else -# include -#endif +#include #include "TermHeader.h" #include "TermPrimDebug.h" #include @@ -72,13 +68,6 @@ static void catchExit(void) { - int a; - int b; - - a = 1; - b = a; - a = b; - return; } typedef struct _argArray { diff --git a/cde/lib/DtTerm/TermPrim/TermPrimFunction.c b/cde/lib/DtTerm/TermPrim/TermPrimFunction.c index dad8e3518..d9755542c 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimFunction.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimFunction.c @@ -389,7 +389,6 @@ void _DtTermPrimFuncRedrawDisplay(Widget w, int count, FunctionSource functionSource) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; (void) XClearArea(XtDisplay(w), XtWindow(w), 0, 0, 0, 0, True); return; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c index 0beb1d190..bd9ef8f41 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c @@ -172,7 +172,7 @@ static struct _pty_dirs { {PTY_null, PTY_null, PTY_null, PTY_null, PTY_null, False}, }; -#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_BASED) +#if defined(CSRG_BASED) /* Use openpty() to open Master/Slave pseudo-terminal pair */ /* Current version of openpty() uses non-STREAM device. BSD name space */ #define TTYNAMELEN 25 @@ -273,25 +273,8 @@ GetPty(char **ptySlave, char **ptyMaster) * This allows us to access the pty when we * are no longer suid root... */ -#ifdef HP_ARCHITECTURE - { - struct group *grp; - gid_t gid; - _Xgetgrparams grp_buf; - - if (grp = _XGetgrnam("tty", grp_buf)) { - gid = grp->gr_gid; - } else { - gid = 0; - } - (void) endgrent(); - (void) chown(ttyDev, getuid(), gid); - (void) chmod(ttyDev, 0620); - } -#else /* HP_ARCHITECTURE */ (void) chown(ttyDev, getuid(), getgid()); (void) chmod(ttyDev, 0622); -#endif /* HP_ARCHITECTURE */ /* close off the pty slave... */ (void) close(ttyFd); @@ -336,7 +319,7 @@ GetPty(char **ptySlave, char **ptyMaster) return(-1); } -#endif /* ALPHA_ARCHITECTURE */ +#endif /* BSD */ /* this is a public wrapper around the previous function that runs the * previous function setuid root... @@ -358,45 +341,8 @@ _DtTermPrimGetPty(char **ptySlave, char **ptyMaster) static int SetupPty(char *ptySlave, int ptyFd) { -#ifdef HP_ARCHITECTURE - { - struct group *grp; - gid_t gid; - _Xgetgrparams grp_buf; - - if (grp = _XGetgrnam("tty", grp_buf)) { - gid = grp->gr_gid; - } else { - gid = 0; - } - (void) endgrent(); - (void) chown(ptySlave, getuid(), gid); - (void) chmod(ptySlave, 0620); - } -#else /* HP_ARCHITECTURE */ -#ifdef ALPHA_ARCHITECTURE - /* code from xterm to setup ownership and permission */ - { - struct group *ttygrp; - _Xgetgrparams grp_buf; - - if (ttygrp = _XGetgrnam("tty", grp_buf)) { - /* change ownership of tty to real uid, "tty" gid */ - chown (ptySlave, getuid(), ttygrp->gr_gid); - chmod (ptySlave, 0620); - } - else { - /* change ownership of tty to real group and user id */ - chown (ptySlave, getuid(), getgid()); - chmod (ptySlave, 0622); - } - endgrent(); - } -#else /* ALPHA_ARCHITECTURE */ (void) chown(ptySlave, getuid(), getgid()); (void) chmod(ptySlave, 0622); -#endif /* ALPHA_ARCHITECTURE */ -#endif /* HP_ARCHITECTURE */ return 0; } diff --git a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-clone.c b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-clone.c index d22bb8102..7409234ba 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-clone.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-clone.c @@ -34,9 +34,6 @@ #include #include #include -#ifdef HP_ARCHITECTURE -# define X_INCLUDE_GRP_H -#endif /* HP_ARCHITECTURE */ #define X_INCLUDE_UNISTD_H #define XOS_USE_XT_LOCKING #include @@ -85,25 +82,8 @@ GetPty(char **ptySlave, char **ptyMaster) (void) close(ttyFd); /* fix the owner, mode, and group... */ -#ifdef HP_ARCHITECTURE - { - struct group *grp; - gid_t gid; - _Xgetgrparams grp_buf; - - if (grp = _XGetgrnam("tty", grp_buf)) { - gid = grp->gr_gid; - } else { - gid = 0; - } - (void) endgrent(); - (void) chown(*ptySlave, getuid(), gid); - (void) chmod(*ptySlave, 0620); - } -#else /* HP_ARCHITECTURE */ (void) chown(*ptySlave, getuid(), getgid()); (void) chmod(*ptySlave, 0622); -#endif /* HP_ARCHITECTURE */ /* pty master and slave names are already set. Return * the file descriptor... @@ -142,25 +122,8 @@ _DtTermPrimGetPty(char **ptySlave, char **ptyMaster) static int SetupPty(char *ptySlave, int ptyFd) { -#ifdef HP_ARCHITECTURE - { - struct group *grp; - gid_t gid; - _Xgetgrparams grp_buf; - - if (grp = _XGetgrnam("tty", grp_buf)) { - gid = grp->gr_gid; - } else { - gid = 0; - } - (void) endgrent(); - (void) chown(ptySlave, getuid(), gid); - (void) chmod(ptySlave, 0620); - } -#else /* HP_ARCHITECTURE */ (void) chown(ptySlave, getuid(), getgid()); (void) chmod(ptySlave, 0622); -#endif /* HP_ARCHITECTURE */ } int diff --git a/cde/lib/DtTerm/TermPrim/TermPrimLineDraw.c b/cde/lib/DtTerm/TermPrim/TermPrimLineDraw.c index 1a5417b60..70e6e45de 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimLineDraw.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimLineDraw.c @@ -263,6 +263,7 @@ ScaleCharacter( #endif /* USE_PIXMAPS */ } +#ifdef USE_PIXMAPS /* stipple in the rectangle... */ for (j = 0; j < glyph->numStipples; j++) { @@ -272,10 +273,8 @@ ScaleCharacter( int y1; int y2; int stippleSize; -#ifdef USE_PIXMAPS int xIndex; int yIndex; -#endif /* USE_PIXMAPS */ /* scale x1 and x2 to our width... */ x1 = ((width - 1) * glyph->stipples[j].x1) / 100; @@ -293,7 +292,6 @@ ScaleCharacter( y1 += glyph->stipples[j].y1Offset; y2 += glyph->stipples[j].y2Offset; -#ifdef USE_PIXMAPS /* fill in the area... */ for (yIndex = y1; yIndex < y2; yIndex += stippleSize) { for (xIndex = x1; xIndex < x2; xIndex += stippleSize) { @@ -321,8 +319,8 @@ ScaleCharacter( } } } -#endif /* USE_PIXMAPS */ } +#endif /* USE_PIXMAPS */ /* mark this character as completed... */ #ifdef USE_PIXMAPS @@ -374,7 +372,6 @@ _DtTermPrimLineDrawCreateFont(Widget w, GlyphInfo glyphInfo, int numGlyphs, int width, int ascent, int descent) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; int fontNumber; LineDrawFont lineDrawFont; int i; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h b/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h index 3f9da45f1..a9a74df21 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h +++ b/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h @@ -63,38 +63,12 @@ #ifndef _Dt_TermPrimOSDepI_h #define _Dt_TermPrimOSDepI_h -#ifdef ALPHA_ARCHITECTURE -# define USE_TIOCCONS /* use tioccons for -C */ -# define HAS_SETEUID /* seteuid available */ -# define HAS_SETREUID /* setreuid available */ -# define USE_PTYS /* use ptys */ -# define USE_TCSBRK /* use TCSBRK ioctl() */ -#endif /* ALPHA_ARCHITECTURE */ - -#ifdef HP_ARCHITECTURE -# define XOR_CAPS_LOCK /* xor caps lock and shift */ -# define USE_TIOCCONS /* use tioccons for -C */ -# define SETENV_LINES_AND_COLS /* set $LINES and $COLUMNS */ -# define HAS_SETRESUID /* setresuid available */ - -# if OSMAJORVERSION > 9 -# define USE_STREAMS /* use streams */ -# define USE_CSWIDTH /* use the csWidth resource to */ - /* initialize multi-byte processing */ - /* in ldterm */ -# define USE_TCSENDBREAK /* use tiocbreak() */ -# else /* OSMAJORVERSION > 9 */ -# define USE_PTYS /* use ptys */ -# define USE_TIOCBREAK /* use TIOCBREAK ioctl() */ -# endif /* OSMAJORVERSION > 9 */ -#endif /* HP_ARCHITECTURE */ - -#ifdef LINUX_ARCHITECTURE +#ifdef __linux__ # define USE_TIOCCONS /* use tioccons for -C */ # define HAS_SETEUID /* seteuid available */ # define HAS_SETREUID /* setreuid available */ # define USE_TCSENDBREAK /* use tiocbreak() */ -#endif /* LINUX_ARCHITECTURE */ +#endif /* LINUX */ #ifdef CSRG_BASED # define HAS_SETEUID /* seteuid available */ @@ -102,7 +76,7 @@ # define USE_TCSENDBREAK /* use tiocbreak() */ #endif /* CSRG_BASED */ -#ifdef SUN_ARCHITECTURE +#ifdef sun # define XOR_CAPS_LOCK /* xor caps lock and shift */ # define USE_SRIOCSREDIR /* use SRIOCSREDIR ioctl for -C */ # define USE_STREAMS /* use streams */ @@ -113,7 +87,7 @@ # define USE_SUN_WCWIDTH_PATCH # define wcwidth(w) sun_wcwidth(w) # endif /* (_XOPEN_VERSION == 3) */ -#endif /* SUN_ARCHITECTURE */ +#endif /* SUN */ #ifdef IBM_ARCHITECTURE /* this seems to be #define'ed in the world of imake... */ diff --git a/cde/lib/DtTerm/TermPrim/TermPrimParser.c b/cde/lib/DtTerm/TermPrim/TermPrimParser.c index 6a953ea0e..2eaa3ce29 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimParser.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimParser.c @@ -37,12 +37,6 @@ #include "TermPrimParserP.h" #include "TermPrimBuffer.h" -#if defined (__hpux) -/* - * On HP MAXINT is defined in both and - */ -#undef MAXINT -#endif #if defined(CSRG_BASED) #define MAXINT INT_MAX #else diff --git a/cde/lib/DtTerm/TermPrim/TermPrimRender.c b/cde/lib/DtTerm/TermPrim/TermPrimRender.c index 040e5a254..6c02de6c7 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimRender.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimRender.c @@ -795,7 +795,6 @@ _DtTermPrimFillScreenGap(Widget w) /* the lines are now freed, adjust the used count... */ tpd->lastUsedHistoryRow -= historyLinesNeeded; if (tpd->lastUsedHistoryRow < 0) { - historyLinesNeeded += tpd->lastUsedHistoryRow; tpd->lastUsedHistoryRow = 0; } } @@ -824,9 +823,6 @@ _DtTermPrimFillScreenGap(Widget w) enhValue *eValues = (enhValue *)NULL; overflowChars = (termChar *) XtMalloc(BUFSIZ * sizeof (termChar)); - c1 = _DtTermPrimBufferGetCharacterPointer( - tBuffer, i1, 0); - /* Perpetuate the enhancements. */ for (eCol = 0; eCol < length; eCol += eCount) { @@ -1095,7 +1091,6 @@ _DtTermPrimInsertText(Widget w, unsigned char *buffer, int length) * character count... */ pmb = (char *)buffer; - pwc = wcBuffer; wcBufferLen = i; i = 0; while (i < wcBufferLen) @@ -1270,7 +1265,6 @@ _DtTermPrimInsertText(Widget w, unsigned char *buffer, int length) newWidth = DoInsert(w, &buffer[insertStartX], insertCharCount, &wrapped); tpd->cursorColumn += insertCharCount; - insertCharCount = 0; if (tpd->insertCharMode != DtTERM_INSERT_CHAR_OFF) { renderEndX = newWidth; } else { @@ -1289,8 +1283,6 @@ _DtTermPrimInsertText(Widget w, unsigned char *buffer, int length) (void) _DtTermPrimRefreshText(w, 0, tpd->cursorRow + 1, renderEndX, tpd->cursorRow + 1); } - wrapped = False; - needToRender = False; } return(i); @@ -1336,7 +1328,6 @@ _DtTermPrimParseInput struct termData *tpd = tw->term.tpd; DtTermPrimitiveClassPart *termClassPart = &(((DtTermPrimitiveClassRec *) (tw->core.widget_class))->term_primitive_class); - TermBuffer tBuffer = tpd->termBuffer; int i; short insertStart; short insertByteCount; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimRenderMb.c b/cde/lib/DtTerm/TermPrim/TermPrimRenderMb.c index 26f51edf0..1c0c9c73e 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimRenderMb.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimRenderMb.c @@ -621,7 +621,7 @@ DoInsertWc(Widget w, wchar_t *wcBuffer, int wcBufferLen, Boolean *wrapped) wcBuffer, /* newChars */ wcBufferLen, /* numChars */ tpd->insertCharMode != DtTERM_INSERT_CHAR_OFF, /* insert flag */ - &returnChars, /* return char ptr */ + (termChar **) (&returnChars), /* return char ptr */ &returnCount); /* return count ptr */ if ((tpd->insertCharMode != DtTERM_INSERT_CHAR_ON_WRAP) || (returnCount <= 0)) { @@ -659,7 +659,7 @@ DoInsertWc(Widget w, wchar_t *wcBuffer, int wcBufferLen, Boolean *wrapped) wcBuffer, /* newChars */ wcBufferLen, /* numChars */ tpd->insertCharMode != DtTERM_INSERT_CHAR_OFF, /* insert flag */ - &returnChars, /* return char ptr */ + (termChar **) (&returnChars), /* return char ptr */ &returnCount); /* return count ptr */ (void) XtFree((char *) wcBuffer); (void) XtFree((char *) returnChars); @@ -880,7 +880,6 @@ _DtTermPrimInsertTextWc newWidth = DoInsertWc(w, &wcBuffer[insertStartX], insertCharCount, &wrapped); tpd->cursorColumn += insertCharWidth; - insertCharCount = 0; if (tpd->insertCharMode == DtTERM_INSERT_CHAR_OFF) { renderEndX = MAX(renderEndX, tpd->cursorColumn); } else { @@ -899,8 +898,6 @@ _DtTermPrimInsertTextWc (void) _DtTermPrimRefreshTextWc(w, 0, tpd->cursorRow + 1, renderEndX + 1, tpd->cursorRow + 1); } - wrapped = False; - needToRender = False; } return(i); } diff --git a/cde/lib/DtTerm/TermPrim/TermPrimScroll.c b/cde/lib/DtTerm/TermPrim/TermPrimScroll.c index f142f3fe8..e90756d37 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimScroll.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimScroll.c @@ -105,7 +105,6 @@ _DtTermPrimScrollWait(Widget w) int i; int exposeY; int exposeHeight; - int scrolledLines; Debug('s', fprintf(stderr, ">>_DtTermPrimScrollWait() starting\n")); Debug('s', fprintf(stderr, @@ -232,7 +231,6 @@ _DtTermPrimScrollWait(Widget w) exposeHeight)); /* set scrollLines == 0, or renderText will not render them... */ - scrolledLines = tpd->scroll.jump.scrollLines; tpd->scroll.jump.scrollLines = 0; /* clear the scrolled flag... */ tpd->scroll.jump.scrolled = False; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSelect.c b/cde/lib/DtTerm/TermPrim/TermPrimSelect.c index 3701db6ad..20271fb94 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimSelect.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimSelect.c @@ -372,7 +372,6 @@ bufferRowColToPos ) { DtTermPrimData tpd = tw->term.tpd; - TermSelectInfo selectInfo = tpd->selectInfo; short lrow, lcol; XmTextPosition pos; @@ -1369,7 +1368,7 @@ doExtendedSelection if (position == scan (tw, begin, selectInfo->scanType, scanRight, 1, FALSE)) { - begin = cursorPos = position; + begin = position; } } } @@ -1505,8 +1504,6 @@ doHandleTargets { _TermSelectPrimaryRec *primSelect = (_TermSelectPrimaryRec *) closure; DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget)w; - DtTermPrimData tpd = tw->term.tpd; - TermSelectInfo selectInfo = tpd->selectInfo; XTextProperty tmpProp; XmTextBlockRec block; int i, status; @@ -2240,9 +2237,8 @@ _DtTermPrimSelectDeleteLines return; } - /* figure out what the begin and end lines are... */ + /* figure out what the begin line is... */ selectLineBegin = selectInfo->begin / (selectInfo->columns + 1); - selectLineEnd = (selectInfo->end - 1) / (selectInfo->columns + 1); /* if the beginning of the selection is after the source, we need to * move the selection up... @@ -2274,9 +2270,8 @@ _DtTermPrimSelectInsertLines return; } - /* figure out what the begin and end lines are... */ + /* figure out what the begin line is... */ selectLineBegin = selectInfo->begin / (selectInfo->columns + 1); - selectLineEnd = (selectInfo->end - 1) / (selectInfo->columns + 1); /* if the beginning of the selection is at or after the source, we need to * move the selection up... @@ -2328,8 +2323,6 @@ _DtTermPrimSelectPage ) { DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget)w; - DtTermPrimData tpd = tw->term.tpd; - TermSelectInfo selectInfo = tpd->selectInfo; XButtonEvent *btnEvent = (XButtonEvent *) event; XmTextPosition begin, end; short lastRow, width; @@ -2365,8 +2358,6 @@ DropTransferCallback( { _DtTermDropTransferRec *transfer_rec = (_DtTermDropTransferRec *) closure; DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget)transfer_rec->widget; - DtTermPrimData tpd = tw->term.tpd; - TermSelectInfo selectInfo = tpd->selectInfo; /* When type = NULL, we are assuming a DELETE request has been requested */ if (*type == 0) { @@ -2384,7 +2375,6 @@ DropTransferCallback( transferEntries[0].client_data = (XtPointer) transfer_rec; transferEntries[0].target = XmInternAtom(XtDisplay(w),"DELETE", False); - transferList = transferEntries; XmDropTransferAdd(w, transferEntries, 1); } } @@ -2444,8 +2434,6 @@ HandleDrop( Widget w, XmDropProcCallbackStruct *cb ) Widget drag_cont, initiator; /* XmTextWidget tw = (XmTextWidget) w; */ DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget)w; - DtTermPrimData tpd = tw->term.tpd; - TermSelectInfo selectInfo = tpd->selectInfo; Cardinal numExportTargets, n; Atom *exportTargets; Arg args[10]; diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c b/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c index 154d28f3c..c2b76acfb 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c @@ -36,19 +36,7 @@ #include "TermPrimDebug.h" #include -#ifdef ALPHA_ARCHITECTURE -#include -#include -#endif /* ALPHA_ARCHITECTURE */ #include -#ifdef USE_PTYS -#ifdef HP_ARCHITECTURE -#include -#endif /* HP_ARCHITECTURE */ -#endif /* USE_PTYS */ -#if defined(HP_ARCHITECTURE) && !(OSMAJORVERSION > 9) -#include -#endif /* defined(HP_ARCHITECTURE) && !(OSMAJORVERSION > 9) */ #if defined (USE_SETCSMAP) #include @@ -67,9 +55,9 @@ #include #endif /* USE_TIOCCONS */ -#if defined(LINUX_ARCHITECTURE) || defined(CSRG_BASED) +#if defined(__linux__) || defined(CSRG_BASED) #include -#endif /* LINUX_ARCHITECTURE */ +#endif /* LINUX */ #ifdef USE_STREAMS #include @@ -571,40 +559,7 @@ _DtTermPrimPtyInit TMODE (XTTYMODE_eof, tio.c_cc[VEOF]); TMODE (XTTYMODE_eol, tio.c_cc[VEOL]); -#if defined(HP_ARCHITECTURE) - TMODE (XTTYMODE_swtch, tio.c_cc[VSWTCH]); - TMODE (XTTYMODE_susp, tio.c_cc[VSUSP]); -#if OSMAJORVERSION > 9 - /* HP-UX 10.0 supports the new, extended c_cc[] array... - */ - TMODE (XTTYMODE_start, tio.c_cc[VSTART]); - TMODE (XTTYMODE_stop, tio.c_cc[VSTOP]); - TMODE (XTTYMODE_dsusp, tio.c_cc[VDSUSP]); -#ifdef NOTDEF - /* the following two parameters are not supported by - * HP-UX 10.0. - */ - TMODE (XTTYMODE_rprnt, tio.c_cc[VREPRINT]); - TMODE (XTTYMODE_flush, tio.c_cc[VDISCARD]); -#endif /* NOTDEF */ - TMODE (XTTYMODE_weras, tio.c_cc[VWERASE]); - TMODE (XTTYMODE_lnext, tio.c_cc[VLNEXT]); -#else /* OSMAJORVERSION > 9 */ - { - /* With HP-UX 9.0 (and earlier) we need to set dsuspc - * via the ltchars array. In addition, we have no support - * for rprnt, flush, weras, and lnext... - */ - struct ltchars ltc; - - if (!ioctl(pty, TIOCGLTC, <c)) { - TMODE (XTTYMODE_dsusp, ltc.t_dsuspc); - (void) ioctl(pty, TIOCSLTC, <c); - } - } -#endif /* OSMAJORVERSION > 9 */ - -#elif defined(IBM_ARCHITECTURE) +#if defined(IBM_ARCHITECTURE) TMODE (XTTYMODE_start, tio.c_cc[VSTRT]); TMODE (XTTYMODE_stop, tio.c_cc[VSTOP]); TMODE (XTTYMODE_susp, tio.c_cc[VSUSP]); @@ -614,7 +569,7 @@ _DtTermPrimPtyInit TMODE (XTTYMODE_weras, tio.c_cc[VWERSE]); TMODE (XTTYMODE_lnext, tio.c_cc[VLNEXT]); -#elif defined(SUN_ARCHITECTURE) +#elif defined(sun) TMODE (XTTYMODE_swtch, tio.c_cc[VSWTCH]); TMODE (XTTYMODE_start, tio.c_cc[VSTART]); TMODE (XTTYMODE_stop, tio.c_cc[VSTOP]); @@ -625,15 +580,6 @@ _DtTermPrimPtyInit TMODE (XTTYMODE_weras, tio.c_cc[VWERASE]); TMODE (XTTYMODE_lnext, tio.c_cc[VLNEXT]); -#elif defined(ALPHA_ARCHITECTURE) - TMODE (XTTYMODE_start, tio.c_cc[VSTART]); - TMODE (XTTYMODE_stop, tio.c_cc[VSTOP]); - TMODE (XTTYMODE_susp, tio.c_cc[VSUSP]); - TMODE (XTTYMODE_dsusp, tio.c_cc[VDSUSP]); - TMODE (XTTYMODE_rprnt, tio.c_cc[VREPRINT]); - TMODE (XTTYMODE_flush, tio.c_cc[VDISCARD]); - TMODE (XTTYMODE_weras, tio.c_cc[VWERASE]); - TMODE (XTTYMODE_lnext, tio.c_cc[VLNEXT]); #endif } #undef TMODE diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c b/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c index 49e10bd54..f74ccc8e3 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c @@ -55,9 +55,7 @@ #endif /* sun */ #ifdef __FreeBSD__ -#if OSMAJORVERSION > 8 #define UT_UTMPX -#endif #define UT_HOST ut_host #define UT_NO_pututline #endif @@ -69,11 +67,6 @@ #define UT_NO_pututline #endif /* sun */ -#ifdef __hpux -#define UT_HOST ut_host -#define UT_ADDR ut_addr -#endif /* __hpux */ - #ifdef __AIX #define UT_HOST ut_host #define UT_NO_pututline @@ -331,7 +324,6 @@ UtmpEntryCreate(Widget w, pid_t pid, char *utmpLine) { #if !defined(CSRG_BASED) /* XXX */ DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w; - struct termData *tpd = tw->term.tpd; struct utmp ut; struct utmp *utPtr; char *c; @@ -362,24 +354,10 @@ UtmpEntryCreate(Widget w, pid_t pid, char *utmpLine) if (NULL == (utPtr = getutline(&ut))) { /* build a base utmp entry... */ utPtr = &ut; -#ifdef __hpux - if (c = strstr(utmpLine, "tty")) { - c += strlen("tty"); - } else if (c = strstr(utmpLine, "pts")) { - c += strlen("pts"); - } else { - c = utmpLine; - if (strlen(utmpLine) > sizeof(utPtr->ut_id)) { - c += strlen(utmpLine) - sizeof(utPtr->ut_id); - } - } - (void) strncpy(utPtr->ut_id, c, sizeof(utPtr->ut_id)); -#else /* __hpux */ #if defined(__AIX) (void) strncpy(utPtr->ut_id, utmpLine, sizeof(utPtr->ut_id)); -#else /* __AIX */ -#if defined(__linux__) || defined(sun) +#elif defined(__linux__) || defined(sun) if (c = strchr(utmpLine, '/')) { c++; } else { @@ -389,8 +367,6 @@ UtmpEntryCreate(Widget w, pid_t pid, char *utmpLine) #else /* linux || sun */ error out -- missing code for utPtr->ut_id #endif /* sun */ -#endif /* __AIX */ -#endif /* __hpux */ } /* set up the new entry... */ diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c b/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c index da6f2b824..2e14d94f3 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c @@ -32,10 +32,10 @@ #include "TermHeader.h" #include -#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_BASED) || defined(LINUX_ARCHITECTURE) +#if defined(CSRG_BASED) || defined(__linux__) /* For TIOCSTTY definitions */ #include -#endif /* ALPHA_ARCHITECTURE */ +#endif /* BSD || Linux */ #include #include @@ -47,11 +47,7 @@ #include #include -#if defined(HPVUE) -#include -#else /* HPVUE */ #include
-#endif /* HPVUE */ #include "TermPrimP.h" #include "TermPrimI.h" @@ -301,11 +297,6 @@ _DtTermPrimSubprocExec(Widget w, _Xgetpwparams pw_buf; _Xgetloginparams login_buf; -#ifdef ALPHA_ARCHITECTURE - /* merge code from xterm, ignore so that TIOCSWINSZ doesn't block */ - signal(SIGTTOU, SIG_IGN); -#endif /* ALPHA_ARCHITECTURE */ - /* build a default exec command and argv list if one wasn't supplied... */ /* cmd... */ @@ -456,15 +447,15 @@ _DtTermPrimSubprocExec(Widget w, /* child... */ _DtTermProcessUnlock(); -#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_BASED) || defined(LINUX_ARCHITECTURE) +#if defined(CSRG_BASED) || defined(__linux__) /* establish a new session for child */ setsid(); #else /* do a setpgrp() so that we can... */ (void) setpgrp(); -#endif /* ALPHA_ARCHITECTURE */ +#endif /* Linux || BSD */ -#if defined(LINUX_ARCHITECTURE) +#if defined(__linux__) /* set the ownership and mode of the pty... */ (void) _DtTermPrimSetupPty(ptyName, pty); #endif @@ -477,7 +468,7 @@ _DtTermPrimSubprocExec(Widget w, (void) _exit(1); } -#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_BASED) || defined(LINUX_ARCHITECTURE) +#if defined(CSRG_BASED) || defined(__linux__) /* BSD needs to do this to acquire pty as controlling terminal */ if (ioctl(pty, TIOCSCTTY, (char *)NULL) < 0) { (void) close(pty); @@ -488,12 +479,12 @@ _DtTermPrimSubprocExec(Widget w, /* Do it when no controlling terminal doesn't work for OSF/1 */ _DtTermPrimPtyGetDefaultModes(); -#endif /* ALPHA_ARCHITECTURE */ +#endif /* Linux || BSD */ -#if !defined(LINUX_ARCHITECTURE) +#if !defined(__linux__) /* set the ownership and mode of the pty... */ (void) _DtTermPrimSetupPty(ptyName, pty); -#endif /* LINUX_ARCHITECTURE */ +#endif /* LINUX */ /* apply the ttyModes... */ _DtTermPrimPtyInit(pty, tw->term.ttyModes, tw->term.csWidth); diff --git a/cde/lib/DtTerm/TermPrim/TermPrimUtil.c b/cde/lib/DtTerm/TermPrim/TermPrimUtil.c index 0184b88ca..a89367e7f 100644 --- a/cde/lib/DtTerm/TermPrim/TermPrimUtil.c +++ b/cde/lib/DtTerm/TermPrim/TermPrimUtil.c @@ -404,16 +404,17 @@ _DtTermPrimStartLog(Widget w) if ( tw->term.log_on || tw->term.logInhibit ) { return; } if (!tw->term.logFile || !*tw->term.logFile) { - tw->term.logFile = "DttermLogXXXXX"; + tw->term.logFile = "DttermLogXXXXXX"; } - if (!strcmp(tw->term.logFile + strlen(tw->term.logFile) - 5, "XXXXX")) { + if (!strcmp(tw->term.logFile + strlen(tw->term.logFile) - 6, "XXXXXX")) { /* make a local copy in case we are going to change it... */ cp = XtMalloc(strlen(tw->term.logFile) + 1); (void) strcpy(cp, tw->term.logFile); - (void) mktemp(cp); - if (cp && *cp) { + int logStream = mkstemp(cp); + if (logStream != -1) { + tpd->logStream = fdopen(logStream, "w+"); tw->term.logFile = cp; } else { (void) XtFree(cp); @@ -421,7 +422,7 @@ _DtTermPrimStartLog(Widget w) } } - if ('|' == *tw->term.logFile ) { + else if ('|' == *tw->term.logFile ) { /* ** pipe logfile into command */ diff --git a/cde/lib/DtTerm/TermView/TermView.c b/cde/lib/DtTerm/TermView/TermView.c index fd1a5c302..b933e5073 100644 --- a/cde/lib/DtTerm/TermView/TermView.c +++ b/cde/lib/DtTerm/TermView/TermView.c @@ -898,7 +898,7 @@ Initialize(Widget rw, Widget w, Arg *args, Cardinal *num_args) if (geometry && *geometry) { hints.flags = 0; - flags = XWMGeometry(XtDisplay(w), + (void) XWMGeometry(XtDisplay(w), XScreenNumberOfScreen(XtScreen(w)), geometry, "80x24", @@ -1183,7 +1183,6 @@ Initialize(Widget rw, Widget w, Arg *args, Cardinal *num_args) /* create the function key form... */ - i = 0; /* Add an event handler for enter and leave events to allow us to * modify the "CAPS LOCK" indicator... */ diff --git a/cde/lib/DtTerm/TermView/TermViewMenu.c b/cde/lib/DtTerm/TermView/TermViewMenu.c index 753c536ea..f73b61b21 100644 --- a/cde/lib/DtTerm/TermView/TermViewMenu.c +++ b/cde/lib/DtTerm/TermView/TermViewMenu.c @@ -545,7 +545,6 @@ createFontMenu /* clear out mnemonics string... */ *mnemonics = '\0'; - c1 = mnemonics; /* create the font buttons... */ fontSizeToggles = (Widget *) XtMalloc((fontArrayCount + 1) * sizeof(Widget)); @@ -626,9 +625,9 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, i); } menu = popupMenu; - button = _DtTermViewCreateLabel(menu, + (void) _DtTermViewCreateLabel(menu, (GETMESSAGE(NL_SETN_ViewMenu,83, "Terminal"))); - button = _DtTermViewCreateSeparator(menu, "Separator"); + (void) _DtTermViewCreateSeparator(menu, "Separator"); } (void) XtFree((char *) newArglist); @@ -659,7 +658,7 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,19, "C")); accelerator = mallocGETMESSAGE(NL_SETN_ViewMenu,62, "Alt F4"); acceleratorText = mallocGETMESSAGE(NL_SETN_ViewMenu,62, "Alt+F4"); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void) _DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,18, "Close")), ks, accelerator, @@ -671,12 +670,12 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, if (menuBar || (!menuBar && firstPopup)) #ifdef PULLDOWN_ACCELERATORS ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,21, "W")); - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,20, "Window")), ks, NULL, NULL, NULL, NULL); #else /* PULLDOWN_ACCELERATORS */ - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,20, "Window")), NoSymbol, NULL, NULL, NULL, NULL); #endif /* PULLDOWN_ACCELERATORS */ @@ -689,7 +688,7 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, "Ctrl osfInsert"); acceleratorText = mallocGETMESSAGE(NL_SETN_ViewMenu,25, "Ctrl+Insert"); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,23, "C")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void) _DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,22, "Copy")), ks, accelerator, @@ -702,7 +701,7 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, accelerator = mallocGETMESSAGE(NL_SETN_ViewMenu,28, "Shift osfInsert"); acceleratorText = mallocGETMESSAGE(NL_SETN_ViewMenu,29, "Shift+Insert"); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void) _DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,26, "Paste")), ks, accelerator, @@ -714,12 +713,12 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, if (menuBar || (!menuBar && firstPopup)) #ifdef PULLDOWN_ACCELERATORS ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,31, "E")); - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,30, "Edit")), ks, NULL, NULL, NULL, NULL); #else /* PULLDOWN_ACCELERATORS */ - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,30, "Edit")), NoSymbol, NULL, NULL, NULL, NULL); #endif /* PULLDOWN_ACCELERATORS */ @@ -742,13 +741,13 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, NULL, NULL, scrollBarToggleCallback, NULL); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,37, "G")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void) _DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,36, "Global...")), ks, NULL, NULL, globalOptionsCallback, NULL); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,39, "T")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void) _DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,38, "Terminal...")), ks, NULL, NULL, terminalOptionsCallback, NULL); @@ -761,13 +760,13 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, submenu = createPulldown(pulldown[pc], "Reset", arglist, i); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,41, "S")); - button = _DtTermViewCreatePushButton(submenu, + (void)_DtTermViewCreatePushButton(submenu, (GETMESSAGE(NL_SETN_ViewMenu,40, "Soft Reset")), ks, NULL, NULL, softResetCallback, NULL); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,43, "H")); - button = _DtTermViewCreatePushButton(submenu, + (void)_DtTermViewCreatePushButton(submenu, (GETMESSAGE(NL_SETN_ViewMenu,42, "Hard Reset")), ks, NULL, NULL, hardResetCallback, NULL); @@ -781,12 +780,12 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, if (menuBar || (!menuBar && firstPopup)) #ifdef PULLDOWN_ACCELERATORS ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,47, "O")); - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,46, "Options")), ks, NULL, NULL, NULL, NULL); #else /* PULLDOWN_ACCELERATORS */ - cascade = _DtTermViewCreateCascadeButton(menu, pulldown[pc], + (void) _DtTermViewCreateCascadeButton(menu, pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,46, "Options")), NoSymbol, NULL, NULL, NULL, NULL); #endif /* PULLDOWN_ACCELERATORS */ @@ -858,49 +857,49 @@ CreateMenu(Widget termView, Widget parent, Boolean menuBar, #else /* HPVUE */ ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,65, "v")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,64, "Overview")), ks, NULL, NULL, helpOverviewCallback, NULL); - button = _DtTermViewCreateSeparator(pulldown[pc], "Separator"); + (void)_DtTermViewCreateSeparator(pulldown[pc], "Separator"); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,69,"C")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,68, "Table Of Contents")), ks, NULL, NULL, helpTableOfContentsCallback, NULL); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,71,"T")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,70, "Tasks")), ks, NULL, NULL, helpTasksCallback, NULL); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,73,"R")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,72, "Reference")), ks, NULL, NULL, helpReferenceCallback, NULL) ; ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,75,"K")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,74, "Keyboard")), ks, NULL, NULL, helpKeyboardCallback, NULL) ; - button = _DtTermViewCreateSeparator(pulldown[pc], "Separator"); + (void)_DtTermViewCreateSeparator(pulldown[pc], "Separator"); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,77,"U")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,76, "Using Help")), ks, NULL, NULL, helpUsingHelpCallback, NULL); - button = _DtTermViewCreateSeparator(pulldown[pc], "Separator"); + (void)_DtTermViewCreateSeparator(pulldown[pc], "Separator"); ks = XStringToKeysym(GETMESSAGE(NL_SETN_ViewMenu,79,"A")); - button = _DtTermViewCreatePushButton(pulldown[pc], + (void)_DtTermViewCreatePushButton(pulldown[pc], (GETMESSAGE(NL_SETN_ViewMenu,83, "About Terminal")), ks, NULL, NULL, helpAboutDttermCallback, NULL); diff --git a/cde/lib/DtTerm/libDtTerm.elist b/cde/lib/DtTerm/libDtTerm.elist deleted file mode 100644 index d773541fd..000000000 --- a/cde/lib/DtTerm/libDtTerm.elist +++ /dev/null @@ -1,511 +0,0 @@ -/* # $TOG: libDtTerm.elist /main/2 1999/10/14 16:23:20 mgreess $ */ - -/************************************************************************* - * Export list for libDtTerm - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public DtTermInitialize -public DtTermDisplaySend -public DtTermSubprocSend -public DtTermSubprocReap -public dtTermWidgetClass -public dtTermClassRec -public DtCreateTerm - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private _DtTermPrimGetPty -private _DtTermPrimSetupPty -private _DtTermPrimReleasePty -private _DtTermPrimPtyCleanup -private _DtTermPrimPtySetWindowSize -private _DtTermPrimPtyGetDefaultModes -private _DtTermPrimPtyInit - -/* -# the following symbols are necessary for the dtterm client to -## work (i.e., the DtTermView Widget, etc). -# -*/ -private _DtTermGetCurrentWorkingDirectory -private _DtTermPrimSetCursorVisible -private _DtTermPrimAddDeleteWindowCallback -private DtCreateTermView -private _DtTermPrimLogFileCleanup -private _DtTermPrimSetDebugFlags -private _DtTermViewMenuToggleMenuBar -private _DtTermPrimGetMessage -private _DtTermPrimDebugLevel -private _DtTermPrimIsDebugFSet -private _DtTermGetUserKeyLock -private _DtTermPrimGetCursorVisible -private _DtTermViewGetUserFontListIndex -private _DtTermGetAutoLineFeed -private _DtTermViewSetUserFontListIndex -private _DtTermSetUserKeyLock -private _DtTermSetAutoLineFeed -private _DtTermPrimUtmpCleanup -private _DtTermSetCurrentWorkingDirectory -private _DtTermPrimTimeStamp - -/* -# These symbols are needed for the tests to build. - */ - -private DtCreateTermPrimitive -private _DtTermViewGetChild - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal dtTermPrimitiveClassRec -internal dtTermPrimitiveWidgetClass -internal dtTermViewClassRec -internal dtTermViewWidgetClass - -internal _DtTermGetRenderFontIndex -internal _DtTermActionBeginningOfBuffer -internal _DtTermActionBreak -internal _DtTermActionEditKeyExecute -internal _DtTermActionEndOfBuffer -internal _DtTermActionFunctionKeyExecute -internal _DtTermActionHardReset -internal _DtTermActionInsertLine -internal _DtTermActionKeypadKeyExecute -internal _DtTermActionMoveCursor -internal _DtTermActionScroll -internal _DtTermActionSoftReset -internal _DtTermActionTab -internal _DtTermWriteEscSeq - -internal _DtTermBufferCreateBuffer -internal _DtTermBufferDelete -internal _DtTermBufferErase -internal _DtTermBufferFreeBuffer -internal _DtTermBufferFreeEnhancement - -internal _DtTermColorDestroy -internal _DtTermColorInit -internal _DtTermColorInitializeColorPair - -internal _DtTermEnhProc - -internal _DtTermFontEnhancement -internal _DtTermFuncBeginningOfBuffer -internal _DtTermFuncClearBuffer -internal _DtTermFuncClearLine -internal _DtTermFuncClearToEndOfBuffer -internal _DtTermFuncClearToEndOfLine -internal _DtTermFuncDeleteChar -internal _DtTermFuncDeleteLine -internal _DtTermFuncEndOfBuffer -internal _DtTermFuncEraseCharacter -internal _DtTermFuncEraseInDisplay -internal _DtTermFuncEraseInLine -internal _DtTermFuncHardReset -internal _DtTermFuncInsertLine -internal _DtTermFuncScroll -internal _DtTermFuncSoftReset -internal _DtTermFuncTab -internal _DtTermVideoEnhancement - -internal _DtTermFunctionKeyClear -internal _DtTermFunctionKeyExecute -internal _DtTermFunctionKeyInit -internal _DtTermFunctionKeyStringStore -internal _DtTermFunctionKeyUserKeyExecute - -internal _DtTermAlignTest -internal _DtTermAppKeypad -internal _DtTermChangeTextParam -internal _DtTermCharAttributes -internal _DtTermClearParam -internal _DtTermCursorBack -internal _DtTermCursorDown -internal _DtTermCursorForward -internal _DtTermCursorPos -internal _DtTermCursorToCol -internal _DtTermCursorToLineUp -internal _DtTermCursorUp -internal _DtTermDeleteChars -internal _DtTermDeleteLines -internal _DtTermDeviceAttributes -internal _DtTermDeviceStatus -internal _DtTermDeviceStatusAnsi -internal _DtTermDoubleHigh -internal _DtTermDoubleWide -internal _DtTermEnterNum -internal _DtTermEraseChars -internal _DtTermEraseDisplay -internal _DtTermEraseInLine -internal _DtTermGlyphs -internal _DtTermIndex -internal _DtTermInsertChars -internal _DtTermInsertLines -internal _DtTermInvokeG1 -internal _DtTermInvokeG2 -internal _DtTermInvokeG3 -internal _DtTermLoadCharSet -internal _DtTermNextLine -internal _DtTermNormalKeypad -internal _DtTermNumGlyphs -internal _DtTermPModeReset -internal _DtTermPModeSet -internal _DtTermParseBackspace -internal _DtTermParseFontG0 -internal _DtTermParseFontG1 -internal _DtTermParseFontG2 -internal _DtTermParseFontG3 -internal _DtTermParseFontShift -internal _DtTermParseHexDigit -internal _DtTermParseLF -internal _DtTermParsePushNum -internal _DtTermParseStatus -internal _DtTermParseSunMisc -internal _DtTermParseTab -internal _DtTermParseUserKeyClear -internal _DtTermParseUserKeyLoad -internal _DtTermParseUserKeyLoadLast -internal _DtTermParserSunIconFile -internal _DtTermParserSunWindowIcon -internal _DtTermParserSunWindowTitle -internal _DtTermPrintState -internal _DtTermRequestParam -internal _DtTermReset -internal _DtTermResetMode -internal _DtTermRestoreCursor -internal _DtTermRestoreModeValues -internal _DtTermReverseIndex -internal _DtTermS7C1T -internal _DtTermS8C1T -internal _DtTermSaveChar -internal _DtTermSaveCursor -internal _DtTermSaveModeValues -internal _DtTermScrollDown -internal _DtTermScrollUp -internal _DtTermScrollingRegion -internal _DtTermSelEraseInDisplay -internal _DtTermSelEraseInLine -internal _DtTermSelectG2 -internal _DtTermSelectG3 -internal _DtTermSetCharEraseMode -internal _DtTermSetCompatLevel -internal _DtTermSetMode -internal _DtTermSingleShiftG2 -internal _DtTermSingleShiftG3 -internal _DtTermSingleWide -internal _DtTermSoftReset -internal _DtTermTabClear -internal _DtTermTabSet - -internal _DtTermPrimActionEnter -internal _DtTermPrimActionFocusIn -internal _DtTermPrimActionFocusOut -internal _DtTermPrimActionKeyInput -internal _DtTermPrimActionKeyRelease -internal _DtTermPrimActionLeave -internal _DtTermPrimActionStop -internal _DtTermPrimDrawShadow -internal _DtTermPrimForcePtyRead -internal _DtTermPrimGetFontSet -internal _DtTermPrimInsertCharUpdate -internal _DtTermPrimInvokeStatusChangeCallback -internal _DtTermPrimLoopBackData -internal _DtTermPrimPutEnv -internal _DtTermPrimSendInput -internal _DtTermPrimStartOrStopPtyInput -internal _DtTermPrimStartOrStopPtyOutput -internal _DtTermPrimWarningDialog - -internal _DtTermPrimActionInsert -internal _DtTermPrimActionKeymap -internal _DtTermPrimActionRedrawDisplay -internal _DtTermPrimActionReturn -internal _DtTermPrimActionString -internal _DtTermPrimActionTab - -internal _DtTermPrimBufferClearAllTabs -internal _DtTermPrimBufferClearLine -internal _DtTermPrimBufferClearTab -internal _DtTermPrimBufferCreateBuffer -internal _DtTermPrimBufferDelete -internal _DtTermPrimBufferDeleteLine -internal _DtTermPrimBufferErase -internal _DtTermPrimBufferFreeBuffer -internal _DtTermPrimBufferFreeEnhancement -internal _DtTermPrimBufferGetCharacterPointer -internal _DtTermPrimBufferGetCols -internal _DtTermPrimBufferGetEnhancement -internal _DtTermPrimBufferGetInSelectionFlag -internal _DtTermPrimBufferGetLineLength -internal _DtTermPrimBufferGetLineWidth -internal _DtTermPrimBufferGetNextTab -internal _DtTermPrimBufferGetPreviousTab -internal _DtTermPrimBufferGetRows -internal _DtTermPrimBufferGetText -internal _DtTermPrimBufferInsert -internal _DtTermPrimBufferInsertLine -internal _DtTermPrimBufferInsertLineFromTB -internal _DtTermPrimBufferMoveLockArea -internal _DtTermPrimBufferPadLine -internal _DtTermPrimBufferResizeBuffer -internal _DtTermPrimBufferSetEnhancement -internal _DtTermPrimBufferSetInSelectionFlag -internal _DtTermPrimBufferSetLineWidth -internal _DtTermPrimBufferSetLineWrapFlag -internal _DtTermPrimBufferSetLinks -internal _DtTermPrimBufferSetSelectInfo -internal _DtTermPrimBufferSetSelectLines -internal _DtTermPrimBufferSetTab -internal _DtTermPrimBufferTestLineWrapFlag -internal _DtTermPrimGetCharacterInfo - -internal _DtTermPrimBufferClearLineWc -internal _DtTermPrimBufferDeleteWc -internal _DtTermPrimBufferEraseWc -internal _DtTermPrimBufferGetTextWc -internal _DtTermPrimBufferInsertWc -internal _DtTermPrimBufferPadLineWc - -internal _DtTermPrimCursorChangeFocus -internal _DtTermPrimCursorMove -internal _DtTermPrimCursorOff -internal _DtTermPrimCursorOn -internal _DtTermPrimCursorUpdate - -internal _DtTermPrimDebugDumpEvent -internal _DtTermPrimShortSleep - -internal _DtTermPrimFuncBackspace -internal _DtTermPrimFuncBackwardCharacter -internal _DtTermPrimFuncCR -internal _DtTermPrimFuncForwardCharacter -internal _DtTermPrimFuncLF -internal _DtTermPrimFuncMarginClear -internal _DtTermPrimFuncMarginSetLeft -internal _DtTermPrimFuncMarginSetRight -internal _DtTermPrimFuncNextLine -internal _DtTermPrimFuncPreviousLine -internal _DtTermPrimFuncRedrawDisplay -internal _DtTermPrimFuncReturn -internal _DtTermPrimFuncTab -internal _DtTermPrimFuncTabClear -internal _DtTermPrimFuncTabClearAll -internal _DtTermPrimFuncTabSet - -internal _DtTermPrimLineDrawCreateFont -internal _DtTermPrimLineDrawFreeFont -internal _DtTermPrimLineDrawImageString - -internal _DtTermPrimParseBackspace -internal _DtTermPrimParseBell -internal _DtTermPrimParseCR -internal _DtTermPrimParseCursorDown -internal _DtTermPrimParseCursorLeft -internal _DtTermPrimParseCursorRight -internal _DtTermPrimParseCursorUp -internal _DtTermPrimParseLF -internal _DtTermPrimParseMarginClear -internal _DtTermPrimParseMarginSetLeft -internal _DtTermPrimParseMarginSetRight -internal _DtTermPrimParseTab -internal _DtTermPrimParseTabClear -internal _DtTermPrimParseTabClearAll -internal _DtTermPrimParseTabSet -internal _DtTermPrimParseWriteChar - -internal _DtTermPrimParse -internal _DtTermPrimParserClearParm -internal _DtTermPrimParserClrStrParm -internal _DtTermPrimParserEnterNum -internal _DtTermPrimParserInitContext -internal _DtTermPrimParserNextState -internal _DtTermPrimParserNumParmPush -internal _DtTermPrimParserSaveSign - -internal _DtTermPrimPendingTextAppend -internal _DtTermPrimPendingTextAppendChunk -internal _DtTermPrimPendingTextCreate -internal _DtTermPrimPendingTextDestroy -internal _DtTermPrimPendingTextFlush -internal _DtTermPrimPendingTextGetChunk -internal _DtTermPrimPendingTextIsPending -internal _DtTermPrimPendingTextRemoveChunk -internal _DtTermPrimPendingTextReplace -internal _DtTermPrimPendingTextWrite - -internal _DtTermPrimBell -internal _DtTermPrimDestroyFont -internal _DtTermPrimExposeText -internal _DtTermPrimFillScreenGap -internal _DtTermPrimInsertText -internal _DtTermPrimParseInput -internal _DtTermPrimRefreshText -internal _DtTermPrimRenderPadLine -internal _DtTermPrimRenderText - -internal _DtTermPrimRenderFontCreate - -internal _DtTermPrimRenderFontSetCreate - -internal _DtTermPrimRenderLineDrawCreate - -internal _DtTermPrimExposeTextMb -internal _DtTermPrimInsertTextWc -internal _DtTermPrimRefreshTextWc - -internal _DtTermPrimInitRepTypes - -internal _DtTermPrimScrollComplete -internal _DtTermPrimScrollCompleteIfNecessary -internal _DtTermPrimScrollText -internal _DtTermPrimScrollTextArea -internal _DtTermPrimScrollTextTo -internal _DtTermPrimScrollWait - -internal _DtTermPrimRenderRefreshTextLinear -internal _DtTermPrimSelect2ButtonMouse -internal _DtTermPrimSelectAll -internal _DtTermPrimSelectBDragRelease -internal _DtTermPrimSelectConvert -internal _DtTermPrimSelectCopyClipboard -internal _DtTermPrimSelectCopyClipboardEventIF -internal _DtTermPrimSelectCreate -internal _DtTermPrimSelectDeleteLines -internal _DtTermPrimSelectDestroy -internal _DtTermPrimSelectDisown -internal _DtTermPrimSelectDoSelection -internal _DtTermPrimSelectExtend -internal _DtTermPrimSelectExtendEnd -internal _DtTermPrimSelectExtendStart -internal _DtTermPrimSelectGetSelection -internal _DtTermPrimSelectGrabFocus -internal _DtTermPrimSelectInitBtnEvents -internal _DtTermPrimSelectInsert -internal _DtTermPrimSelectInsertLines -internal _DtTermPrimSelectIsAboveSelection -internal _DtTermPrimSelectIsInSelection -internal _DtTermPrimSelectLoseSelection -internal _DtTermPrimSelectMoveLines -internal _DtTermPrimSelectPage -internal _DtTermPrimSelectPasteClipboard -internal _DtTermPrimSelectPasteClipboardEventIF -internal _DtTermPrimSelectProcessBDrag -internal _DtTermPrimSelectProcessCancel -internal _DtTermPrimSelectResize -internal _DtTermPrimSelectSetHint -internal _DtTermPrimSelectStart - -internal _DtTermPrimPtyConsoleModeEnable -internal _DtTermPrimPtySendBreak - -internal _DtTermPrimUtmpAddEntry -internal _DtTermPrimUtmpEntryCreate -internal _DtTermPrimUtmpEntryDestroy -internal _DtTermPrimUtmpGetUtLine -internal _DtTermPrimUtmpInit - -internal _DtTermPrimAddSubproc -internal _DtTermPrimSetChildSignalHandler -internal _DtTermPrimSubprocExec -internal _DtTermPrimSubprocRemoveSubproc - -internal _DtTermPrimCloseLog -/* internal _DtTermPrimLogPipe */ -internal _DtTermPrimPointerFreeze -internal _DtTermPrimPointerOff -internal _DtTermPrimPointerOn -internal _DtTermPrimRecolorPointer -internal _DtTermPrimRemoveSuidRoot -internal _DtTermPrimStartLog -internal _DtTermPrimToggleSuidRoot -internal _DtTermPrimWriteLog - -internal _DtTermPrimAddSaveYourselfCallback - -internal _DtTermPrimCharCursorStyle -internal _DtTermPrimEmulationMode -internal _DtTermPrimPullInTermWhatString -internal _DtTermPrimStateStart -internal _DtTermPrimTtyModeList -internal _DtTermPrim_XA_UtmpLine -internal _DtTermPullInTermWhatString - -internal _DtTermStateAsterisk -internal _DtTermStateC1 -internal _DtTermStateDECSCA -internal _DtTermStateDLCharSet -internal _DtTermStateError -internal _DtTermStateEscQuestion -internal _DtTermStateEscape -internal _DtTermStateGetIcon -internal _DtTermStateGetIconBS -internal _DtTermStateGetIconFile -internal _DtTermStateGetIconFileBS -internal _DtTermStateGetString -internal _DtTermStateGetStringBS -internal _DtTermStateGetTitle -internal _DtTermStateGetTitleBS -internal _DtTermStateIsNextBS_DL -internal _DtTermStateIsNextBS_SK -internal _DtTermStateLeftBracket -internal _DtTermStateLeftBracketNotQ -internal _DtTermStateLeftParen -internal _DtTermStateP -internal _DtTermStatePlus -internal _DtTermStatePound -internal _DtTermStateRightBracket -internal _DtTermStateRightParen -internal _DtTermStateSoftReset -internal _DtTermStateStart -internal _DtTermStateTilda -internal _DtTermStateUA_BS -internal _DtTermStateUS_BS -internal _DtTermStateUnderscore -internal _DtTermStateUpArrow -internal _DtTermStateUserKey -internal _DtTermStateUserKeyString - -internal DtTermViewCloneCallback -internal DtTermViewGetCloneEnabled -internal _DtTermViewMapHelp -internal _DtTermViewMenuDefaultFonts - -internal _DtTermViewCreateGlobalOptionsDialog -internal _DtTermViewCreateOptionMenu -internal _DtTermViewCreatePulldown -internal _DtTermViewEqualizeHeights -internal _DtTermViewLineupListAddItem -internal _DtTermViewLineupListCreate -internal _DtTermViewLineupListFree -internal _DtTermViewLineupListLineup - -internal _DtTermViewCreateCascadeButton -internal _DtTermViewCreateLabel -internal _DtTermViewCreatePopupMenu -internal _DtTermViewCreatePulldownMenu -internal _DtTermViewCreatePushButton -internal _DtTermViewCreateSeparator -internal _DtTermViewCreateToggleButton - -internal _DtTermViewCreateTerminalOptionsDialog - -internal rowColToPos diff --git a/cde/lib/DtTerm/util/lineToData.c b/cde/lib/DtTerm/util/lineToData.c index 5813ba41c..1a3e7a249 100644 --- a/cde/lib/DtTerm/util/lineToData.c +++ b/cde/lib/DtTerm/util/lineToData.c @@ -280,10 +280,6 @@ main(int argc, char **argv) (void) DumpChar(stdout, charCount++, charList, charListMax, rectList, rectListMax, lineList, lineListMax, stippleList, stippleListMax); - lineListMax = 0; - rectListMax = 0; - stippleListMax = 0; - charListMax = 0; } /* build the final structure... */ diff --git a/cde/lib/DtWidget/Editor.c b/cde/lib/DtWidget/Editor.c index 168d95a19..4edb0df76 100644 --- a/cde/lib/DtWidget/Editor.c +++ b/cde/lib/DtWidget/Editor.c @@ -57,9 +57,7 @@ #include #include -#if defined(__hpux) -# include -#elif defined(sun) +#if defined(sun) # if (_XOPEN_VERSION==3) # include # else diff --git a/cde/lib/DtWidget/Makefile.am b/cde/lib/DtWidget/Makefile.am index 182717e2e..ca9eda4b9 100644 --- a/cde/lib/DtWidget/Makefile.am +++ b/cde/lib/DtWidget/Makefile.am @@ -17,7 +17,7 @@ endif if SOLARIS libDtWidget_la_CFLAGS += -DNO_REGCOMP -libDtWidget_la_LIBADD = -lc -lw -lintl +libDtWidget_la_LIBADD = -lw -lintl endif diff --git a/cde/lib/DtWidget/libDtWidget.elist b/cde/lib/DtWidget/libDtWidget.elist deleted file mode 100644 index ebe6bab81..000000000 --- a/cde/lib/DtWidget/libDtWidget.elist +++ /dev/null @@ -1,250 +0,0 @@ -/* $XConsortium: libDtWidget.elist /main/8 1996/06/19 11:38:55 cde-dec $ - * - * (c) Copyright 1996 Digital Equipment Corporation. - * (c) Copyright 1996 Hewlett-Packard Company. - * (c) Copyright 1996 International Business Machines Corp. - * (c) Copyright 1996 Sun Microsystems, Inc. - * (c) Copyright 1996 Novell, Inc. - * (c) Copyright 1996 FUJITSU LIMITED. - * (c) Copyright 1996 Hitachi. - */ - -/************************************************************************* - * Export list for libDtWidget - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public DtComboBoxAddItem -public DtComboBoxDeletePos -public DtComboBoxSelectItem -public DtComboBoxSetItem -public DtCreateComboBox -public DtCreateEditor -public DtCreateMenuButton -public DtCreateSpinBox -public DtEditorAppend -public DtEditorAppendFromFile -public DtEditorChange -public DtEditorCheckForUnsavedChanges -public DtEditorClearSelection -public DtEditorCopyToClipboard -public DtEditorCutToClipboard -public DtEditorDeleteSelection -public DtEditorDeselect -public DtEditorDisableRedisplay -public DtEditorEnableRedisplay -public DtEditorFind -public DtEditorFormat -public DtEditorGetContents -public DtEditorGetInsertionPosition -public DtEditorGetLastPosition -public DtEditorGetMessageTextFieldID -public DtEditorGetSizeHints -public DtEditorGoToLine -public DtEditorInsert -public DtEditorInsertFromFile -public DtEditorInvokeFindChangeDialog -public DtEditorInvokeFormatDialog -public DtEditorInvokeSpellDialog -public DtEditorPasteFromClipboard -public DtEditorReplace -public DtEditorReplaceFromFile -public DtEditorReset -public DtEditorSaveContentsToFile -public DtEditorSelectAll -public DtEditorSetContents -public DtEditorSetContentsFromFile -public DtEditorSetInsertionPosition -public DtEditorTraverseToEditor -public DtEditorUndoEdit -public DtSpinBoxAddItem -public DtSpinBoxDeletePos -public DtSpinBoxSetItem -public dtComboBoxWidgetClass -public dtDialogBoxWidgetClass -public dtEditorClassRec -public dtEditorWidgetClass -public dtMenuButtonWidgetClass -public dtSpinBoxWidgetClass - - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private _AIXJPStrings -private _DtComboBoxGetArrowSize -private _DtComboBoxGetLabelString -private _DtComboBoxGetListFontList -private _DtComboBoxGetListItemCount -private _DtComboBoxGetListItems -private _DtComboBoxGetListMarginHeight -private _DtComboBoxGetListMarginWidth -private _DtComboBoxGetListSpacing -private _DtComboBoxGetListTopItemPosition -private _DtComboBoxGetListVisibleItemCount -private _DtControlAddDropAnimationImage -private _DtControlAddPushAnimationImage -private _DtControlDoDropAnimation -private _DtControlDoPushAnimation -private _DtControlGetMonitorState -private _DtControlSetBusy -private _DtControlSetFileChanged -private _DtCreateControl -private _DtCreateDialogBox -private _DtCreateIcon -private _DtCreateTitleBox -private _DtCreateView -private _DtDialogBoxGetButton -private _DtDialogBoxGetWorkArea -private _DtDuplicateIcon -private _DtIconDraw -private _DtIconGetIconRects -private _DtIconGetState -private _DtIconGetTextExtent -private _DtIconGetTextExtent_r -private _DtIconSelectInTitle -private _DtIconSetState -private _DtSpinBoxGetArrowSize -private _DtStrings -private _DtTitleBoxGetTitleArea -private _DtTitleBoxGetWorkArea -private _DtWidgetGetMessage -private __DtCreateDialogBoxDialog -private dtComboBoxClassRec -private dtControlCacheObjClassRec -private dtControlClassRec -private dtControlGadgetClass -private dtDialogBoxClassRec -private dtIconCacheObjClassRec -private dtIconClassRec -private dtIconGadgetClass -private dtMenuButtonClassRec -private dtSpinBoxClassRec -private dtTitleBoxClassRec -private dtTitleBoxWidgetClass -private dtViewClassRec -private dtViewWidgetClass - - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal _DtEditorDialogFindCancelCB -internal _DtEditorDialogReplaceAllCB -internal _DtEditorDialogReplaceCB -internal _DtEditorDialogSearchCB -internal _DtEditorFindTextChangedCB -internal _DtEditorGetLineIndex -internal _DtEditorGetPointer -internal _DtEditorHelpSearchCB -internal _DtEditorHelpSearchChangeCB -internal _DtEditorHelpSearchFindCB -internal _DtEditorHelpSearchSpellCB -internal _DtEditorMisspelledDblClickCB -internal _DtEditorMisspelledSelectCB -internal _DtEditorModifyVerifyCB -internal _DtEditorReplaceTextChangedCB -internal _DtEditorResetUndo -internal _DtEditorSearch -internal _DtEditorSearchMapCB -internal _DtEditorSetFindSensitivity -internal _DtEditorSetReplaceAllSensitivity -internal _DtEditorSetReplaceSensitivity -internal _DtEditorUpdateLineDisplay -internal _DtEditorValidateFileAccess -internal _DtEditorWarning -internal _DtEditor_CountCharacters -internal _DtIconRegisterDropsite -internal _DtMsgComboBox_0000 -internal _DtMsgComboBox_0001 -internal _DtMsgComboBox_0002 -internal _DtMsgComboBox_0003 -internal _DtMsgComboBox_0004 -internal _DtMsgComboBox_0005 -internal _DtMsgComboBox_0006 -internal _DtMsgComboBox_0007 -internal _DtMsgComboBox_0008 -internal _DtMsgComboBox_0009 -internal _DtMsgComboBox_0010 -internal _DtMsgComboBox_0011 -internal _DtMsgComboBox_0012 -internal _DtMsgComboBox_0013 -internal _DtMsgComboBox_0014 -internal _DtMsgCommon_0000 -internal _DtMsgCommon_0001 -internal _DtMsgDialogBox_0000 -internal _DtMsgDialogBox_0001 -internal _DtMsgEditor_0000 -internal _DtMsgEditor_0001 -internal _DtMsgEditor_0002 -internal _DtMsgEditor_0003 -internal _DtMsgEditor_0004 -internal _DtMsgEditor_0005 -internal _DtMsgEditor_0006 -internal _DtMsgEditor_0007 -internal _DtMsgEditor_0008 -internal _DtMsgEditor_0009 -internal _DtMsgEditor_0010 -internal _DtMsgEditor_0011 -internal _DtMsgEditor_0012 -internal _DtMsgEditor_0013 -internal _DtMsgEditor_0014 -internal _DtMsgEditor_0015 -internal _DtMsgEditor_0016 -internal _DtMsgEditor_0017 -internal _DtMsgEditor_0018 -internal _DtMsgEditor_0019 -internal _DtMsgEditor_0020 -internal _DtMsgEditor_0021 -internal _DtMsgEditor_0022 -internal _DtMsgEditor_0023 -internal _DtMsgEditor_0024 -internal _DtMsgEditor_0025 -internal _DtMsgIcon_0000 -internal _DtMsgIcon_0001 -internal _DtMsgIcon_0002 -internal _DtMsgIcon_0003 -internal _DtMsgIcon_0004 -internal _DtMsgIcon_0005 -internal _DtMsgIndicator_0000 -internal _DtMsgMenuButton_0000 -internal _DtMsgMenuButton_0001 -internal _DtMsgMenuButton_0002 -internal _DtMsgSpinBox_0000 -internal _DtMsgSpinBox_0001 -internal _DtMsgSpinBox_0002 -internal _DtMsgSpinBox_0003 -internal _DtMsgSpinBox_0004 -internal _DtMsgSpinBox_0005 -internal _DtMsgSpinBox_0006 -internal _DtMsgSpinBox_0007 -internal _DtMsgSpinBox_0008 -internal _DtMsgSpinBox_0009 -internal _DtMsgSpinBox_0010 -internal _DtMsgSpinBox_0011 -internal _DtMsgSpinBox_0012 -internal _DtMsgSpinBox_0013 -internal _DtMsgSpinBox_0014 -internal _DtMsgTitleBox_0000 -internal _DtMsgTitleBox_0001 -internal _DtMsgTitleBox_0002 -internal _DtMsgTitleBox_0003 -internal _DtMsgTitleBox_0004 -internal _DtRegisterNewConverters diff --git a/cde/lib/Makefile.am b/cde/lib/Makefile.am index 43ff6d236..c6890ecce 100644 --- a/cde/lib/Makefile.am +++ b/cde/lib/Makefile.am @@ -2,7 +2,3 @@ MAINTAINERCLEANFILES = Makefile.in SUBDIRS = DtXinerama tt DtSvc DtSearch DtWidget DtHelp DtPrint DtTerm \ DtMrm csa DtMmdb - -if HAS_PAM_LIBRARY -SUBDIRS += DtPamSvc -endif diff --git a/cde/lib/csa/agent.wrapbegin b/cde/lib/csa/agent.wrapbegin index b263e1784..a72172f49 100644 --- a/cde/lib/csa/agent.wrapbegin +++ b/cde/lib/csa/agent.wrapbegin @@ -1,6 +1,2 @@ #ifndef _AGENTX_H #define _AGENTX_H - -#if defined(HPUX) -#include -#endif /* HPUX */ diff --git a/cde/lib/csa/agent.wrapend b/cde/lib/csa/agent.wrapend index 015de2924..69331c3ca 100644 --- a/cde/lib/csa/agent.wrapend +++ b/cde/lib/csa/agent.wrapend @@ -1,5 +1 @@ -#ifdef HPUX -#undef hpux -#define hpux -#endif #endif diff --git a/cde/lib/csa/cm.h b/cde/lib/csa/cm.h index 4a99849f1..81a593a83 100644 --- a/cde/lib/csa/cm.h +++ b/cde/lib/csa/cm.h @@ -33,7 +33,7 @@ #ifndef SunOS #include -#endif /* HPUX */ +#endif /* Sun */ #include @@ -703,9 +703,4 @@ extern bool_t xdr_cms_delete_args(); } #endif -#ifdef HPUX -#undef hpux -#define hpux #endif -#endif - diff --git a/cde/lib/csa/cmcb.h b/cde/lib/csa/cmcb.h index 91c383f32..efe95d03b 100644 --- a/cde/lib/csa/cmcb.h +++ b/cde/lib/csa/cmcb.h @@ -151,9 +151,4 @@ extern bool_t xdr_cmcb_update_callback_args(); } #endif -#ifdef HPUX -#undef hpux -#define hpux #endif -#endif - diff --git a/cde/lib/csa/connection.c b/cde/lib/csa/connection.c index 91e095daa..baa01c62c 100644 --- a/cde/lib/csa/connection.c +++ b/cde/lib/csa/connection.c @@ -39,9 +39,6 @@ #include #include #include -#ifdef HPUX -#include -#endif #include "connection.h" #include "rtable2.h" #include "rtable3.h" @@ -53,11 +50,7 @@ #include "convert3-4.h" #include "rpccalls.h" -#ifdef HPUX -#define MAX_COUNT 10 -#else #define MAX_COUNT 40 -#endif static struct timeval timeout_tv; static struct timeval retry_tv; @@ -636,17 +629,12 @@ cleanup_some_connection(_DtCm_Client_Info *dontclose) for (ci = client_cache_head; ci != NULL; ) { total++; -#ifdef HPUX - /* clean up whole list */ - if (ci != dontclose && ci->nregistered == 0) { -#else if (ci != dontclose && ci->nregistered == 0 && (ci->tcpcl || (!done && ci->tcpcl == NULL) || (ci->tcpcl==NULL && (time(NULL) - ci->last_used)>DAYSEC))) { if (!done) done = 1; -#endif deleted++; oldci = ci; @@ -829,31 +817,13 @@ get_client_handle( struct timeval tv; enum clnt_stat status; -#ifdef HPUX - static int bumped = 0; - struct rlimit rl; - - if (bumped == 0) { - bumped = 1; - - /* raise the soft limit of number of file descriptor */ - getrlimit(RLIMIT_NOFILE, &rl); - rl.rlim_cur = rl.rlim_max; - setrlimit(RLIMIT_NOFILE, &rl); - } -#endif - tv.tv_sec = 1; tv.tv_usec = 0; *clnt = NULL; for (vers = vers_high; vers >= vers_low; vers--) { -#if defined(__hpux) - if ((cl = clnt_create((char *)host, prognum, vers, nettype)) != NULL) { -#else if ((cl = clnt_create(host, prognum, vers, nettype)) != NULL) { -#endif clnt_control(cl, CLSET_TIMEOUT, (char *)&tv); status = clnt_call(cl, 0, (xdrproc_t) xdr_void, (char *)NULL, (xdrproc_t) xdr_void, diff --git a/cde/lib/csa/libcsa.elist b/cde/lib/csa/libcsa.elist deleted file mode 100644 index c43704e99..000000000 --- a/cde/lib/csa/libcsa.elist +++ /dev/null @@ -1,601 +0,0 @@ -/* $TOG: libcsa.elist /main/3 1999/10/14 17:47:27 mgreess $ - * - * (c) Copyright 1996 Digital Equipment Corporation. - * (c) Copyright 1996 Hewlett-Packard Company. - * (c) Copyright 1996 International Business Machines Corp. - * (c) Copyright 1996 Sun Microsystems, Inc. - * (c) Copyright 1996 Novell, Inc. - * (c) Copyright 1996 FUJITSU LIMITED. - * (c) Copyright 1996 Hitachi. - */ - -/************************************************************************* - * Export list for libcsa - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public csa_free -public csa_list_calendars -public csa_logoff -public csa_logon -public csa_look_up -public csa_query_configuration -public csa_restore -public csa_save -public csa_add_calendar -public csa_delete_calendar -public csa_list_calendar_attributes -public csa_read_calendar_attributes -public csa_register_callback -public csa_unregister_callback -public csa_call_callbacks -public csa_update_calendar_attributes -public csa_add_entry -public csa_delete_entry -public csa_free_time_search -public csa_list_entries -public csa_list_entry_attributes -public csa_list_entry_sequence -public csa_read_entry_attributes -public csa_read_next_reminder -public csa_update_entry_attributes -public csa_add_event -public csa_add_todo -public csa_add_memo -public _CSA_calendar_attribute_names -public _CSA_entry_attribute_names -public _CSA_entry_subtype_values - - -/******************************************************************** - * Private symbols -- used by dtcm's server (rpc.cmsd) - ********************************************************************/ - -private _CSA_cal_attr_info -private _DtCmAccessRightToV4AccessType -private _DtCmAttr4ToReminderValue -private _DtCmExtendNameTable -private _DtCmFreeHashedArrays -private _DtCmGetHostAtDomain -private _DtCmGetLocalDomain -private _DtCmGetLocalHost -private _DtCmGetPrefix -private _DtCmGrowAttrArray -private _DtCmHashCriteria -private _DtCmIsSamePath -private _DtCmIsSameUser -private _DtCmIsUserName -private _DtCmUpdateAccessListAttrVal -private _DtCmUpdateAttribute -private _DtCmUpdateAttributes -private _DtCmUpdateDateTimeListAttrVal -private _DtCmUpdateSint32AttrVal -private _DtCmUpdateStringAttrVal -private _DtCm_accargs2_to_accargs4 -private _DtCm_accargs3_to_accargs4 -private _DtCm_accargs4_to_accargs2 -private _DtCm_accargs4_to_accargs3 -private _DtCm_accessentry4_to_cmsaccesslist -private _DtCm_accstat4_to_accstat2 -private _DtCm_accstat4_to_accstat3 -private _DtCm_add_reminder -private _DtCm_appt4_to_attrs -private _DtCm_appt_to_abbrev4 -private _DtCm_appt_to_semiprivate_abbrev4 -private _DtCm_apptstatus4_to_status -private _DtCm_attrs_to_eventtype4 -private _DtCm_cal_name_tbl -private _DtCm_check_cal_cms_attributes -private _DtCm_check_entry_cms_attributes -private _DtCm_check_operator -private _DtCm_classification_to_privacy4 -private _DtCm_cms_entry_to_appt4 -private _DtCm_copy_appt4 -private _DtCm_copy_cms_attr_val -private _DtCm_copy_cms_attribute -private _DtCm_copy_cms_attributes -private _DtCm_copy_cms_entry -private _DtCm_copy_excpt4 -private _DtCm_copy_one_appt4 -private _DtCm_copy_semiprivate_appt4 -private _DtCm_entry_name_tbl -private _DtCm_eventtype4_to_subtype -private _DtCm_eventtype4_to_type -private _DtCm_free_abbrev_appt4 -private _DtCm_free_access_list4 -private _DtCm_free_appt4 -private _DtCm_free_cms_access_entry -private _DtCm_free_cms_attribute_value -private _DtCm_free_cms_attribute_values -private _DtCm_free_cms_attributes -private _DtCm_free_cms_entries -private _DtCm_free_cms_entry -private _DtCm_free_date_time_list -private _DtCm_free_excpt4 -private _DtCm_free_keyentry4 -private _DtCm_free_name_table -private _DtCm_free_re -private _DtCm_free_re_state -private _DtCm_free_reminder4 -private _DtCm_get_attribute_types -private _DtCm_get_index_from_table -private _DtCm_init_hash -private _DtCm_interval4_to_rtype -private _DtCm_make_access_entry4 -private _DtCm_make_appt4 -private _DtCm_make_attr4 -private _DtCm_make_cms_entry -private _DtCm_match_one_appt -private _DtCm_match_reminder_attribute -private _DtCm_match_sint32_attribute -private _DtCm_match_string_attribute -private _DtCm_match_time_attribute -private _DtCm_match_time_duration_attribute -private _DtCm_match_uint32_attribute -private _DtCm_old_reminder_name_to_index -private _DtCm_old_reminder_name_to_name -private _DtCm_privacy4_to_classification -private _DtCm_reg2_to_reg4 -private _DtCm_reg3_to_reg4 -private _DtCm_regstat4_to_regstat2 -private _DtCm_regstat4_to_regstat3 -private _DtCm_remove_reminder -private _DtCm_repeat_info -private _DtCm_rtype_to_interval4 -private _DtCm_rule_buf -private _DtCm_rule_parser -private _DtCm_set_opaque_attrval -private _DtCm_set_reminder_attrval -private _DtCm_set_string_attrval -private _DtCm_set_uint32_attrval -private _DtCm_set_user_attrval -private _DtCm_status_to_apptstatus4 -private _DtCm_tableargs2_to_tableargs4 -private _DtCm_tableargs3_to_tableargs4 -private _DtCm_tabledelargs2_to_tabledelargs4 -private _DtCm_tabledelargs3_to_tabledelargs4 -private _DtCm_tableres4_to_tableres2 -private _DtCm_tableres4_to_tableres3 -private _DtCm_tablestat4_to_tablestat2 -private _DtCm_tablestat4_to_tablestat3 -private _DtCm_xdr_Access_Args_2 -private _DtCm_xdr_Access_Args_3 -private _DtCm_xdr_Access_Args_4 -private _DtCm_xdr_Access_Status_2 -private _DtCm_xdr_Access_Status_3 -private _DtCm_xdr_Access_Status_4 -private _DtCm_xdr_Registration_2 -private _DtCm_xdr_Registration_3 -private _DtCm_xdr_Registration_4 -private _DtCm_xdr_Registration_Status_2 -private _DtCm_xdr_Registration_Status_3 -private _DtCm_xdr_Registration_Status_4 -private _DtCm_xdr_Table_Args_2 -private _DtCm_xdr_Table_Args_3 -private _DtCm_xdr_Table_Args_4 -private _DtCm_xdr_Table_Op_Args_4 -private _DtCm_xdr_Table_Res_2 -private _DtCm_xdr_Table_Res_3 -private _DtCm_xdr_Table_Res_4 -private _DtCm_xdr_Table_Status_2 -private _DtCm_xdr_Table_Status_3 -private _DtCm_xdr_Table_Status_4 -private xdr_cmcb_update_callback_args -private xdr_cms_archive_args -private xdr_cms_archive_res -private xdr_cms_create_args -private xdr_cms_delete_args -private xdr_cms_entries_res -private xdr_cms_entry_res -private xdr_cms_enumerate_args -private xdr_cms_enumerate_calendar_attr_res -private xdr_cms_get_cal_attr_args -private xdr_cms_get_cal_attr_res -private xdr_cms_get_entry_attr_args -private xdr_cms_get_entry_attr_res -private xdr_cms_insert_args -private xdr_cms_list_calendars_res -private xdr_cms_lookup_entries_args -private xdr_cms_name -private xdr_cms_open_args -private xdr_cms_open_res -private xdr_cms_register_args -private xdr_cms_reminder_args -private xdr_cms_reminder_res -private xdr_cms_remove_args -private xdr_cms_restore_args -private xdr_cms_set_cal_attr_args -private xdr_cms_update_args - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -private _csa_iso8601_to_tick -private _csa_tick_to_iso8601 -private _csa_iso8601_to_range -private _csa_range_to_iso8601 -private _csa_iso8601_to_duration -private _csa_duration_to_iso8601 -private _DtCm_set_sint32_attrval - - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -#ifdef NEED_STRCASECMP -internal strcasecmp -internal strncasecmp -#endif - -internal _CSA_entry_attr_info -internal _DtCmCmsentriesToLibentries -internal _DtCmDestroyHash -internal _DtCmFindHash -internal _DtCmGetHash -internal _DtCmGetUserName -internal _DtCmMakeHash -internal _DtCmUpdateOpaqueDataAttrVal -internal _DtCmUpdateReminderAttrVal -internal _DtCm_acclist4_to_acclist2 -internal _DtCm_acclist4_to_acclist3 -internal _DtCm_accstat2_to_accstat4 -internal _DtCm_accstat3_to_accstat4 -internal _DtCm_active_cal_list -internal _DtCm_add_name_to_table -internal _DtCm_add_registration -internal _DtCm_add_to_entry_list -internal _DtCm_alloc_attributes -internal _DtCm_alloc_calendar_users -internal _DtCm_alloc_character_pointers -internal _DtCm_alloc_entry -internal _DtCm_alloc_entry_handles -internal _DtCm_alloc_reminder_references -internal _DtCm_appt4_to_appt2 -internal _DtCm_appt4_to_appt3 -internal _DtCm_appt4_to_libentries -internal _DtCm_attrs_to_appt4 -internal _DtCm_attrs_to_apptdata -internal _DtCm_check_cal_csa_attributes -internal _DtCm_check_entry_attributes -internal _DtCm_clnt_call -internal _DtCm_clntstat_to_csastat -internal _DtCm_cms2csa_access_list -internal _DtCm_cms2csa_attribute -internal _DtCm_cms2csa_attrval -internal _DtCm_cms2csa_reminder_ref -internal _DtCm_cmsattrs_to_apptdata -internal _DtCm_convert_entry_wheader -internal _DtCm_copy_cms_access_list -internal _DtCm_copy_date_time_list -internal _DtCm_copy_opaque_data -internal _DtCm_copy_reminder -internal _DtCm_copy_reminder4 -internal _DtCm_count_entry_in_list -internal _DtCm_create_tcp_client -internal _DtCm_create_udp_client -internal _DtCm_csa2cms_access_list -internal _DtCm_csaaccesslist_toaccessentry4 -internal _DtCm_deregister_callback_2 -internal _DtCm_deregister_callback_3 -internal _DtCm_deregister_callback_4 -internal _DtCm_destroy_agent -internal _DtCm_do_registration -internal _DtCm_do_unregistration -internal _DtCm_free -internal _DtCm_free_Calendar -internal _DtCm_free_appt2 -internal _DtCm_free_appt3 -internal _DtCm_free_attr2 -internal _DtCm_free_attr3 -internal _DtCm_free_attr4 -internal _DtCm_free_attribute_value -internal _DtCm_free_attribute_values -internal _DtCm_free_attributes -internal _DtCm_free_character_pointers -internal _DtCm_free_csa_access_list -internal _DtCm_free_entry_content -internal _DtCm_free_entry_handles -internal _DtCm_free_libentries -internal _DtCm_free_libentries_from_list -internal _DtCm_free_opaque_data -internal _DtCm_free_reminder -internal _DtCm_free_reminder_references -internal _DtCm_get_Calendar -internal _DtCm_get_all_cal_attrs -internal _DtCm_get_all_entry_attrs -internal _DtCm_get_cal_attrs_by_name -internal _DtCm_get_entry_attr_names -internal _DtCm_get_entry_attrs_by_name -internal _DtCm_get_entry_detail -internal _DtCm_get_libentry -internal _DtCm_get_old_attr_by_index -internal _DtCm_get_old_attr_by_name -internal _DtCm_get_server_rpc_version -internal _DtCm_id4_to_id2 -internal _DtCm_id4_to_id3 -internal _DtCm_init_agent -internal _DtCm_keyrange4_to_keyrange3 -internal _DtCm_libentries_to_appt4 -internal _DtCm_libentry_to_entryh -internal _DtCm_list_old_cal_attr_names -internal _DtCm_make_libentry -internal _DtCm_make_name_table -internal _DtCm_match_appts -internal _DtCm_match_reminders -internal _DtCm_new_Calendar -internal _DtCm_print_errmsg -internal _DtCm_print_tick -internal _DtCm_process_updates -internal _DtCm_range4_to_range2 -internal _DtCm_range4_to_range3 -internal _DtCm_register_callback_2 -internal _DtCm_register_callback_3 -internal _DtCm_register_callback_4 -internal _DtCm_register_xtcallback -internal _DtCm_regstat2_to_regstat4 -internal _DtCm_regstat3_to_regstat4 -internal _DtCm_reminder4_to_csareminder -internal _DtCm_remove_from_entry_list -internal _DtCm_remove_registration -internal _DtCm_reset_cal_attrs -internal _DtCm_rpc_create_calendar -internal _DtCm_rpc_delete_calendar -internal _DtCm_rpc_delete_entry -internal _DtCm_rpc_enumerate_sequence -internal _DtCm_rpc_get_cal_attrs -internal _DtCm_rpc_insert_entry -internal _DtCm_rpc_list_calendar_attributes -internal _DtCm_rpc_list_calendars -internal _DtCm_rpc_lookup_entries -internal _DtCm_rpc_lookup_entry_by_id -internal _DtCm_rpc_lookup_reminder -internal _DtCm_rpc_open_calendar -internal _DtCm_rpc_register_client -internal _DtCm_rpc_set_cal_attrs -internal _DtCm_rpc_unregister_client -internal _DtCm_rpc_update_entry -internal _DtCm_rtable_abbreviated_lookup_key_range_3 -internal _DtCm_rtable_abbreviated_lookup_key_range_4 -internal _DtCm_rtable_abbreviated_lookup_range_2 -internal _DtCm_rtable_abbreviated_lookup_range_3 -internal _DtCm_rtable_abbreviated_lookup_range_4 -internal _DtCm_rtable_change_2 -internal _DtCm_rtable_change_3 -internal _DtCm_rtable_change_4 -internal _DtCm_rtable_change_instance_2 -internal _DtCm_rtable_change_instance_3 -internal _DtCm_rtable_change_instance_4 -internal _DtCm_rtable_check_2 -internal _DtCm_rtable_check_3 -internal _DtCm_rtable_check_4 -internal _DtCm_rtable_create_4 -internal _DtCm_rtable_delete_2 -internal _DtCm_rtable_delete_3 -internal _DtCm_rtable_delete_4 -internal _DtCm_rtable_delete_instance_2 -internal _DtCm_rtable_delete_instance_3 -internal _DtCm_rtable_delete_instance_4 -internal _DtCm_rtable_flush_table_2 -internal _DtCm_rtable_flush_table_3 -internal _DtCm_rtable_flush_table_4 -internal _DtCm_rtable_get_access_2 -internal _DtCm_rtable_get_access_3 -internal _DtCm_rtable_get_access_4 -internal _DtCm_rtable_gmtoff_3 -internal _DtCm_rtable_gmtoff_4 -internal _DtCm_rtable_insert_2 -internal _DtCm_rtable_insert_3 -internal _DtCm_rtable_insert_4 -internal _DtCm_rtable_lookup_2 -internal _DtCm_rtable_lookup_3 -internal _DtCm_rtable_lookup_4 -internal _DtCm_rtable_lookup_next_larger_2 -internal _DtCm_rtable_lookup_next_larger_3 -internal _DtCm_rtable_lookup_next_larger_4 -internal _DtCm_rtable_lookup_next_reminder_2 -internal _DtCm_rtable_lookup_next_reminder_3 -internal _DtCm_rtable_lookup_next_reminder_4 -internal _DtCm_rtable_lookup_next_smaller_2 -internal _DtCm_rtable_lookup_next_smaller_3 -internal _DtCm_rtable_lookup_next_smaller_4 -internal _DtCm_rtable_lookup_range_2 -internal _DtCm_rtable_lookup_range_3 -internal _DtCm_rtable_lookup_range_4 -internal _DtCm_rtable_ping_2 -internal _DtCm_rtable_ping_3 -internal _DtCm_rtable_ping_4 -internal _DtCm_rtable_remove_4 -internal _DtCm_rtable_rename_4 -internal _DtCm_rtable_set_access_2 -internal _DtCm_rtable_set_access_3 -internal _DtCm_rtable_set_access_4 -internal _DtCm_rtable_size_2 -internal _DtCm_rtable_size_3 -internal _DtCm_rtable_size_4 -internal _DtCm_scope_to_options4 -internal _DtCm_set_csa_access_attrval -internal _DtCm_set_csa_string_attrval -internal _DtCm_set_csa_uint32_attrval -internal _DtCm_table_create -internal _DtCm_table_delete -internal _DtCm_table_get_access -internal _DtCm_table_insert -internal _DtCm_table_lookup -internal _DtCm_table_lookup_key_range -internal _DtCm_table_lookup_range -internal _DtCm_table_lookup_reminder -internal _DtCm_table_register_target -internal _DtCm_table_set_access -internal _DtCm_table_size -internal _DtCm_table_unregister_target -internal _DtCm_table_update -internal _DtCm_tableres2_to_tableres4 -internal _DtCm_tableres3_to_tableres4 -internal _DtCm_tablestat2_to_tablestat4 -internal _DtCm_tablestat3_to_tablestat4 -internal _DtCm_transient -internal _DtCm_uid4_to_uid2 -internal _DtCm_uid4_to_uid3 -internal _DtCm_uidopt4_to_uid2 -internal _DtCm_uidopt4_to_uid3 -internal _DtCm_update_callback_1 -internal _DtCm_xdr_Abb_Appt_2 -internal _DtCm_xdr_Abb_Appt_3 -internal _DtCm_xdr_Abb_Appt_4 -internal _DtCm_xdr_Access_Entry_2 -internal _DtCm_xdr_Access_Entry_3 -internal _DtCm_xdr_Access_Entry_4 -internal _DtCm_xdr_Appt_2 -internal _DtCm_xdr_Appt_3 -internal _DtCm_xdr_Appt_4 -internal _DtCm_xdr_Appt_Status_3 -internal _DtCm_xdr_Appt_Status_4 -internal _DtCm_xdr_Apptid_2 -internal _DtCm_xdr_Apptid_3 -internal _DtCm_xdr_Apptid_4 -internal _DtCm_xdr_Args_2 -internal _DtCm_xdr_Args_3 -internal _DtCm_xdr_Args_4 -internal _DtCm_xdr_Attr_2 -internal _DtCm_xdr_Attr_3 -internal _DtCm_xdr_Attr_4 -internal _DtCm_xdr_Attribute_2 -internal _DtCm_xdr_Attribute_3 -internal _DtCm_xdr_Attribute_4 -internal _DtCm_xdr_Buffer_2 -internal _DtCm_xdr_Buffer_3 -internal _DtCm_xdr_Buffer_4 -internal _DtCm_xdr_Event_Type_3 -internal _DtCm_xdr_Event_Type_4 -internal _DtCm_xdr_Except_2 -internal _DtCm_xdr_Except_3 -internal _DtCm_xdr_Except_4 -internal _DtCm_xdr_Exception_2 -internal _DtCm_xdr_Exception_3 -internal _DtCm_xdr_Exception_4 -internal _DtCm_xdr_Id_2 -internal _DtCm_xdr_Id_3 -internal _DtCm_xdr_Id_4 -internal _DtCm_xdr_Interval_3 -internal _DtCm_xdr_Interval_4 -internal _DtCm_xdr_Keyrange_3 -internal _DtCm_xdr_Keyrange_4 -internal _DtCm_xdr_Options_4 -internal _DtCm_xdr_Period_2 -internal _DtCm_xdr_Period_3 -internal _DtCm_xdr_Period_4 -internal _DtCm_xdr_Privacy_Level_3 -internal _DtCm_xdr_Privacy_Level_4 -internal _DtCm_xdr_Range_2 -internal _DtCm_xdr_Range_3 -internal _DtCm_xdr_Range_4 -internal _DtCm_xdr_Reminder_2 -internal _DtCm_xdr_Reminder_3 -internal _DtCm_xdr_Reminder_4 -internal _DtCm_xdr_Table_Args_Type_2 -internal _DtCm_xdr_Table_Args_Type_3 -internal _DtCm_xdr_Table_Args_Type_4 -internal _DtCm_xdr_Table_Res_List_2 -internal _DtCm_xdr_Table_Res_List_3 -internal _DtCm_xdr_Table_Res_List_4 -internal _DtCm_xdr_Table_Res_Type_2 -internal _DtCm_xdr_Table_Res_Type_3 -internal _DtCm_xdr_Table_Res_Type_4 -internal _DtCm_xdr_Tag_2 -internal _DtCm_xdr_Tag_3 -internal _DtCm_xdr_Tag_4 -internal _DtCm_xdr_Transaction_2 -internal _DtCm_xdr_Transaction_3 -internal _DtCm_xdr_Uid_2 -internal _DtCm_xdr_Uid_3 -internal _DtCm_xdr_Uid_4 -internal _DtCm_xdr_Uidopt_4 -internal _DtCm_xdr_Update_Status - -internal _DtCm_yydebug -internal _DtCm_yyerror -internal _DtCm_yylex -internal _DtCm_yylval -internal _DtCm_yynerrs -internal _DtCm_yytext - -#if defined(__hpux) -internal _DtCm_yymaxdepth -#endif - -#if defined(sun) -internal _DtCm_yy__DtCm_yys -internal _DtCm_yy__DtCm_yyv -internal _DtCm_yyact -internal _DtCm_yychar -internal _DtCm_yychk -internal _DtCm_yydef -internal _DtCm_yyerrflag -internal _DtCm_yyexca -internal _DtCm_yypact -internal _DtCm_yypgo -internal _DtCm_yyps -internal _DtCm_yypv -internal _DtCm_yyr1 -internal _DtCm_yyr2 -internal _DtCm_yys -internal _DtCm_yystate -internal _DtCm_yytmp -internal _DtCm_yyv -internal _DtCm_yyval -#endif - -internal cmcb_update_callback_2_svc -internal cms_archive_5 -internal cms_create_calendar_5 -internal cms_delete_entry_5 -internal cms_enumerate_calendar_attr_5 -internal cms_enumerate_sequence_5 -internal cms_get_calendar_attr_5 -internal cms_get_entry_attr_5 -internal cms_insert_entry_5 -internal cms_list_calendars_5 -internal cms_lookup_entries_5 -internal cms_lookup_reminder_5 -internal cms_open_calendar_5 -internal cms_ping_5 -internal cms_register_5 -internal cms_remove_calendar_5 -internal cms_restore_5 -internal cms_set_calendar_attr_5 -internal cms_unregister_5 -internal cms_update_entry_5 -internal xdr_CSA_date_time_entry -internal xdr_CSA_opaque_data -internal xdr_CSA_reminder -internal xdr_cmcb_add_entry_data -internal xdr_cmcb_cal_attr_data -internal xdr_cmcb_delete_entry_data -internal xdr_cmcb_update_data -internal xdr_cmcb_update_entry_data -internal xdr_cms_access_entry -internal xdr_cms_attr_name -internal xdr_cms_attribute -internal xdr_cms_attribute_value -internal xdr_cms_entry -internal xdr_cms_get_entry_attr_res_item -internal xdr_cms_key -internal xdr_cms_reminder_ref -internal xdr_time_t diff --git a/cde/lib/csa/rtable2.h b/cde/lib/csa/rtable2.h index f9cff654f..67f4164a3 100644 --- a/cde/lib/csa/rtable2.h +++ b/cde/lib/csa/rtable2.h @@ -47,7 +47,7 @@ #ifndef SunOS #include -#endif /* HPUX */ +#endif /* Sun */ #include @@ -465,9 +465,4 @@ extern bool_t _DtCm_xdr_Registration_Status_2(); } #endif -#ifdef HPUX -#undef hpux -#define hpux #endif -#endif - diff --git a/cde/lib/csa/rtable3.h b/cde/lib/csa/rtable3.h index 122d96bce..e104f12a9 100644 --- a/cde/lib/csa/rtable3.h +++ b/cde/lib/csa/rtable3.h @@ -46,7 +46,7 @@ #ifndef SunOS #include -#endif /* HPUX */ +#endif /* Sun */ #include @@ -533,9 +533,4 @@ extern bool_t _DtCm_xdr_Registration_Status_3(); } #endif -#ifdef HPUX -#undef hpux -#define hpux #endif -#endif - diff --git a/cde/lib/csa/rtable4.h b/cde/lib/csa/rtable4.h index 502a09334..344bf68b0 100644 --- a/cde/lib/csa/rtable4.h +++ b/cde/lib/csa/rtable4.h @@ -597,9 +597,4 @@ extern bool_t _DtCm_xdr_Registration_Status_4(); } #endif -#ifdef HPUX -#undef hpux -#define hpux #endif -#endif - diff --git a/cde/lib/pam/libpam/libpam.elist b/cde/lib/pam/libpam/libpam.elist deleted file mode 100644 index 60ef7be00..000000000 --- a/cde/lib/pam/libpam/libpam.elist +++ /dev/null @@ -1,35 +0,0 @@ -/**************************************************************************** - * Export list for libpam. - * This list *must* be updated whenever a change is made to the libpam API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam.elist /main/1 1999/09/08 15:03:20 mgreess $ - *****************************************************************************/ - -public pam_start -public pam_end -public pam_set_item -public pam_get_item -public pam_get_user -public pam_set_data -public pam_get_data -public pam_strerror -public pam_authenticate -public pam_acct_mgmt -public pam_open_session -public pam_close_session -public pam_setcred -public pam_chauthtok - -private __pam_free_resp -private __pam_display_msg -private __pam_get_input -private __pam_get_authtok -private __pam_get_i18n_msg diff --git a/cde/lib/pam/libpam/pam_framework.c b/cde/lib/pam/libpam/pam_framework.c index 8a20ed2ea..d65f9bf41 100644 --- a/cde/lib/pam/libpam/pam_framework.c +++ b/cde/lib/pam/libpam/pam_framework.c @@ -35,12 +35,6 @@ #include #endif -#ifdef hpV4 -#include -#endif - - - #include #include #include @@ -77,10 +71,6 @@ static int load_modules(pam_handle_t *, int, char *); static void *open_module(char *); static int load_function(void *, char *, int (**func)()); #endif -#ifdef hpV4 -static shl_t open_module(char *); -static int load_function(shl_t, char *, int (**func)()); -#endif /* functions to read and store the pam.conf configuration file */ static int open_pam_conf(struct pam_fh **); @@ -1040,10 +1030,6 @@ load_modules(pam_handle_t *pamh, int type, char *function_name) void *mh; #endif -#ifdef hpV4 - shl_t mh; -#endif - pamtab *pam_entry; struct auth_module *authp; struct account_module *accountp; @@ -1233,20 +1219,12 @@ load_modules(pam_handle_t *pamh, int type, char *function_name) static void * open_module(char *module_so) { -#endif -#ifdef hpV4 -static shl_t -open_module(char *module_so) -{ #endif struct stat stb; char *errmsg; #ifdef sun void *lfd; #endif /* sun */ -#ifdef hpV4 - shl_t lfd; -#endif /* hpV4 */ /* * Stat the file so we can check modes and ownerships @@ -1289,10 +1267,6 @@ open_module(char *module_so) lfd = (void *) dlopen(module_so, RTLD_LAZY); #endif /* sun */ -#ifdef hpV4 - lfd = shl_load(module_so, BIND_DEFERRED, 0L); -#endif /* hpV4 */ - if (lfd == NULL) { if (pam_debug) { errmsg = (char *) strerror(errno); @@ -1313,20 +1287,9 @@ open_module(char *module_so) static int load_function(void *lfd, char *name, int (**func)()) { -#endif -#ifdef hpV4 -static int -load_function(shl_t lfd, char *name, int (**func)()) -{ #endif char *errmsg = NULL; -#ifdef hpV4 -void *proc_addr = NULL; -int stat; - -#endif - if (lfd == NULL) return (PAM_SYMBOL_ERR); @@ -1347,21 +1310,6 @@ int stat; } #endif -#ifdef hpV4 - - stat = shl_findsym(&lfd, name, TYPE_PROCEDURE, proc_addr); - - *func = (int (*)())proc_addr; - - if (stat) { - if (pam_debug) { - strerror_r(errno, errmsg, MAX_ERRMESSAGE_LENGTH); - syslog(LOG_DEBUG, "shl_findsym failed %s: error %s", - name, errmsg != NULL ? errmsg : ""); - } - return (PAM_SYMBOL_ERR); - } -#endif if (pam_debug) { syslog(LOG_DEBUG, "load_function: successful load of %s", name); diff --git a/cde/lib/pam/pam_modules/dce/libpam_cde.elist b/cde/lib/pam/pam_modules/dce/libpam_cde.elist deleted file mode 100644 index e666682cb..000000000 --- a/cde/lib/pam/pam_modules/dce/libpam_cde.elist +++ /dev/null @@ -1,22 +0,0 @@ -/**************************************************************************** - * Export list for libpam_dce. - * This list *must* be updated whenever a change is made to the libpam_dce - * API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam_cde.elist /main/1 1999/09/08 15:58:14 mgreess $ - *****************************************************************************/ - -public pam_sm_authenticate -public pam_sm_setcred -public pam_sm_acct_mgmt -public pam_sm_open_session -public pam_sm_close_session -public pam_sm_chauthtok diff --git a/cde/lib/pam/pam_modules/dial_auth/libpam_dial_auth.elist b/cde/lib/pam/pam_modules/dial_auth/libpam_dial_auth.elist deleted file mode 100644 index fd28ba868..000000000 --- a/cde/lib/pam/pam_modules/dial_auth/libpam_dial_auth.elist +++ /dev/null @@ -1,18 +0,0 @@ -/**************************************************************************** - * Export list for libpam_dial_auth. - * This list *must* be updated whenever a change is made to the libpam_dial_auth - * API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam_dial_auth.elist /main/1 1999/09/08 15:58:41 mgreess $ - *****************************************************************************/ - -public pam_sm_authenticate -public pam_sm_setcred diff --git a/cde/lib/pam/pam_modules/rhosts_auth/libpam_rhosts_auth.elist b/cde/lib/pam/pam_modules/rhosts_auth/libpam_rhosts_auth.elist deleted file mode 100644 index af5a73859..000000000 --- a/cde/lib/pam/pam_modules/rhosts_auth/libpam_rhosts_auth.elist +++ /dev/null @@ -1,18 +0,0 @@ -/**************************************************************************** - * Export list for libpam_rhosts_auth. - * This list *must* be updated whenever a change is made to the - * libpam_rhosts_auth API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam_rhosts_auth.elist /main/1 1999/09/08 15:59:05 mgreess $ - *****************************************************************************/ - -public pam_sm_authenticate -public pam_sm_setcred diff --git a/cde/lib/pam/pam_modules/sample/libpam_sample.elist b/cde/lib/pam/pam_modules/sample/libpam_sample.elist deleted file mode 100644 index ed25d5431..000000000 --- a/cde/lib/pam/pam_modules/sample/libpam_sample.elist +++ /dev/null @@ -1,28 +0,0 @@ -/**************************************************************************** - * Export list for libpam_sample. - * This list *must* be updated whenever a change is made to the libpam_sample - * API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam_sample.elist /main/1 1999/09/08 15:59:30 mgreess $ - *****************************************************************************/ - -public pam_sm_authenticate -public pam_sm_setcred -public pam_sm_acct_mgmt -public pam_sm_open_session -public pam_sm_close_session -public pam_sm_chauthtok - -internal display_errmsg -internal get_authtok -internal free_msg -internal free_resp - diff --git a/cde/lib/pam/pam_modules/unix/libpam_unix.elist b/cde/lib/pam/pam_modules/unix/libpam_unix.elist deleted file mode 100644 index 599c94850..000000000 --- a/cde/lib/pam/pam_modules/unix/libpam_unix.elist +++ /dev/null @@ -1,48 +0,0 @@ -/**************************************************************************** - * Export list for libpam_unix. - * This list *must* be updated whenever a change is made to the libpam_unix API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicised API - * private sym => Private C symbol, i.e., unpublicised API - * internal sym => Internal C symbol, i.e., not part of API - * publicC++ sym => Public C++ symbol, i.e., publicised API - * privateC++ sym => Private C++ symbol, i.e., unpublicised API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - * $TOG: libpam_unix.elist /main/1 1999/09/08 15:59:55 mgreess $ - *****************************************************************************/ - -public pam_sm_authenticate -public pam_sm_setcred -public pam_sm_acct_mgmt -public pam_sm_open_session -public pam_sm_close_session -public pam_sm_chauthtok - -internal get_ns -internal __set_authtoken_attr -internal defcntl -internal defopen -internal ck_perm -internal gethomedir -internal str2spwd -internal xdr_yppasswd -internal getspnam_from -internal update_authtok_file -internal setup_attr -internal getfingerinfo -internal free_setattr -internal defread -internal repository_to_string -internal _priv_lock -internal getpwnam_from -internal update_authtok_nis -internal attr_find -internal getloginshell -internal xdr_passwd -internal attr_match -internal __update_authtok -internal free_passwd_structs -internal __get_authtoken_attr - diff --git a/cde/lib/tt/bin/dbck/options.C b/cde/lib/tt/bin/dbck/options.C index 98393be4d..55ccb8e44 100644 --- a/cde/lib/tt/bin/dbck/options.C +++ b/cde/lib/tt/bin/dbck/options.C @@ -37,7 +37,7 @@ #include #include #include "util/copyright.h" -#if defined(__linux__) || defined(sgi) || defined(CSRG_BASED) +#if defined(__linux__) || defined(CSRG_BASED) #include #endif #include "dbck.h" diff --git a/cde/lib/tt/bin/shell/Makefile.am b/cde/lib/tt/bin/shell/Makefile.am index 04b2403ca..0455255be 100644 --- a/cde/lib/tt/bin/shell/Makefile.am +++ b/cde/lib/tt/bin/shell/Makefile.am @@ -10,7 +10,7 @@ AM_CXXFLAGS = -I../../lib $(TT_VERSION_DEFINE) LDADD = $(LIBTT) $(TIRPCLIB) $(XTOOLLIB) if SOLARIS -LDADD += -ldl -lintl -lsocket -lnsl +LDADD += -lintl -lsocket -lnsl endif ttmv_SOURCES = ttmv.C mover.C diff --git a/cde/lib/tt/bin/tt_type_comp/Makefile.am b/cde/lib/tt/bin/tt_type_comp/Makefile.am index c9e3dbf7e..0c04b7908 100644 --- a/cde/lib/tt/bin/tt_type_comp/Makefile.am +++ b/cde/lib/tt/bin/tt_type_comp/Makefile.am @@ -21,7 +21,7 @@ tt_type_comp_SOURCES = mp_type_comp.C mp_types_table.C \ tt_type_comp_LDADD = ../../slib/libstt.a $(LIBTT) $(TIRPCLIB) $(XTOOLLIB) if SOLARIS -tt_type_comp_LDADD += $(XTOOLLIB) -ldl -lintl -lsocket -lnsl +tt_type_comp_LDADD += $(XTOOLLIB) -lintl -lsocket -lnsl endif frozen.mp_types_lex.o: frozen.mp_types_gram.h diff --git a/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C b/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C index 6b1ac3653..1b487a910 100644 --- a/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C +++ b/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C @@ -84,12 +84,6 @@ typedef union #include -#if defined (__hpux) -/* - * On HP MAXINT is defined in both and - */ -#undef MAXINT -#endif #if defined(CSRG_BASED) #define MAXINT INT_MAX #else diff --git a/cde/lib/tt/bin/ttauth/Makefile.am b/cde/lib/tt/bin/ttauth/Makefile.am index d17f8d302..a814ca899 100644 --- a/cde/lib/tt/bin/ttauth/Makefile.am +++ b/cde/lib/tt/bin/ttauth/Makefile.am @@ -11,7 +11,7 @@ ttauth_LDADD += $(TIRPCLIB) $(XTOOLLIB) endif if SOLARIS -ttauth_LDADD += $(XTOOLLIB) -ldl -lintl -lsocket -lnsl +ttauth_LDADD += $(XTOOLLIB) -lintl -lsocket -lnsl endif if BSD diff --git a/cde/lib/tt/bin/ttauth/ttauth.h b/cde/lib/tt/bin/ttauth/ttauth.h index c12ef0842..b3670b366 100644 --- a/cde/lib/tt/bin/ttauth/ttauth.h +++ b/cde/lib/tt/bin/ttauth/ttauth.h @@ -58,9 +58,6 @@ typedef int Bool; extern char *ProgramName; -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -extern char *malloc(), *realloc(); -#endif int process_command(), auth_initialize(), auth_finalize(); extern int print_help(); extern int verbose; diff --git a/cde/lib/tt/bin/ttdbserverd/Makefile.am b/cde/lib/tt/bin/ttdbserverd/Makefile.am index 976a2a74e..1c8a3f098 100644 --- a/cde/lib/tt/bin/ttdbserverd/Makefile.am +++ b/cde/lib/tt/bin/ttdbserverd/Makefile.am @@ -16,7 +16,7 @@ rpc_ttdbserver_LDADD += $(TIRPCLIB) $(XTOOLLIB) endif if SOLARIS -rpc_ttdbserver_LDADD += $(XTOOLLIB) -ldl -lintl -lsocket -lnsl +rpc_ttdbserver_LDADD += $(XTOOLLIB) -lintl -lsocket -lnsl endif if BSD diff --git a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C index ab32ee474..af4d4dc55 100644 --- a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C +++ b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C @@ -214,15 +214,7 @@ main(int argc, char** argv, char **envp) void install_signal_handler(); SVCXPRT *transp; struct sockaddr_in saddr; -#if defined(HPUX) - int asize = sizeof(saddr); -#else -# if defined(__linux__) || defined(CSRG_BASED) || defined(sun) socklen_t asize = sizeof(saddr); -# else - size_t asize = sizeof(saddr); -# endif -#endif int is_aix = 0; int do_garbage_collect = 0; diff --git a/cde/lib/tt/bin/ttsession/Makefile.am b/cde/lib/tt/bin/ttsession/Makefile.am index 398d27b30..226a9468c 100644 --- a/cde/lib/tt/bin/ttsession/Makefile.am +++ b/cde/lib/tt/bin/ttsession/Makefile.am @@ -14,7 +14,7 @@ ttsession_LDADD += $(TIRPCLIB) $(XTOOLLIB) endif if SOLARIS -ttsession_LDADD += $(XTOOLLIB) -ldl -lintl -lsocket -lnsl +ttsession_LDADD += $(XTOOLLIB) -lintl -lsocket -lnsl endif if BSD diff --git a/cde/lib/tt/bin/tttar/Makefile.am b/cde/lib/tt/bin/tttar/Makefile.am index 510810986..e2349d881 100644 --- a/cde/lib/tt/bin/tttar/Makefile.am +++ b/cde/lib/tt/bin/tttar/Makefile.am @@ -11,7 +11,7 @@ tttar_LDADD = ../../slib/libstt.a ../../mini_isam/libisam.a \ $(LIBTT) $(TIRPCLIB) $(XTOOLLIB) if SOLARIS -tttar_LDADD += -ldl -lintl -lsocket -lnsl +tttar_LDADD += -lintl -lsocket -lnsl endif tttar_SOURCES = tttar.C \ diff --git a/cde/lib/tt/bin/tttar/tttar.C b/cde/lib/tt/bin/tttar/tttar.C index 1a66e83e5..b3961be1c 100644 --- a/cde/lib/tt/bin/tttar/tttar.C +++ b/cde/lib/tt/bin/tttar/tttar.C @@ -37,13 +37,7 @@ #include #include #include -#if defined(__linux__) || defined(sun) || defined(CSRG_BASED) #include -#else -#if !defined(sun) -#include -#endif -#endif #include #include #include diff --git a/cde/lib/tt/bin/tttar/tttar_api.C b/cde/lib/tt/bin/tttar/tttar_api.C index e742c3a83..7da03deae 100644 --- a/cde/lib/tt/bin/tttar/tttar_api.C +++ b/cde/lib/tt/bin/tttar/tttar_api.C @@ -33,11 +33,7 @@ */ #include -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#else -#include -#endif #include #include "api/c/api_api.h" #include "Tt/tt_c.h" diff --git a/cde/lib/tt/bin/tttar/tttar_spec.C b/cde/lib/tt/bin/tttar/tttar_spec.C index bee2cb13d..771ee1656 100644 --- a/cde/lib/tt/bin/tttar/tttar_spec.C +++ b/cde/lib/tt/bin/tttar/tttar_spec.C @@ -32,11 +32,7 @@ * */ -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#else -#include -#endif #include "Tt/tt_c.h" #include "util/tt_iostream.h" #include "tttar_utils.h" diff --git a/cde/lib/tt/bin/tttrace/Makefile.am b/cde/lib/tt/bin/tttrace/Makefile.am index c7ae9a4c3..9759d3ddf 100644 --- a/cde/lib/tt/bin/tttrace/Makefile.am +++ b/cde/lib/tt/bin/tttrace/Makefile.am @@ -7,7 +7,7 @@ tttrace_CXXFLAGS = -I../../lib tttrace_LDADD = $(LIBTT) $(TIRPCLIB) $(XTOOLLIB) if SOLARIS -tttrace_LDADD += -ldl -lintl -lsocket -lnsl +tttrace_LDADD += -lintl -lsocket -lnsl endif tttrace_SOURCES = tttrace.C tttrace_objs.C diff --git a/cde/lib/tt/demo/CoEd/CoEd/IMakeFile b/cde/lib/tt/demo/CoEd/CoEd/IMakeFile deleted file mode 100644 index 3674f3702..000000000 --- a/cde/lib/tt/demo/CoEd/CoEd/IMakeFile +++ /dev/null @@ -1,47 +0,0 @@ -# %% (c) Copyright 1993, 1994 Hewlett-Packard Company -# %% (c) Copyright 1993, 1994 International Business Machines Corp. -# %% (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# %% (c) Copyright 1993, 1994 Novell, Inc. -# %% $XConsortium: IMakeFile /main/3 1995/10/20 17:04:55 rswiston $ -#ifdef HideFromImake - # - # IMakeFile 1.7 17 Nov 1994 - # - # This preamble turns this imakefile into a shell script which will - # create/update this directory's makefile when invoked as follows: - # % sh IMakeFile [[GNU]MakeFile] - # -IMAKEDIR=../../../imake; export IMAKEDIR -exec make -f $IMAKEDIR/Boot.mk ${1+"$@"} -#endif HideFromImake - -TT_DIR = ../../.. - -include $(TT_DIR)/Make.macros - -.KEEP_STATE: - -default: all - -All:: $(MAKEFILE)s all -all: DynamicDebugProg(CoEd) - -CoEd_SOURCES.C = CoEdTextBuffer.C CoEditor.C CoEd.C - -RUN_PATH = -R /tt/proto/lib:/usr/dt/lib:$(OPENWINHOME)/lib:/opt/SUNWspro/lib - -ProgramDynamicOptimized(CoEd) -ProgramDynamicDebug(CoEd) -SourceHygiene(CoEd) - -SaberProg(CoEd) - -AppendVal(CPPFLAGS,-I../../../proto/include -I/usr/dt/include -I$(OPENWINHOME)/include -I../libCoEd) - -AppendVal(LDFLAGS,-L../../../proto/lib -L/usr/dt/lib -L$(OPENWINHOME)/lib -L../libCoEd/$(OEUVRE)/pdc/O) - -#AppendVal(LDLIBS,-ltt-g -lXm -lXt -lX11 -Bstatic -lCoEd -Bdynamic) -AppendVal(LDLIBS,-ltt -lXm -lXt -lX11 -Bstatic -lCoEd -Bdynamic) -loc_LDLIBS_SunOS4 = -lce -lX -lI18N -ldl -loc_LDLIBS_SunOS5 = -lnsl -lsocket -lintl -lgen -AppendVal(LDLIBS,$(loc_LDLIBS_$(OS))) diff --git a/cde/lib/tt/lib/Makefile.am b/cde/lib/tt/lib/Makefile.am index 895861805..9d48f9457 100644 --- a/cde/lib/tt/lib/Makefile.am +++ b/cde/lib/tt/lib/Makefile.am @@ -4,11 +4,6 @@ SUBDIRS = api db mp util tttk lib_LTLIBRARIES = libtt.la -# if you are on a system that does not support realpath(), you may need to -# include realpath.c in the _SOURCES -# -#libtt_la_SOURCES = realpath.c - libtt_la_SOURCES = # fake things so libtool creates this as a C++ library @@ -18,7 +13,7 @@ libtt_la_LIBADD = api/c/libapi.la api/dnd/libdnd.la db/libdb.la mp/libmp.la \ if SOLARIS # This stuff should be figured out by configure -libtt_la_LIBADD += -lnsl -lsocket -lintl -ldl -lc -lw +libtt_la_LIBADD += -lnsl -lsocket -lintl -lw endif if LINUX diff --git a/cde/lib/tt/lib/db/tt_db_file.h b/cde/lib/tt/lib/db/tt_db_file.h index 4a608f13a..71e7147a1 100644 --- a/cde/lib/tt/lib/db/tt_db_file.h +++ b/cde/lib/tt/lib/db/tt_db_file.h @@ -40,7 +40,7 @@ #include "db/tt_db_hostname_global_map_ref.h" #include "db/tt_db_access_utils.h" #include "db/tt_db_property_utils.h" -#if defined(OPT_BUG_HPUX) || defined(OPT_BUG_AIX) +#if defined(OPT_BUG_AIX) # undef copy #endif diff --git a/cde/lib/tt/lib/libtt.elist b/cde/lib/tt/lib/libtt.elist deleted file mode 100644 index a9dbb4420..000000000 --- a/cde/lib/tt/lib/libtt.elist +++ /dev/null @@ -1,2574 +0,0 @@ -/* $TOG: libtt.elist /main/24 1999/10/15 17:22:29 mgreess $ */ - -/************************************************************************* - * Export list for libDtSvc - * This list *must* be updated whenever a change is made to the library API. - * - * The syntax for the symbol declarations in this list is as follows: - * public sym => Public C symbol, i.e., publicized API - * publicC++ sym => Public C++ symbol, i.e., publicized API - * private sym => Private C symbol, i.e., unpublicized API - * privateC++ sym => Private C++ symbol, i.e., unpublicized API - * internal sym => Internal C symbol, i.e., not part of API - * internalC++ sym => Internal C++ symbol, i.e., not part of API - * - **************************************************************************/ - - -/* - * Try to make all systems look as similar as possible. - */ - -/* Get tooltalk OPT_ definitions. */ -#define _STDIO_H -#define __STDIO_H -#if defined(OSMAJORVERSION) -# define OSMajorVersion OSMAJORVERSION -# define OSMinorVersion OSMINORVERSION -#endif -#include "tt_options.h" - -#ifdef _AIX -# define size_t unsigned long -# define pid_t int -# define uid_t unsigned long -#elif defined(hpV4) -# define size_t unsigned int -# define pid_t int -# define uid_t int -#else -# define size_t unsigned int -# define pid_t long -# define uid_t long -#endif - -#if defined(hpV4) -# define xdrproc_t int (*)(...) -#else -# define xdrproc_t int (*)(void) -#endif - -#if defined(_AIX) -# define va_list char* -#elif defined(hpV4) -# define va_list double* -#else -# define va_list void* -#endif - -#ifndef _AIX -# define CLIENT __client -#endif - - -/******************************************************************** - * Public symbols -- available to everyone - ********************************************************************/ - -public tt_open -public tt_close -public tt_X_session -public tt_default_ptype -public tt_default_ptype_set -public tt_default_file -public tt_default_file_set -public tt_default_session -public tt_default_session_set -public tt_default_procid -public tt_default_procid_set -public tt_file_join -public tt_file_quit -public tt_file_objects_query -public tt_file_move -public tt_file_copy -public tt_file_destroy -public tt_message_context_val -public tt_message_context_ival -public tt_message_context_bval -public tt_message_context_xval -public tt_message_context_set -public tt_message_icontext_set -public tt_message_bcontext_set -public tt_message_xcontext_set -public tt_context_join -public tt_icontext_join -public tt_bcontext_join -public tt_xcontext_join -public tt_context_quit -public tt_icontext_quit -public tt_bcontext_quit -public tt_xcontext_quit -public tt_message_contexts_count -public tt_message_context_slotname -public tt_message_create -public tt_message_create_super -public tt_message_destroy -public tt_message_send -public tt_message_send_on_exit -public tt_message_receive -public tt_message_reply -public tt_message_reject -public tt_message_accept -public tt_message_fail -public tt_message_pattern -public tt_message_callback_add -public tt_message_user -public tt_message_user_set -public tt_message_arg_add -public tt_message_arg_mode -public tt_message_arg_type -public tt_message_arg_val -public tt_message_arg_val_set -public tt_message_arg_bval -public tt_message_arg_bval_set -public tt_message_barg_add -public tt_message_arg_ival -public tt_message_arg_ival_set -public tt_message_iarg_add -public tt_message_arg_xval -public tt_message_arg_xval_set -public tt_message_xarg_add -public tt_message_args_count -public tt_message_class -public tt_message_class_set -public tt_message_file -public tt_message_file_set -public tt_message_object -public tt_message_object_set -public tt_message_id -public tt_message_op -public tt_message_op_set -public tt_message_opnum -public tt_message_otype -public tt_message_otype_set -public tt_message_address -public tt_message_address_set -public tt_message_handler -public tt_message_handler_set -public tt_message_handler_ptype -public tt_message_handler_ptype_set -public tt_message_accepters_count -public tt_message_accepter -public tt_message_rejecters_count -public tt_message_rejecter -public tt_message_abstainers_count -public tt_message_abstainer -public tt_message_disposition -public tt_message_disposition_set -public tt_message_scope -public tt_message_scope_set -public tt_message_sender -public tt_message_sender_ptype -public tt_message_sender_ptype_set -public tt_message_session -public tt_message_session_set -public tt_message_state -public tt_message_status -public tt_message_status_set -public tt_message_status_string -public tt_message_status_string_set -public tt_message_uid -public tt_message_gid -public tt_pnotice_create -public tt_prequest_create -public tt_onotice_create -public tt_orequest_create -public tt_spec_create -public tt_spec_write -public tt_spec_destroy -public tt_spec_file -public tt_spec_type -public tt_spec_type_set -public tt_spec_move -public tt_spec_propname -public tt_spec_propnames_count -public tt_spec_prop -public tt_spec_prop_add -public tt_spec_prop_count -public tt_spec_prop_set -public tt_spec_bprop -public tt_spec_bprop_add -public tt_spec_bprop_set -public tt_objid_equal -public tt_objid_objkey -public tt_otype_deriveds_count -public tt_otype_derived -public tt_otype_base -public tt_otype_is_derived -public tt_otype_osig_count -public tt_otype_hsig_count -public tt_otype_osig_op -public tt_otype_hsig_op -public tt_otype_osig_args_count -public tt_otype_hsig_args_count -public tt_otype_osig_arg_mode -public tt_otype_hsig_arg_mode -public tt_otype_osig_arg_type -public tt_otype_hsig_arg_type -public tt_pattern_create -public tt_pattern_destroy -public tt_pattern_register -public tt_pattern_unregister -public tt_pattern_callback_add -public tt_pattern_user -public tt_pattern_user_set -public tt_pattern_category -public tt_pattern_category_set -public tt_pattern_arg_add -public tt_pattern_barg_add -public tt_pattern_iarg_add -public tt_pattern_xarg_add -public tt_pattern_class_add -public tt_pattern_file_add -public tt_pattern_object_add -public tt_pattern_op_add -public tt_pattern_opnum_add -public tt_pattern_otype_add -public tt_pattern_address_add -public tt_pattern_disposition_add -public tt_pattern_scope_add -public tt_pattern_sender_add -public tt_pattern_sender_ptype_add -public tt_pattern_session_add -public tt_pattern_state_add -public tt_pattern_context_add -public tt_pattern_icontext_add -public tt_pattern_bcontext_add -public tt_pattern_xcontext_add -public tt_ptype_declare -public tt_ptype_undeclare -public tt_ptype_exists -public tt_ptype_opnum_callback_add -public tt_otype_opnum_callback_add -public tt_session_join -public tt_session_quit -public tt_initial_session -public tt_session_propname -public tt_session_propnames_count -public tt_session_prop -public tt_session_prop_add -public tt_session_prop_count -public tt_session_prop_set -public tt_session_bprop -public tt_session_bprop_add -public tt_session_bprop_set -public tt_session_types_load -public tt_fd -public tt_mark -public tt_release -public tt_malloc -public tt_free -public tt_status_message -public tt_pointer_error -public tt_error -public tt_int_error -public tt_error_pointer -public tt_error_int -public tt_trace_control -public tt_message_print -public tt_pattern_print -public tt_file_netfile -public tt_netfile_file -public tt_host_file_netfile -public tt_host_netfile_file -public tt_feature_enabled -public tt_feature_required -public ttdt_open -public ttdt_sender_imprint_on -public ttdt_close -public ttdt_session_join -public ttdt_session_quit -public ttdt_message_accept -public ttdt_subcontract_manage -public ttdt_file_join -public ttdt_file_event -public ttdt_file_quit -public ttdt_Get_Modified -public ttdt_Save -public ttdt_Revert -public ttdt_file_notice -public ttdt_file_request -public ttmedia_ptype_declare -public ttmedia_load -public ttmedia_load_reply -public ttmedia_Deposit -public tttk_Xt_input_handler -public tttk_block_while -public tttk_message_create -public tttk_message_destroy -public tttk_message_reject -public tttk_message_fail -public tttk_message_abandon -public tttk_string_op -public tttk_op_string - -/* - * Public symbols added during the thread-safing of libtt - */ -public tt_procid_session -public tt_thread_procid -public tt_thread_procid_set -public tt_thread_session -public tt_thread_session_set - -/* - * Public symbols added for ICE style authorization - */ -public tt_AuthFileName -public tt_FreeAuthFileEntry -public tt_GenerateMagicCookie -public tt_GetAuthFileEntry -public tt_LockAuthFile -public tt_ReadAuthFileEntry -public tt_UnlockAuthFile -public tt_WriteAuthFileEntry - -/******************************************************************** - * Private symbols -- Undocumented APIs that are exported for B.C. - * or because privileged applications may need used them. - ********************************************************************/ - -/* This is commented as a temporary function? */ -private _ttds_file_server - -/* These constants in tttk.h should really be considered public. */ -private Tttk_boolean -private Tttk_file -private Tttk_height -private Tttk_integer -private Tttk_message_id -private Tttk_string -private Tttk_title -private Tttk_width -private Tttk_xoffset -private Tttk_yoffset - -privateC++ _Tt_allocated::operator delete(void*) -privateC++ _Tt_allocated::operator new(size_t) -privateC++ _Tt_arg::_Tt_arg(const _Tt_arg_ptr&) -privateC++ _Tt_arg::_Tt_arg(tt_mode,const char*) -privateC++ _Tt_arg::_Tt_arg(void) -privateC++ _Tt_arg::data_string(_Tt_string&) const -privateC++ _Tt_arg::match_score(const _Tt_arg&,int&) const -privateC++ _Tt_arg::operator==(const _Tt_arg&) const -privateC++ _Tt_arg::~_Tt_arg(void) -privateC++ _Tt_arg_list::_Tt_arg_list(void) -privateC++ _Tt_arg_list_cursor::~_Tt_arg_list_cursor(void) -privateC++ _Tt_arg_list_ptr::_Tt_arg_list_ptr(void) -privateC++ _Tt_arg_list_ptr::xdr(XDR*) -privateC++ _Tt_arg_list_ptr::~_Tt_arg_list_ptr(void) -privateC++ _Tt_arg_ptr::_Tt_arg_ptr(void) -privateC++ _Tt_arg_ptr::~_Tt_arg_ptr(void) -privateC++ _Tt_auth::_Tt_auth(_Tt_auth_level) -privateC++ _Tt_auth::~_Tt_auth(void) -privateC++ _Tt_auth::generate_auth_cookie(void) -privateC++ _Tt_auth::retrieve_auth_cookie(void) -privateC++ _Tt_auth::set_auth_level(_Tt_auth_level) -privateC++ _Tt_auth::set_sessionid(int,_Tt_auth_level,_Tt_string,int) -privateC++ _Tt_basename(const char*,int) -privateC++ _Tt_context::_Tt_context(void) -privateC++ _Tt_context::setName(const char*) -privateC++ _Tt_context_list::_Tt_context_list(void) -privateC++ _Tt_context_list::append_ordered(const _Tt_context_ptr&) -privateC++ _Tt_context_list_cursor::~_Tt_context_list_cursor(void) -privateC++ _Tt_context_list_ptr::_Tt_context_list_ptr(void) -privateC++ _Tt_context_list_ptr::xdr(XDR*) -privateC++ _Tt_context_list_ptr::~_Tt_context_list_ptr(void) -privateC++ _Tt_context_ptr::~_Tt_context_ptr(void) -privateC++ _Tt_db_access::_Tt_db_access(void) -privateC++ _Tt_db_access_ptr::_Tt_db_access_ptr(void) -privateC++ _Tt_db_access_ptr::~_Tt_db_access_ptr(void) -privateC++ _Tt_db_client::_Tt_db_client(void) -privateC++ _Tt_db_client::garbage_collect_in_server(void) -privateC++ _Tt_db_client::~_Tt_db_client(void) -privateC++ _Tt_db_key::_Tt_db_key(const _Tt_string&) -privateC++ _Tt_db_key::_Tt_db_key(short) -privateC++ _Tt_db_key::operator==(const _Tt_db_key&) const -privateC++ _Tt_db_key::string(void) const -privateC++ _Tt_db_key_ptr::_Tt_db_key_ptr(void) -privateC++ _Tt_db_key_ptr::~_Tt_db_key_ptr(void) -privateC++ _Tt_db_object::_Tt_db_object(void) -privateC++ _Tt_db_object::addProperty(const _Tt_db_property_ptr&,int) -privateC++ _Tt_db_object::create(const _Tt_string&,const _Tt_string&) -privateC++ _Tt_db_object::getAccess(void) -privateC++ _Tt_db_object::remove(void) -privateC++ _Tt_db_object::setAccess(const _Tt_db_access_ptr&) -privateC++ _Tt_db_object::setType(const _Tt_string&) -privateC++ _Tt_db_object::write(void) -privateC++ _Tt_db_object_ptr::~_Tt_db_object_ptr(void) -privateC++ _Tt_db_property::_Tt_db_property(void) -privateC++ _Tt_db_property::is_empty(void) const -privateC++ _Tt_db_property_list::_Tt_db_property_list(void) -privateC++ _Tt_db_property_list_cursor::~_Tt_db_property_list_cursor(void) -privateC++ _Tt_db_property_list_ptr::_Tt_db_property_list_ptr(void) -privateC++ _Tt_db_property_list_ptr::~_Tt_db_property_list_ptr(void) -privateC++ _Tt_db_property_ptr::_Tt_db_property_ptr(void) -privateC++ _Tt_db_property_ptr::~_Tt_db_property_ptr(void) -privateC++ _Tt_desktop::_Tt_desktop(void) -privateC++ _Tt_desktop::init(_Tt_string,_Tt_dt_type) -privateC++ _Tt_desktop::notify_fd(void) -privateC++ _Tt_desktop::set_error_handler(int (*)(void*)) -privateC++ _Tt_desktop::set_prop(_Tt_string,_Tt_string&) -privateC++ _Tt_desktop_lock::_Tt_desktop_lock(const _Tt_desktop_ptr&) -privateC++ _Tt_desktop_lock_ptr::_Tt_desktop_lock_ptr(void) -privateC++ _Tt_desktop_lock_ptr::~_Tt_desktop_lock_ptr(void) -privateC++ _Tt_dirname(const char*,int) -privateC++ _Tt_file::networkPath_(_Tt_object_ptr&) -privateC++ _Tt_file_system::_Tt_file_system(void) -privateC++ _Tt_file_system::bestMatchToPath(const _Tt_string&) -privateC++ _Tt_file_system::~_Tt_file_system(void) -privateC++ _Tt_file_system_entry_ptr::~_Tt_file_system_entry_ptr(void) -privateC++ _Tt_global::_Tt_global(void) -privateC++ _Tt_global::drop_mutex(void) -privateC++ _Tt_global::find_host(_Tt_string,_Tt_host_ptr&,int) -privateC++ _Tt_global::get_local_host(_Tt_host_ptr&) -privateC++ _Tt_global::grab_mutex(void) -privateC++ _Tt_global::maxfds(void) -privateC++ _Tt_global::set_xdr_version(int) -privateC++ _Tt_global::xdr_version(void) -privateC++ _Tt_int_rec::_Tt_int_rec(int) -privateC++ _Tt_int_rec_list::_Tt_int_rec_list(void) -privateC++ _Tt_int_rec_list_cursor::~_Tt_int_rec_list_cursor(void) -privateC++ _Tt_int_rec_list_ptr::_Tt_int_rec_list_ptr(void) -privateC++ _Tt_int_rec_list_ptr::~_Tt_int_rec_list_ptr(void) -privateC++ _Tt_int_rec_ptr::~_Tt_int_rec_ptr(void) -privateC++ _Tt_map_entry::getPathAddress(_Tt_object_ptr&) -privateC++ _Tt_message::_Tt_message(void) -privateC++ _Tt_message::add_out_arg(_Tt_arg_ptr&) -privateC++ _Tt_message::add_voter(const _Tt_procid_ptr&,tt_state) -privateC++ _Tt_message::base_constructor(void) -privateC++ _Tt_message::clr_observer_procid(void) -privateC++ _Tt_message::context(const char*) const -privateC++ _Tt_message::is_equal(const _Tt_message_ptr&) -privateC++ _Tt_message::is_start_message(void) const -privateC++ _Tt_message::pattern_id(void) -privateC++ _Tt_message::set_handler_procid(const _Tt_procid_ptr&) -privateC++ _Tt_message::set_handler_ptype(_Tt_string) -privateC++ _Tt_message::set_opnum(int) -privateC++ _Tt_message::set_pattern_id(_Tt_string) -privateC++ _Tt_message::set_start_message(int) -privateC++ _Tt_message::set_state(tt_state) -privateC++ _Tt_message::set_status(int) -privateC++ _Tt_message::unset_handler_procid(void) -privateC++ _Tt_message::update_message(const _Tt_message_ptr&) -privateC++ _Tt_message::xdr(XDR*) -privateC++ _Tt_message::~_Tt_message(void) -privateC++ _Tt_message_list::_Tt_message_list(void) -privateC++ _Tt_message_list::~_Tt_message_list(void) -privateC++ _Tt_message_list_cursor::~_Tt_message_list_cursor(void) -privateC++ _Tt_message_list_ptr::_Tt_message_list_ptr(void) -privateC++ _Tt_message_list_ptr::~_Tt_message_list_ptr(void) -privateC++ _Tt_message_ptr::_Tt_message_ptr(void) -privateC++ _Tt_message_ptr::~_Tt_message_ptr(void) -privateC++ _Tt_mp::_Tt_mp(void) -privateC++ _Tt_mp::find_session(_Tt_string,_Tt_session_ptr&,int,int) -privateC++ _Tt_mp::~_Tt_mp(void) -privateC++ _Tt_msg_context::_Tt_msg_context(void) -privateC++ _Tt_msg_context::enVarName(void) const -privateC++ _Tt_msg_context::isEnvEntry(void) const -privateC++ _Tt_msg_context::stringRep(void) const -privateC++ _Tt_msg_context::~_Tt_msg_context(void) -privateC++ _Tt_msg_context_list_cursor::~_Tt_msg_context_list_cursor(void) -privateC++ _Tt_msg_context_ptr::_Tt_msg_context_ptr(void) -privateC++ _Tt_msg_context_ptr::~_Tt_msg_context_ptr(void) -privateC++ _Tt_msg_trace::_Tt_msg_trace(_Tt_message&,_Tt_dispatch_reason) -privateC++ _Tt_msg_trace::_Tt_msg_trace(_Tt_message&,const _Tt_procid&) -privateC++ _Tt_msg_trace::_Tt_msg_trace(_Tt_message&,tt_state) -privateC++ _Tt_msg_trace::~_Tt_msg_trace(void) -privateC++ _Tt_new_ptr::_Tt_new_ptr(_Tt_object*) -privateC++ _Tt_new_ptr::_Tt_new_ptr(const _Tt_new_ptr&) -privateC++ _Tt_new_ptr::_Tt_new_ptr(void) -privateC++ _Tt_new_ptr::operator=(_Tt_object*) -privateC++ _Tt_new_ptr::operator=(const _Tt_new_ptr&) -privateC++ _Tt_new_ptr::xdr(XDR*,int (*)(XDR*,_Tt_object*),_Tt_object* (*)(void)) -privateC++ _Tt_new_ptr::~_Tt_new_ptr(void) -privateC++ _Tt_object::xdr(XDR*) -privateC++ _Tt_object::~_Tt_object(void) -privateC++ _Tt_object_list::_Tt_object_list(const _Tt_object_list&) -privateC++ _Tt_object_list::_Tt_object_list(void) -privateC++ _Tt_object_list::append(_Tt_object_list_ptr) -privateC++ _Tt_object_list::append(const _Tt_object_ptr&) -privateC++ _Tt_object_list::append_destructive(_Tt_object_list_ptr) -privateC++ _Tt_object_list::bot(void) const -privateC++ _Tt_object_list::flush(void) -privateC++ _Tt_object_list::is_empty(void) const -privateC++ _Tt_object_list::operator[](int) const -privateC++ _Tt_object_list::pop(void) -privateC++ _Tt_object_list::print(void (*)(const _Tt_ostream&,const _Tt_object*),const _Tt_ostream&) const -privateC++ _Tt_object_list::push(const _Tt_object_ptr&) -privateC++ _Tt_object_list::top(void) const -privateC++ _Tt_object_list::xdr(XDR*,int (*)(XDR*,_Tt_object*),_Tt_object* (*)(void)) -privateC++ _Tt_object_list::~_Tt_object_list(void) -privateC++ _Tt_object_list_cursor::_Tt_object_list_cursor(const _Tt_object_list_cursor&) -privateC++ _Tt_object_list_cursor::_Tt_object_list_cursor(const _Tt_object_list_ptr&) -privateC++ _Tt_object_list_cursor::_Tt_object_list_cursor(void) -privateC++ _Tt_object_list_cursor::is_valid(void) const -privateC++ _Tt_object_list_cursor::next(void) -privateC++ _Tt_object_list_cursor::operator*(void) const -privateC++ _Tt_object_list_cursor::prev(void) -privateC++ _Tt_object_list_cursor::remove(void) -privateC++ _Tt_object_list_cursor::reset(const _Tt_object_list_ptr&) -privateC++ _Tt_object_list_cursor::reset(void) -privateC++ _Tt_object_list_cursor::~_Tt_object_list_cursor(void) -privateC++ _Tt_object_list_ptr::_Tt_object_list_ptr(void) -privateC++ _Tt_object_list_ptr::~_Tt_object_list_ptr(void) -privateC++ _Tt_object_ptr::_Tt_object_ptr(void) -privateC++ _Tt_object_ptr::~_Tt_object_ptr(void) -privateC++ _Tt_object_table::_Tt_object_table(int) -privateC++ _Tt_object_table::insert(_Tt_object_ptr&) -privateC++ _Tt_object_table::lookup(const _Tt_string&) const -privateC++ _Tt_object_table::lookup(const _Tt_string&,_Tt_object_ptr&) const -privateC++ _Tt_object_table::print(void (*)(const _Tt_ostream&,const _Tt_object*),const _Tt_ostream&) const -privateC++ _Tt_object_table::remove(const _Tt_string&) -privateC++ _Tt_object_table::xdr(XDR*,int (*)(XDR*,_Tt_object*),_Tt_object* (*)(void)) -privateC++ _Tt_object_table::~_Tt_object_table(void) -privateC++ _Tt_object_table_cursor::_Tt_object_table_cursor(const _Tt_object_table_cursor&) -privateC++ _Tt_object_table_cursor::_Tt_object_table_cursor(const _Tt_object_table_ptr&) -privateC++ _Tt_object_table_cursor::_Tt_object_table_cursor(void) -privateC++ _Tt_object_table_cursor::next(void) -privateC++ _Tt_object_table_cursor::operator*(void) -privateC++ _Tt_object_table_cursor::reset(_Tt_object_table_ptr&) -privateC++ _Tt_object_table_cursor::~_Tt_object_table_cursor(void) -privateC++ _Tt_object_table_ptr::_Tt_object_table_ptr(void) -privateC++ _Tt_object_table_ptr::~_Tt_object_table_ptr(void) -privateC++ _Tt_ostream::operator<<(char) const -privateC++ _Tt_ostream::operator<<(const _Tt_string&) const -privateC++ _Tt_ostream::operator<<(const char*) const -privateC++ _Tt_ostream::operator<<(int) const -privateC++ _Tt_ostream::_Tt_ostream(FILE*) -privateC++ _Tt_ostream::~_Tt_ostream(void) -privateC++ _Tt_pat_context::_Tt_pat_context(const _Tt_context&) -privateC++ _Tt_pat_context::_Tt_pat_context(void) -privateC++ _Tt_pat_context::addValue(const _Tt_msg_context&) -privateC++ _Tt_pat_context::deleteValue(const _Tt_msg_context&) -privateC++ _Tt_pat_context::~_Tt_pat_context(void) -privateC++ _Tt_pat_context_list::append_ordered(const _Tt_pat_context_ptr&) -privateC++ _Tt_pat_context_list_cursor::~_Tt_pat_context_list_cursor(void) -privateC++ _Tt_pat_context_ptr::~_Tt_pat_context_ptr(void) -privateC++ _Tt_patlist::_Tt_patlist(void) -privateC++ _Tt_patlist_ptr::_Tt_patlist_ptr(void) -privateC++ _Tt_patlist_ptr::~_Tt_patlist_ptr(void) -privateC++ _Tt_patlist_table_ptr::_Tt_patlist_table_ptr(void) -privateC++ _Tt_patlist_table_ptr::~_Tt_patlist_table_ptr(void) -privateC++ _Tt_pattern::_Tt_pattern(void) -privateC++ _Tt_pattern::add_field(const _Tt_string&,_Tt_string_list_ptr&) -privateC++ _Tt_pattern::add_field(int,_Tt_int_rec_list_ptr&) -privateC++ _Tt_pattern::add_netfile(const _Tt_string&,int) -privateC++ _Tt_pattern::del_file(const _Tt_string&) -privateC++ _Tt_pattern::del_session(const _Tt_string&) -privateC++ _Tt_pattern::join_files(const _Tt_string&) const -privateC++ _Tt_pattern::set_id(const _Tt_string&) -privateC++ _Tt_pattern::xdr(XDR*) -privateC++ _Tt_pattern::~_Tt_pattern(void) -privateC++ _Tt_pattern_list::_Tt_pattern_list(void) -privateC++ _Tt_pattern_list_cursor::~_Tt_pattern_list_cursor(void) -privateC++ _Tt_pattern_list_ptr::_Tt_pattern_list_ptr(void) -privateC++ _Tt_pattern_list_ptr::~_Tt_pattern_list_ptr(void) -privateC++ _Tt_pattern_ptr::_Tt_pattern_ptr(void) -privateC++ _Tt_pattern_ptr::~_Tt_pattern_ptr(void) -privateC++ _Tt_pid_t_rec_list_ptr::_Tt_pid_t_rec_list_ptr(void) -privateC++ _Tt_pid_t_rec_list_ptr::~_Tt_pid_t_rec_list_ptr(void) -privateC++ _Tt_procid::_Tt_procid(void) -privateC++ _Tt_procid::add_joined_file(_Tt_string) -privateC++ _Tt_procid::del_joined_file(_Tt_string) -privateC++ _Tt_procid::id(void) const -privateC++ _Tt_procid::joined_to_file(_Tt_string) -privateC++ _Tt_procid::processing(const _Tt_message&) -privateC++ _Tt_procid::xdr(XDR*) -privateC++ _Tt_procid::~_Tt_procid(void) -privateC++ _Tt_procid_list::_Tt_procid_list(void) -privateC++ _Tt_procid_list::~_Tt_procid_list(void) -privateC++ _Tt_procid_list_cursor::~_Tt_procid_list_cursor(void) -privateC++ _Tt_procid_list_ptr::_Tt_procid_list_ptr(void) -privateC++ _Tt_procid_list_ptr::~_Tt_procid_list_ptr(void) -privateC++ _Tt_procid_ptr::_Tt_procid_ptr(void) -privateC++ _Tt_procid_ptr::~_Tt_procid_ptr(void) -privateC++ _Tt_qmsg_info::_Tt_qmsg_info(void) -privateC++ _Tt_qmsg_info_ptr::_Tt_qmsg_info_ptr(void) -privateC++ _Tt_qmsg_info_ptr::~_Tt_qmsg_info_ptr(void) -privateC++ _Tt_session::_Tt_session(void) -privateC++ _Tt_session::address_string(void) -privateC++ _Tt_session::call(int,xdrproc_t,char*,xdrproc_t,char*,int,int) -privateC++ _Tt_session::client_session_init(void) -privateC++ _Tt_session::desktop_event_callback(void) -privateC++ _Tt_session::displayname(void) -privateC++ _Tt_session::env(void) -privateC++ _Tt_session::find_advertised_address(_Tt_string&) -privateC++ _Tt_session::has_id(const _Tt_string&) -privateC++ _Tt_session::has_id(const _Tt_string_list_ptr) -privateC++ _Tt_session::parsed_address(_Tt_string&) -privateC++ _Tt_session::ping(void) -privateC++ _Tt_session::process_tree_id(void) -privateC++ _Tt_session::set_env(_Tt_env,_Tt_string) -privateC++ _Tt_session::set_id(char*) -privateC++ _Tt_session::xdr(XDR*) -privateC++ _Tt_session::~_Tt_session(void) -privateC++ _Tt_session_prop::_Tt_session_prop(_Tt_string,_Tt_string) -privateC++ _Tt_session_prop_list::_Tt_session_prop_list(void) -privateC++ _Tt_session_prop_list_cursor::~_Tt_session_prop_list_cursor(void) -privateC++ _Tt_session_prop_ptr::~_Tt_session_prop_ptr(void) -privateC++ _Tt_session_ptr::_Tt_session_ptr(void) -privateC++ _Tt_session_ptr::~_Tt_session_ptr(void) -privateC++ _Tt_stream_socket::_Tt_stream_socket(_Tt_host_ptr&,int) -privateC++ _Tt_stream_socket::fd(void) -privateC++ _Tt_stream_socket::init(int) -privateC++ _Tt_stream_socket::send(char*,int) -privateC++ _Tt_string::_Tt_string(const _Tt_string&) -privateC++ _Tt_string::_Tt_string(const char*) -privateC++ _Tt_string::_Tt_string(const unsigned char*,int) -privateC++ _Tt_string::_Tt_string(int) -privateC++ _Tt_string::_Tt_string(void) -privateC++ _Tt_string::cat(const _Tt_string&) const -privateC++ _Tt_string::cmp(const char*,int) const -privateC++ _Tt_string::index(char) const -privateC++ _Tt_string::left(int) const -privateC++ _Tt_string::operator char*(void) const -privateC++ _Tt_string::operator const char*(void) const -privateC++ _Tt_string::operator=(const char*) -privateC++ _Tt_string::operator[](int) -privateC++ _Tt_string::operator[](int) const -privateC++ _Tt_string::print(const _Tt_ostream&,int,int) const -privateC++ _Tt_string::right(int) const -privateC++ _Tt_string::rindex(char) const -privateC++ _Tt_string::rsplit(char,_Tt_string&) const -privateC++ _Tt_string::set(const unsigned char*,int) -privateC++ _Tt_string::sh_match(const _Tt_string&) const -privateC++ _Tt_string::split(char,_Tt_string&) const -privateC++ _Tt_string::strchr(char) const -privateC++ _Tt_string::strrchr(char) const -privateC++ _Tt_string::xdr(XDR*) -privateC++ _Tt_string::~_Tt_string(void) -privateC++ _Tt_string_buf::print(const _Tt_ostream&,int,int) const -privateC++ _Tt_string_buf_list_ptr::xdr(XDR*) -privateC++ _Tt_string_buf_list_ptr::~_Tt_string_buf_list_ptr(void) -privateC++ _Tt_string_list::_Tt_string_list(void) -privateC++ _Tt_string_list::~_Tt_string_list(void) -privateC++ _Tt_string_list_cursor::_Tt_string_list_cursor(const _Tt_string_list_ptr&) -privateC++ _Tt_string_list_cursor::_Tt_string_list_cursor(void) -privateC++ _Tt_string_list_cursor::operator*(void) const -privateC++ _Tt_string_list_cursor::operator->(void) const -privateC++ _Tt_string_list_cursor::~_Tt_string_list_cursor(void) -privateC++ _Tt_string_list_ptr::_Tt_string_list_ptr(void) -privateC++ _Tt_string_list_ptr::operator=(_Tt_string_list*) -privateC++ _Tt_string_list_ptr::operator=(const _Tt_string_list_ptr&) -privateC++ _Tt_string_list_ptr::~_Tt_string_list_ptr(void) -privateC++ _Tt_string_map::_Tt_string_map(_Tt_string (*)(_Tt_object_ptr&)) -privateC++ _Tt_string_map::findEntry(const _Tt_string&) -privateC++ _Tt_string_map::loadFile(const _Tt_string&) -privateC++ _Tt_string_map_ptr::_Tt_string_map_ptr(void) -privateC++ _Tt_string_map_ptr::~_Tt_string_map_ptr(void) -privateC++ _tt_syslog(FILE*,int,const char* ...) -privateC++ _Tt_trace::decr_indent(void) const -privateC++ _Tt_trace::incr_indent(void) const -privateC++ _Tt_trace::operator<<(const _Tt_pattern&) const -privateC++ _Tt_trace::operator<<(const _Tt_string&) const -privateC++ _Tt_trace::operator<<(const char*) const -privateC++ _Tt_trace::operator<<(int) const -privateC++ _Tt_trace::print(void (*)(const _Tt_ostream&,const _Tt_object*),const _Tt_object*) const -privateC++ _Tt_xdr_size_stream::_Tt_xdr_size_stream(void) -privateC++ _Tt_xdr_size_stream::operator XDR*(void) -privateC++ _tt_base64_encode(unsigned long) -privateC++ _tt_catgets(int,int,const char*) -privateC++ _tt_db_create_objid(const _Tt_db_key_ptr&,const _Tt_string&,const _Tt_string&,const _Tt_string&) -privateC++ _tt_dir_entries(const _Tt_string&,int) -privateC++ _tt_entrypt_to_string(_Tt_entry_pt) -privateC++ _tt_enumname(tt_category) -privateC++ _tt_enumname(tt_class) -privateC++ _tt_enumname(tt_feature) -privateC++ _tt_enumname(tt_mode) -privateC++ _tt_enumname(tt_scope) -privateC++ _tt_enumname(tt_status) -privateC++ _tt_errno_status(int) -privateC++ _tt_file_netfile(const char*) -privateC++ _tt_free_rpc_messages(const _tt_message_list&) -privateC++ _tt_free_rpc_properties(const _tt_property_list&) -privateC++ _tt_free_rpc_property(const _tt_property&) -privateC++ _tt_free_rpc_strings(const _tt_string_list&) -privateC++ _tt_get_realpath(char*,char*) -privateC++ _tt_get_rpc_access(const _tt_access&,_Tt_db_access_ptr&) -privateC++ _tt_get_rpc_properties(const _tt_property_list&,_Tt_db_property_list_ptr&) -privateC++ _tt_get_rpc_property(const _tt_property&,_Tt_db_property_ptr&) -privateC++ _tt_get_rpc_strings(const _tt_string_list&,_Tt_string_list_ptr&) -privateC++ _tt_getdtablesize(void) -privateC++ _tt_gethostname(void) -privateC++ _tt_global -privateC++ _tt_is_network_path(const _Tt_string&) -privateC++ _tt_isdir(const _Tt_string&) -privateC++ _tt_lib_version -privateC++ _tt_mp -privateC++ _tt_netfile_file(const char*) -privateC++ _tt_network_path_to_local_path(const _Tt_string&) -privateC++ _tt_openlog(const char*,int,int) -privateC++ _tt_patlist_op(_Tt_object_ptr&) -privateC++ _tt_pointer_error(void*) -privateC++ _tt_procid_id(_Tt_object_ptr&) -privateC++ _tt_put_all_env_var(int,const char* ...) -privateC++ _tt_putenv(const char*,const char*) -privateC++ _tt_realpath(const _Tt_string&) -privateC++ _tt_restoredtablesize(void) -privateC++ _tt_set_rpc_access(const _Tt_db_access_ptr&,_tt_access&) -privateC++ _tt_set_rpc_properties(const _Tt_db_property_list_ptr&,_tt_property_list&) -privateC++ _tt_set_rpc_property(const _Tt_db_property_ptr&,_tt_property&) -privateC++ _tt_set_rpc_strings(const _Tt_string_list_ptr&,_tt_string_list&) -privateC++ _tt_sigset(int,void (*)(int)) -privateC++ _tt_strdup(const _Tt_string&) -privateC++ _tt_string_print(const _Tt_ostream&,const _Tt_object*) -privateC++ _tt_svc_getargs -privateC++ _tt_user_path(_Tt_string,_Tt_string,int) -privateC++ _tt_zoomdtablesize(void) -privateC++ tt_xdr_auth_iceauth_args(XDR*,_Tt_auth_iceauth_args*) -privateC++ tt_xdr_context_join_args(XDR*,_Tt_context_join_args*) -privateC++ tt_xdr_declare_ptype_args(XDR*,_Tt_declare_ptype_args*) -privateC++ tt_xdr_dispatch_reply_args(XDR*,_Tt_dispatch_reply_args*) -privateC++ tt_xdr_fd_args(XDR*,_Tt_fd_args*) -privateC++ tt_xdr_file_join_args(XDR*,_Tt_file_join_args*) -privateC++ tt_xdr_load_types_args(XDR*,_Tt_load_types_args*) -privateC++ tt_xdr_message(XDR*,_Tt_message_ptr*) -privateC++ tt_xdr_next_message_args(XDR*,_Tt_next_message_args*) -privateC++ tt_xdr_otype_args(XDR*,_Tt_otype_args*) -privateC++ tt_xdr_procid(XDR*,_Tt_procid_ptr*) -privateC++ tt_xdr_prop_args(XDR*,_Tt_prop_args*) -privateC++ tt_xdr_rpc_result(XDR*,_Tt_rpc_result*) -privateC++ tt_xdr_string(XDR*,_Tt_string*) -privateC++ tt_xdr_update_args(XDR*,_Tt_update_args*) -privateC++ xdr_Tt_isaddindex_args(XDR*,_Tt_isaddindex_args*) -privateC++ xdr_Tt_isam_results(XDR*,_Tt_isam_results*) -privateC++ xdr_Tt_isbuild_args(XDR*,_Tt_isbuild_args*) -privateC++ xdr_Tt_iscntl_args(XDR*,_Tt_iscntl_args*) -privateC++ xdr_Tt_iscntl_results(XDR*,_Tt_iscntl_results*) -privateC++ xdr_Tt_isdelrec_args(XDR*,_Tt_isdelrec_args*) -privateC++ xdr_Tt_isopen_args(XDR*,_Tt_isopen_args*) -privateC++ xdr_Tt_isread_args(XDR*,_Tt_isread_args*) -privateC++ xdr_Tt_isread_results(XDR*,_Tt_isread_results*) -privateC++ xdr_Tt_isrewrec_args(XDR*,_Tt_isrewrec_args*) -privateC++ xdr_Tt_isstart_args(XDR*,_Tt_isstart_args*) -privateC++ xdr_Tt_iswrite_args(XDR*,_Tt_iswrite_args*) -privateC++ xdr_Tt_oidaccess_args(XDR*,_Tt_oidaccess_args*) -privateC++ xdr_Tt_oidaccess_results(XDR*,_Tt_oidaccess_results*) -privateC++ xdr_Tt_session_args(XDR*,_Tt_session_args*) -privateC++ xdr_Tt_spec_props(XDR*,_Tt_spec_props*) -privateC++ xdr_Tt_test_and_set_args(XDR*,_Tt_test_and_set_args*) -privateC++ xdr_Tt_test_and_set_results(XDR*,_Tt_test_and_set_results*) -privateC++ xdr_Tt_transaction_args(XDR*,_Tt_transaction_args*) -privateC++ xdr_tt_add_file_prop_args(XDR*,_tt_add_file_prop_args*) -privateC++ xdr_tt_add_obj_prop_args(XDR*,_tt_add_obj_prop_args*) -privateC++ xdr_tt_auth_level_results(XDR*,_tt_auth_level_results*) -privateC++ xdr_tt_create_file_args(XDR*,_tt_create_file_args*) -privateC++ xdr_tt_create_obj_args(XDR*,_tt_create_obj_args*) -privateC++ xdr_tt_db_cache_results(XDR*,_tt_db_cache_results*) -privateC++ xdr_tt_db_results(XDR*,_Tt_db_results*) -privateC++ xdr_tt_del_file_prop_args(XDR*,_tt_del_file_prop_args*) -privateC++ xdr_tt_del_obj_prop_args(XDR*,_tt_del_obj_prop_args*) -privateC++ xdr_tt_delete_session_args(XDR*,_tt_delete_session_args*) -privateC++ xdr_tt_delete_session_results(XDR*,_tt_delete_session_results*) -privateC++ xdr_tt_dequeue_msgs_args(XDR*,_tt_dequeue_msgs_args*) -privateC++ xdr_tt_dequeue_msgs_results(XDR*,_tt_dequeue_msgs_results*) -privateC++ xdr_tt_file_access_results(XDR*,_tt_file_access_results*) -privateC++ xdr_tt_file_netfile_args(XDR*,_tt_file_netfile_args*) -privateC++ xdr_tt_file_netfile_results(XDR*,_tt_file_netfile_results*) -privateC++ xdr_tt_file_objs_results(XDR*,_tt_file_objs_results*) -privateC++ xdr_tt_file_partition_results(XDR*,_tt_file_partition_results*) -privateC++ xdr_tt_file_prop_results(XDR*,_tt_file_prop_results*) -privateC++ xdr_tt_file_props_results(XDR*,_tt_file_props_results*) -privateC++ xdr_tt_garbage_collect_results(XDR*,_tt_garbage_collect_results*) -privateC++ xdr_tt_get_all_sessions_args(XDR*,_tt_get_all_sessions_args*) -privateC++ xdr_tt_get_all_sessions_results(XDR*,_tt_get_all_sessions_results*) -privateC++ xdr_tt_get_file_access_args(XDR*,_tt_get_file_access_args*) -privateC++ xdr_tt_get_file_objs_args(XDR*,_tt_get_file_objs_args*) -privateC++ xdr_tt_get_file_prop_args(XDR*,_tt_get_file_prop_args*) -privateC++ xdr_tt_get_file_props_args(XDR*,_tt_get_file_props_args*) -privateC++ xdr_tt_get_obj_access_args(XDR*,_tt_get_obj_access_args*) -privateC++ xdr_tt_get_obj_file_args(XDR*,_tt_get_obj_file_args*) -privateC++ xdr_tt_get_obj_prop_args(XDR*,_tt_get_obj_prop_args*) -privateC++ xdr_tt_get_obj_props_args(XDR*,_tt_get_obj_props_args*) -privateC++ xdr_tt_is_file_in_db_args(XDR*,_tt_is_file_in_db_args*) -privateC++ xdr_tt_is_file_in_db_results(XDR*,_tt_is_file_in_db_results*) -privateC++ xdr_tt_is_obj_in_db_args(XDR*,_tt_is_obj_in_db_args*) -privateC++ xdr_tt_is_obj_in_db_results(XDR*,_tt_is_obj_in_db_results*) -privateC++ xdr_tt_move_file_args(XDR*,_tt_move_file_args*) -privateC++ xdr_tt_obj_access_results(XDR*,_tt_obj_access_results*) -privateC++ xdr_tt_obj_file_results(XDR*,_tt_obj_file_results*) -privateC++ xdr_tt_obj_prop_results(XDR*,_tt_obj_prop_results*) -privateC++ xdr_tt_obj_props_results(XDR*,_tt_obj_props_results*) -privateC++ xdr_tt_obj_type_results(XDR*,_tt_obj_type_results*) -privateC++ xdr_tt_queue_msg_args(XDR*,_tt_queue_msg_args*) -privateC++ xdr_tt_remove_file_args(XDR*,_tt_remove_file_args*) -privateC++ xdr_tt_remove_obj_args(XDR*,_tt_remove_obj_args*) -privateC++ xdr_tt_set_file_access_args(XDR*,_tt_set_file_access_args*) -privateC++ xdr_tt_set_file_prop_args(XDR*,_tt_set_file_prop_args*) -privateC++ xdr_tt_set_file_props_args(XDR*,_tt_set_file_props_args*) -privateC++ xdr_tt_set_obj_access_args(XDR*,_tt_set_obj_access_args*) -privateC++ xdr_tt_set_obj_file_args(XDR*,_tt_set_obj_file_args*) -privateC++ xdr_tt_set_obj_prop_args(XDR*,_tt_set_obj_prop_args*) -privateC++ xdr_tt_set_obj_props_args(XDR*,_tt_set_obj_props_args*) -privateC++ xdr_tt_set_obj_type_args(XDR*,_tt_set_obj_type_args*) - -/* These next four are only used when building non-threaded dbserver */ -privateC++ _Tt_db_client_ptr::_Tt_db_client_ptr(void) -privateC++ _Tt_db_client_ptr::~_Tt_db_client_ptr(void) -privateC++ _Tt_db_client::delete_session(_Tt_string) -privateC++ _Tt_db_client::get_all_sessions(void) - -#ifdef _AIX -/* AIX c++filt does not demangle these symbols. */ -privateC++ __vft10_Tt_object -privateC++ __vft12_Tt_arg_list10_Tt_object -privateC++ __vft14_Tt_file_table10_Tt_object -privateC++ __vft16_Tt_pattern_list10_Tt_object -privateC++ __vft17_Tt_patlist_table10_Tt_object -privateC++ __vft16_Tt_context_list10_Tt_object -privateC++ __vft16_Tt_message_list10_Tt_object -privateC++ __vft15_Tt_procid_list10_Tt_object -#else -privateC++ _Tt_object::__vtbl -privateC++ _Tt_arg_list::__vtbl -privateC++ _Tt_file_table::__vtbl -privateC++ _Tt_pattern_list::__vtbl -privateC++ _Tt_patlist_table::__vtbl -privateC++ _Tt_context_list::__vtbl -privateC++ _Tt_message_list::__vtbl -privateC++ _Tt_procid_list::__vtbl -#endif - -#ifdef hpV4 -/* If debugging is enabled the tt clients require these symbols on HP. */ -privateC++ _Tt_arg::__vtbl -privateC++ _Tt_context::__vtbl -privateC++ _Tt_db_access::__vtbl -privateC++ _Tt_db_client::__vtbl -privateC++ _Tt_db_hostname_redirection_map::__vtbl -privateC++ _Tt_db_key::__vtbl -privateC++ _Tt_db_object::__vtbl -privateC++ _Tt_db_property::__vtbl -privateC++ _Tt_desktop_lock::__vtbl -privateC++ _Tt_file_system_entry::__vtbl -privateC++ _Tt_global::__vtbl -privateC++ _Tt_int_rec::__vtbl -privateC++ _Tt_message::__vtbl -privateC++ _Tt_mp::__vtbl -privateC++ _Tt_msg_context::__vtbl -privateC++ _Tt_object_list::__vtbl -privateC++ _Tt_object_table::__vtbl -privateC++ _Tt_pat_context::__vtbl -privateC++ _Tt_patlist::__vtbl -privateC++ _Tt_pattern::__vtbl -privateC++ _Tt_procid::__vtbl -privateC++ _Tt_session::__vtbl -privateC++ _Tt_session_prop::__vtbl -privateC++ _Tt_string_buf::__vtbl -privateC++ _Tt_string_buf_list::__vtbl -privateC++ _Tt_string_list::__vtbl -#endif - -#ifdef OPT_BUG_SUNOS_5 -/* This symbol was accidentally exported in libtt.so.1, so preserve */ -/* it for backward compatibility. */ -private iserrno -#endif - -/* - * This symbol (like all C++ symbols) really should be internal, but - * some of the tt clients used it in CDE 1.0. - */ -privateC++ _Tt_string_buf_ptr::~_Tt_string_buf_ptr(void) - - - -/******************************************************************** - * Internal symbols -- not to be used outside the library. - ********************************************************************/ - -internal TtDtOps -internal _TttkKeys -internal _tt_api_status_page -#ifdef OPT_TLI -internal _tt_bind_endpoint -#endif -internal _tt_c_mp -internal _tt_htab -internal _tt_string_list_decode -internal _tt_string_list_encode -internal _tt_svc_freeargs -#ifdef OPT_TLI -internal _tt_tli_set_nodelay -#endif -#ifdef OPT_DLOPEN_X11 -internal _tt_xlib -internal _tt_xt -#endif -internal _ttdnd_receive -internal _ttdtme -internal ttdnd_init -internal ttdnd_negotiate_types -internal ttdnd_start_transfer - -#ifdef OPT_XTHREADS -/* Conditionally compiled routines in api/c/api_default.C. */ -internalC++ _tt_feature_enabled(tt_feature) -internalC++ _tt_feature_required(tt_feature) -internalC++ _tt_thread_procid(void) -internalC++ _tt_thread_procid_set(const char*) -internalC++ _tt_thread_session(void) -internalC++ _tt_thread_session_set(const char*) -#endif - -internalC++ _TtDtProcid::_TtDtProcid(const char*,const char*,const char*) -internalC++ _TtDtProcid::pats_create(_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*),_WidgetRec*,void*) const -internalC++ _TtDtProcid::~_TtDtProcid(void) -internalC++ _Tt_api_callback::_Tt_api_callback(void) -internalC++ _Tt_api_callback::print(FILE*) const -internalC++ _Tt_api_callback::~_Tt_api_callback(void) -internalC++ _Tt_api_callback_list::_Tt_api_callback_list(void) -internalC++ _Tt_api_callback_list::xdr(XDR*) -internalC++ _Tt_api_callback_list::~_Tt_api_callback_list(void) -internalC++ _Tt_api_callback_list_cursor::~_Tt_api_callback_list_cursor(void) -internalC++ _Tt_api_callback_list_maker(void) -internalC++ _Tt_api_callback_list_ptr::_Tt_api_callback_list_ptr(void) -internalC++ _Tt_api_callback_list_ptr::xdr(XDR*) -internalC++ _Tt_api_callback_list_ptr::~_Tt_api_callback_list_ptr(void) -internalC++ _Tt_api_callback_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_callback_maker(void) -internalC++ _Tt_api_callback_ptr::_Tt_api_callback_ptr(void) -internalC++ _Tt_api_callback_ptr::xdr(XDR*) -internalC++ _Tt_api_callback_ptr::~_Tt_api_callback_ptr(void) -internalC++ _Tt_api_callback_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_filename_map::canonical_path_val(void) -internalC++ _Tt_api_filename_map::hostname_val(void) -internalC++ _Tt_api_filename_map::lpath_val(void) -internalC++ _Tt_api_filename_map::parse_netfilename(const _Tt_string&) -internalC++ _Tt_api_filename_map::rpath_val(void) -internalC++ _Tt_api_filename_map::set_filename(const _Tt_string&) -internalC++ _Tt_api_filename_map_maker(void) -internalC++ _Tt_api_filename_map_ptr::_Tt_api_filename_map_ptr(void) -internalC++ _Tt_api_filename_map_ptr::xdr(XDR*) -internalC++ _Tt_api_filename_map_ptr::~_Tt_api_filename_map_ptr(void) -internalC++ _Tt_api_filename_map_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_handle::_Tt_api_handle(void) -internalC++ _Tt_api_handle::add_callback(tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _Tt_api_handle::fetch(int) -internalC++ _Tt_api_handle::mptr(void) -internalC++ _Tt_api_handle::pptr(void) -internalC++ _Tt_api_handle::print(FILE*) const -internalC++ _Tt_api_handle::ptr_set(_Tt_c_message_ptr) -internalC++ _Tt_api_handle::ptr_set(_Tt_pattern_ptr) -internalC++ _Tt_api_handle::run_callbacks(_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _Tt_api_handle::store(int,void*) -internalC++ _Tt_api_handle::~_Tt_api_handle(void) -internalC++ _Tt_api_handle_list::_Tt_api_handle_list(void) -internalC++ _Tt_api_handle_list::xdr(XDR*) -internalC++ _Tt_api_handle_list::~_Tt_api_handle_list(void) -internalC++ _Tt_api_handle_list_cursor::~_Tt_api_handle_list_cursor(void) -internalC++ _Tt_api_handle_list_maker(void) -internalC++ _Tt_api_handle_list_ptr::_Tt_api_handle_list_ptr(void) -internalC++ _Tt_api_handle_list_ptr::xdr(XDR*) -internalC++ _Tt_api_handle_list_ptr::~_Tt_api_handle_list_ptr(void) -internalC++ _Tt_api_handle_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_handle_maker(void) -internalC++ _Tt_api_handle_ptr::_Tt_api_handle_ptr(void) -internalC++ _Tt_api_handle_ptr::xdr(XDR*) -internalC++ _Tt_api_handle_ptr::~_Tt_api_handle_ptr(void) -internalC++ _Tt_api_handle_table::_Tt_api_handle_table(void) -internalC++ _Tt_api_handle_table::add_callback(_Tt_message_handle*,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _Tt_api_handle_table::add_callback(_Tt_pattern_handle*,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _Tt_api_handle_table::clear(_Tt_c_message_ptr) -internalC++ _Tt_api_handle_table::clear(_Tt_message_handle*) -internalC++ _Tt_api_handle_table::clear(_Tt_pattern_handle*) -internalC++ _Tt_api_handle_table::clear(_Tt_pattern_ptr) -internalC++ _Tt_api_handle_table::fetch(_Tt_message_handle*,int) -internalC++ _Tt_api_handle_table::fetch(_Tt_pattern_handle*,int) -internalC++ _Tt_api_handle_table::lookup_mhandle(_Tt_c_message_ptr) -internalC++ _Tt_api_handle_table::lookup_msg(_Tt_message_handle*) -internalC++ _Tt_api_handle_table::lookup_pat(_Tt_pattern_handle*) -internalC++ _Tt_api_handle_table::lookup_pat_by_id(_Tt_string,_Tt_pattern_handle*&) -internalC++ _Tt_api_handle_table::lookup_phandle(_Tt_pattern_ptr) -internalC++ _Tt_api_handle_table::run_message_callbacks(_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _Tt_api_handle_table::run_pattern_callbacks(_Tt_pattern_handle*,_Tt_message_handle*) -internalC++ _Tt_api_handle_table::store(_Tt_message_handle*,int,void*) -internalC++ _Tt_api_handle_table::store(_Tt_pattern_handle*,int,void*) -internalC++ _Tt_api_handle_table::~_Tt_api_handle_table(void) -internalC++ _Tt_api_handle_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_spec_map_ref::_Tt_api_spec_map_ref(void) -internalC++ _Tt_api_spec_map_ref::addSpec(_Tt_objid_spec_ptr) -internalC++ _Tt_api_spec_map_ref::apiSpecKey(_Tt_object_ptr&) -internalC++ _Tt_api_spec_map_ref::apiSpecMapP -internalC++ _Tt_api_spec_map_ref::deleteSpec(_Tt_string) -internalC++ _Tt_api_spec_map_ref::flush(void) -internalC++ _Tt_api_spec_map_ref::getSpec(_Tt_string) -internalC++ _Tt_api_spec_map_ref::~_Tt_api_spec_map_ref(void) -internalC++ _Tt_api_stg_stack::_Tt_api_stg_stack(void) -internalC++ _Tt_api_stg_stack::free(char*) -internalC++ _Tt_api_stg_stack::malloc(size_t) -internalC++ _Tt_api_stg_stack::mark(void) -internalC++ _Tt_api_stg_stack::release(int) -internalC++ _Tt_api_stg_stack::take(char*) -internalC++ _Tt_api_stg_stack::~_Tt_api_stg_stack(void) -internalC++ _Tt_api_stg_stack_elm::print(FILE*) const -internalC++ _Tt_api_stg_stack_elm::~_Tt_api_stg_stack_elm(void) -internalC++ _Tt_api_stg_stack_elm_list::_Tt_api_stg_stack_elm_list(void) -internalC++ _Tt_api_stg_stack_elm_list::xdr(XDR*) -internalC++ _Tt_api_stg_stack_elm_list::~_Tt_api_stg_stack_elm_list(void) -internalC++ _Tt_api_stg_stack_elm_list_cursor::~_Tt_api_stg_stack_elm_list_cursor(void) -internalC++ _Tt_api_stg_stack_elm_list_maker(void) -internalC++ _Tt_api_stg_stack_elm_list_ptr::_Tt_api_stg_stack_elm_list_ptr(void) -internalC++ _Tt_api_stg_stack_elm_list_ptr::xdr(XDR*) -internalC++ _Tt_api_stg_stack_elm_list_ptr::~_Tt_api_stg_stack_elm_list_ptr(void) -internalC++ _Tt_api_stg_stack_elm_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_stg_stack_elm_maker(void) -internalC++ _Tt_api_stg_stack_elm_ptr::_Tt_api_stg_stack_elm_ptr(void) -internalC++ _Tt_api_stg_stack_elm_ptr::xdr(XDR*) -internalC++ _Tt_api_stg_stack_elm_ptr::~_Tt_api_stg_stack_elm_ptr(void) -internalC++ _Tt_api_stg_stack_elm_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_stg_stack_maker(void) -internalC++ _Tt_api_stg_stack_ptr::_Tt_api_stg_stack_ptr(void) -internalC++ _Tt_api_stg_stack_ptr::xdr(XDR*) -internalC++ _Tt_api_stg_stack_ptr::~_Tt_api_stg_stack_ptr(void) -internalC++ _Tt_api_stg_stack_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_userdata::_Tt_api_userdata(void) -internalC++ _Tt_api_userdata::print(FILE*) const -internalC++ _Tt_api_userdata::~_Tt_api_userdata(void) -internalC++ _Tt_api_userdata_list::_Tt_api_userdata_list(void) -internalC++ _Tt_api_userdata_list::xdr(XDR*) -internalC++ _Tt_api_userdata_list::~_Tt_api_userdata_list(void) -internalC++ _Tt_api_userdata_list_cursor::~_Tt_api_userdata_list_cursor(void) -internalC++ _Tt_api_userdata_list_maker(void) -internalC++ _Tt_api_userdata_list_ptr::_Tt_api_userdata_list_ptr(void) -internalC++ _Tt_api_userdata_list_ptr::xdr(XDR*) -internalC++ _Tt_api_userdata_list_ptr::~_Tt_api_userdata_list_ptr(void) -internalC++ _Tt_api_userdata_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_api_userdata_maker(void) -internalC++ _Tt_api_userdata_ptr::_Tt_api_userdata_ptr(void) -internalC++ _Tt_api_userdata_ptr::xdr(XDR*) -internalC++ _Tt_api_userdata_ptr::~_Tt_api_userdata_ptr(void) -internalC++ _Tt_api_userdata_xdr(XDR*,_Tt_object*) -internalC++ _Tt_arg::_Tt_arg(const _Tt_arg&) -internalC++ _Tt_arg::_Tt_arg(const _Tt_string&) -internalC++ _Tt_arg::_Tt_arg(const char*) -internalC++ _Tt_arg::_Tt_arg(tt_mode,_Tt_string&) -internalC++ _Tt_arg::constructor_common(void) -internalC++ _Tt_arg::data_int(int&) const -internalC++ _Tt_arg::print(const _Tt_ostream&) const -internalC++ _Tt_arg::set_data_int(int) -internalC++ _Tt_arg::set_data_string(const _Tt_string&) -internalC++ _Tt_arg::update_value(const _Tt_arg&) -internalC++ _Tt_arg::xdr(XDR*) -internalC++ _Tt_arg_list::xdr(XDR*) -internalC++ _Tt_arg_list::~_Tt_arg_list(void) -internalC++ _Tt_arg_list_maker(void) -internalC++ _Tt_arg_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_arg_maker(void) -internalC++ _Tt_arg_ptr::xdr(XDR*) -internalC++ _Tt_arg_xdr(XDR*,_Tt_object*) -internalC++ _Tt_auth::read_auth_file(char*) -internalC++ _Tt_auth::write_auth_file(char*) -internalC++ _Tt_auth::modify_auth_entry(_tt_AuthFileEntry*,_tt_AuthFileEntryList**) -internalC++ _Tt_auth::read_auth_entries(FILE*,_tt_AuthFileEntryList**) -internalC++ _Tt_audit::entry(char*,_Tt_entry_pt ...) -internalC++ _Tt_c_file::_Tt_c_file(_Tt_string) -internalC++ _Tt_c_file::_Tt_c_file(void) -internalC++ _Tt_c_file::c_join(_Tt_procid_ptr&) -internalC++ _Tt_c_file::c_quit(_Tt_procid_ptr&) -internalC++ _Tt_c_file::process_message_queue(int) -internalC++ _Tt_c_file::~_Tt_c_file(void) -internalC++ _Tt_c_file_maker(void) -internalC++ _Tt_c_file_ptr::_Tt_c_file_ptr(void) -internalC++ _Tt_c_file_ptr::xdr(XDR*) -internalC++ _Tt_c_file_ptr::~_Tt_c_file_ptr(void) -internalC++ _Tt_c_file_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_message::_Tt_c_message(void) -internalC++ _Tt_c_message::_rpc_dispatch(void) const -internalC++ _Tt_c_message::_rpc_dispatch_2(void) const -internalC++ _Tt_c_message::dispatch(int) -internalC++ _Tt_c_message::dispatch_file_scope_notification(_Tt_file_ptr&) -internalC++ _Tt_c_message::dispatch_on_exit(void) -internalC++ _Tt_c_message::is_a_diff(void) -internalC++ _Tt_c_message::resolve(void) -internalC++ _Tt_c_message::set_return_handler_flags(void) -internalC++ _Tt_c_message::~_Tt_c_message(void) -internalC++ _Tt_c_message_maker(void) -internalC++ _Tt_c_message_ptr::_Tt_c_message_ptr(void) -internalC++ _Tt_c_message_ptr::xdr(XDR*) -internalC++ _Tt_c_message_ptr::~_Tt_c_message_ptr(void) -internalC++ _Tt_c_message_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_mp::_Tt_c_mp(void) -internalC++ _Tt_c_mp::c_init(void) -internalC++ _Tt_c_mp::c_remove_procid(_Tt_procid_ptr&) -internalC++ _Tt_c_mp::create_new_procid(void) -internalC++ _Tt_c_mp::default_c_procid(void) -internalC++ _Tt_c_mp::default_procid(void) -internalC++ _Tt_c_mp::procid_count(void) -internalC++ _Tt_c_mp::set_default_procid(_Tt_string,int) -#ifdef OPT_XTHREADS -internalC++ _Tt_c_mp::set_multithreaded(void) -#endif -internalC++ _Tt_c_mp::~_Tt_c_mp(void) -internalC++ _Tt_c_msg_context::_Tt_c_msg_context(void) -internalC++ _Tt_c_msg_context::c_join(_Tt_session&,_Tt_procid_ptr&) -internalC++ _Tt_c_msg_context::c_quit(_Tt_session&,_Tt_procid_ptr&) -internalC++ _Tt_c_msg_context::~_Tt_c_msg_context(void) -internalC++ _Tt_c_msg_context_list::_Tt_c_msg_context_list(void) -internalC++ _Tt_c_msg_context_list::xdr(XDR*) -internalC++ _Tt_c_msg_context_list::~_Tt_c_msg_context_list(void) -internalC++ _Tt_c_msg_context_list_cursor::~_Tt_c_msg_context_list_cursor(void) -internalC++ _Tt_c_msg_context_list_maker(void) -internalC++ _Tt_c_msg_context_list_ptr::_Tt_c_msg_context_list_ptr(void) -internalC++ _Tt_c_msg_context_list_ptr::xdr(XDR*) -internalC++ _Tt_c_msg_context_list_ptr::~_Tt_c_msg_context_list_ptr(void) -internalC++ _Tt_c_msg_context_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_msg_context_maker(void) -internalC++ _Tt_c_msg_context_ptr::_Tt_c_msg_context_ptr(void) -internalC++ _Tt_c_msg_context_ptr::xdr(XDR*) -internalC++ _Tt_c_msg_context_ptr::~_Tt_c_msg_context_ptr(void) -internalC++ _Tt_c_msg_context_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_procid::_Tt_c_procid(const _Tt_string&) -internalC++ _Tt_c_procid::_Tt_c_procid(void) -internalC++ _Tt_c_procid::add_pattern(_Tt_pattern_ptr&) -internalC++ _Tt_c_procid::api_in(_Tt_string&) -internalC++ _Tt_c_procid::api_out(void) -internalC++ _Tt_c_procid::clear_signal(void) -internalC++ _Tt_c_procid::close(void) -internalC++ _Tt_c_procid::commit(void) -internalC++ _Tt_c_procid::declare_ptype(_Tt_string&) -internalC++ _Tt_c_procid::default_session(void) -internalC++ _Tt_c_procid::del_pattern(const _Tt_string&) -internalC++ _Tt_c_procid::exists_ptype(_Tt_string&) -internalC++ _Tt_c_procid::init(void) -internalC++ _Tt_c_procid::load_types(_Tt_string&) -internalC++ _Tt_c_procid::next_message(_Tt_c_message_ptr&) -internalC++ _Tt_c_procid::set_default_file(const _Tt_string&) -internalC++ _Tt_c_procid::set_default_ptype(_Tt_string&) -internalC++ _Tt_c_procid::set_default_session(_Tt_string&) -internalC++ _Tt_c_procid::set_fd_channel(int) -internalC++ _Tt_c_procid::unblock_ptype(const _Tt_string&) -internalC++ _Tt_c_procid::undeclare_ptype(_Tt_string&) -internalC++ _Tt_c_procid::update_message(const _Tt_c_message_ptr&,tt_state) -internalC++ _Tt_c_procid::~_Tt_c_procid(void) -internalC++ _Tt_c_procid_maker(void) -internalC++ _Tt_c_procid_ptr::_Tt_c_procid_ptr(void) -internalC++ _Tt_c_procid_ptr::xdr(XDR*) -internalC++ _Tt_c_procid_ptr::~_Tt_c_procid_ptr(void) -internalC++ _Tt_c_procid_table::xdr(XDR*) -internalC++ _Tt_c_procid_table::~_Tt_c_procid_table(void) -internalC++ _Tt_c_procid_table_cursor::~_Tt_c_procid_table_cursor(void) -internalC++ _Tt_c_procid_table_maker(void) -internalC++ _Tt_c_procid_table_ptr::_Tt_c_procid_table_ptr(void) -internalC++ _Tt_c_procid_table_ptr::xdr(XDR*) -internalC++ _Tt_c_procid_table_ptr::~_Tt_c_procid_table_ptr(void) -internalC++ _Tt_c_procid_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_procid_xdr(XDR*,_Tt_object*) -internalC++ _Tt_c_session::_Tt_c_session(void) -internalC++ _Tt_c_session::c_addprop(_Tt_string,_Tt_string) -internalC++ _Tt_c_session::c_getprop(_Tt_string,int,_Tt_string&) -internalC++ _Tt_c_session::c_init(void) -internalC++ _Tt_c_session::c_join(_Tt_procid_ptr&) -internalC++ _Tt_c_session::c_propcount(_Tt_string,int&) -internalC++ _Tt_c_session::c_propname(int,_Tt_string&) -internalC++ _Tt_c_session::c_propnames_count(int&) -internalC++ _Tt_c_session::c_quit(_Tt_procid_ptr&) -internalC++ _Tt_c_session::c_setprop(_Tt_string,_Tt_string) -internalC++ _Tt_c_session::startup_ttsession(_Tt_string&) -internalC++ _Tt_c_session::~_Tt_c_session(void) -internalC++ _Tt_c_session_maker(void) -internalC++ _Tt_c_session_ptr::_Tt_c_session_ptr(void) -internalC++ _Tt_c_session_ptr::xdr(XDR*) -internalC++ _Tt_c_session_ptr::~_Tt_c_session_ptr(void) -internalC++ _Tt_c_session_xdr(XDR*,_Tt_object*) -internalC++ _Tt_client_isam_file::_Tt_client_isam_file(const _Tt_string&,int,const _Tt_db_client_ptr&) -#ifdef _AIX -/* The AIX c++filt bungles this symbol. */ -internalC++ _Tt_client_isam_file::_Tt_client_isam_file(const _Tt_string&,int)T234_Tt_client_isam_key_descriptor_ptrT2RC17_Tt_db_client_ptr -#else -internalC++ _Tt_client_isam_file::_Tt_client_isam_file(const _Tt_string&,int,int,_Tt_client_isam_key_descriptor_ptr,int,const _Tt_db_client_ptr&) -#endif -internalC++ _Tt_client_isam_file::addIndex(_Tt_client_isam_key_descriptor_ptr) -internalC++ _Tt_client_isam_file::deleteRecord(long,const _Tt_client_isam_record_ptr&) -internalC++ _Tt_client_isam_file::findStartRecord(const _Tt_client_isam_key_descriptor_ptr&,int,const _Tt_client_isam_record_ptr&,int) -internalC++ _Tt_client_isam_file::getEmptyRecord(void) -internalC++ _Tt_client_isam_file::getFullRecord(const _Tt_string&) -internalC++ _Tt_client_isam_file::getISAMFileInfo(void) -internalC++ _Tt_client_isam_file::readMagicString(void) -internalC++ _Tt_client_isam_file::readRecord(int) -internalC++ _Tt_client_isam_file::readRecord(int,const _Tt_client_isam_record_ptr&) -internalC++ _Tt_client_isam_file::setErase(int) -internalC++ _Tt_client_isam_file::setTtISAMFileDefaults(void) -internalC++ _Tt_client_isam_file::updateRecord(long,const _Tt_client_isam_record_ptr&) -internalC++ _Tt_client_isam_file::writeMagicString(const _Tt_string&) -internalC++ _Tt_client_isam_file::writeRecord(const _Tt_client_isam_record_ptr&) -internalC++ _Tt_client_isam_file::~_Tt_client_isam_file(void) -internalC++ _Tt_client_isam_file_maker(void) -internalC++ _Tt_client_isam_file_ptr::_Tt_client_isam_file_ptr(void) -internalC++ _Tt_client_isam_file_ptr::xdr(XDR*) -internalC++ _Tt_client_isam_file_ptr::~_Tt_client_isam_file_ptr(void) -internalC++ _Tt_client_isam_file_xdr(XDR*,_Tt_object*) -internalC++ _Tt_client_isam_key_descriptor::_Tt_client_isam_key_descriptor(void) -internalC++ _Tt_client_isam_key_descriptor::addKeyPart(short,short,short) -internalC++ _Tt_client_isam_key_descriptor::getKeyPart(short,short&,short&,short&) const -internalC++ _Tt_client_isam_key_descriptor::setKeyPart(short,short,short,short) -internalC++ _Tt_client_isam_key_descriptor::~_Tt_client_isam_key_descriptor(void) -internalC++ _Tt_client_isam_key_descriptor_list::_Tt_client_isam_key_descriptor_list(void) -internalC++ _Tt_client_isam_key_descriptor_list::xdr(XDR*) -internalC++ _Tt_client_isam_key_descriptor_list::~_Tt_client_isam_key_descriptor_list(void) -internalC++ _Tt_client_isam_key_descriptor_list_cursor::~_Tt_client_isam_key_descriptor_list_cursor(void) -internalC++ _Tt_client_isam_key_descriptor_list_maker(void) -internalC++ _Tt_client_isam_key_descriptor_list_ptr::_Tt_client_isam_key_descriptor_list_ptr(void) -internalC++ _Tt_client_isam_key_descriptor_list_ptr::xdr(XDR*) -internalC++ _Tt_client_isam_key_descriptor_list_ptr::~_Tt_client_isam_key_descriptor_list_ptr(void) -internalC++ _Tt_client_isam_key_descriptor_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_client_isam_key_descriptor_maker(void) -internalC++ _Tt_client_isam_key_descriptor_ptr::_Tt_client_isam_key_descriptor_ptr(void) -internalC++ _Tt_client_isam_key_descriptor_ptr::xdr(XDR*) -internalC++ _Tt_client_isam_key_descriptor_ptr::~_Tt_client_isam_key_descriptor_ptr(void) -internalC++ _Tt_client_isam_key_descriptor_xdr(XDR*,_Tt_object*) -internalC++ _Tt_client_isam_record::_Tt_client_isam_record(const _Tt_client_isam_key_descriptor_list_ptr&,int,int) -internalC++ _Tt_client_isam_record::getBytes(int,int) const -internalC++ _Tt_client_isam_record::getKeyDescriptor(int) const -internalC++ _Tt_client_isam_record::getKeyPartValue(int,int) const -internalC++ _Tt_client_isam_record::getNumberOfKeys(void) const -internalC++ _Tt_client_isam_record::setBytes(int,const _Tt_string&) -internalC++ _Tt_client_isam_record::setBytes(int,int,const _Tt_string&) -internalC++ _Tt_client_isam_record::setKeyPartValue(int,int,const _Tt_string&) -internalC++ _Tt_client_isam_record::~_Tt_client_isam_record(void) -internalC++ _Tt_client_isam_record_list::_Tt_client_isam_record_list(void) -internalC++ _Tt_client_isam_record_list::xdr(XDR*) -internalC++ _Tt_client_isam_record_list::~_Tt_client_isam_record_list(void) -internalC++ _Tt_client_isam_record_list_cursor::~_Tt_client_isam_record_list_cursor(void) -internalC++ _Tt_client_isam_record_list_maker(void) -internalC++ _Tt_client_isam_record_list_ptr::_Tt_client_isam_record_list_ptr(void) -internalC++ _Tt_client_isam_record_list_ptr::xdr(XDR*) -internalC++ _Tt_client_isam_record_list_ptr::~_Tt_client_isam_record_list_ptr(void) -internalC++ _Tt_client_isam_record_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_client_isam_record_maker(void) -internalC++ _Tt_client_isam_record_ptr::_Tt_client_isam_record_ptr(void) -internalC++ _Tt_client_isam_record_ptr::xdr(XDR*) -internalC++ _Tt_client_isam_record_ptr::~_Tt_client_isam_record_ptr(void) -internalC++ _Tt_client_isam_record_xdr(XDR*,_Tt_object*) -internalC++ _Tt_context::_Tt_context(const _Tt_context&) -internalC++ _Tt_context::print(const _Tt_ostream&) const -internalC++ _Tt_context::xdr(XDR*) -internalC++ _Tt_context::~_Tt_context(void) -internalC++ _Tt_context_list::xdr(XDR*) -internalC++ _Tt_context_list::~_Tt_context_list(void) -internalC++ _Tt_context_list_maker(void) -internalC++ _Tt_context_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_context_maker(void) -internalC++ _Tt_context_ptr::_Tt_context_ptr(void) -internalC++ _Tt_context_ptr::xdr(XDR*) -internalC++ _Tt_context_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_access::~_Tt_db_access(void) -internalC++ _Tt_db_access_maker(void) -internalC++ _Tt_db_access_ptr::xdr(XDR*) -internalC++ _Tt_db_access_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_client::SetError(clnt_stat) -internalC++ _Tt_db_client::_Tt_db_client(_Tt_db_results&) -internalC++ _Tt_db_client::_Tt_db_client(const _Tt_string&,_Tt_db_results&) -internalC++ _Tt_db_client::addFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,int,int&) -internalC++ _Tt_db_client::addObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,int,_Tt_db_property_list_ptr&,int&) -internalC++ _Tt_db_client::addsession(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::connectToDB(const _Tt_string&) -internalC++ _Tt_db_client::createAuth(void) -internalC++ _Tt_db_client::createFile(const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&,int&) -internalC++ _Tt_db_client::createObject(const _Tt_string&,const _Tt_string&,const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&,int&) -internalC++ _Tt_db_client::deleteFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,int&) -internalC++ _Tt_db_client::deleteObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,_Tt_db_property_list_ptr&,int&) -internalC++ _Tt_db_client::delsession(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::dequeueMessages(const _Tt_string&,const _Tt_string_list_ptr&,_Tt_message_list_ptr&) -internalC++ _Tt_db_client::file_netfile(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::getCurrentAccess(void) const -internalC++ _Tt_db_client::getFileAccess(const _Tt_string&,_Tt_db_access_ptr&) -internalC++ _Tt_db_client::getFileObjects(const _Tt_string&,int&,_Tt_string_list_ptr&) -internalC++ _Tt_db_client::getFilePartition(const _Tt_string&,_Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::getFileProperties(const _Tt_string&,int&,_Tt_db_property_list_ptr&) -internalC++ _Tt_db_client::getFileProperty(const _Tt_string&,const _Tt_string&,int&,_Tt_db_property_ptr&) -internalC++ _Tt_db_client::getObjectAccess(const _Tt_string&,_Tt_db_access_ptr&) -internalC++ _Tt_db_client::getObjectFile(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::getObjectProperties(const _Tt_string&,int&,_Tt_db_property_list_ptr&) -internalC++ _Tt_db_client::getObjectProperty(const _Tt_string&,const _Tt_string&,int&,_Tt_db_property_ptr&) -internalC++ _Tt_db_client::getObjectType(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::gettype(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::isFileInDatabase(const _Tt_string&,int&) -internalC++ _Tt_db_client::isObjectInDatabase(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::isaddindex(int,keydesc*) -internalC++ _Tt_db_client::isbuild(char*,int,keydesc*,int) -internalC++ _Tt_db_client::isclose(int) -internalC++ _Tt_db_client::iscntl(int,int,char*) -internalC++ _Tt_db_client::isdelrec(int,long,char*) -internalC++ _Tt_db_client::iserase(char*) -internalC++ _Tt_db_client::isopen(char*,int) -internalC++ _Tt_db_client::isread(int,char*,int) -internalC++ _Tt_db_client::isrewrec(int,long,char*) -internalC++ _Tt_db_client::isstart(int,keydesc*,int,char*,int) -internalC++ _Tt_db_client::iswrite(int,char*) -internalC++ _Tt_db_client::mfs(const _Tt_string&) -internalC++ _Tt_db_client::moveFile(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::netfile_file(const _Tt_string&,_Tt_string&) -internalC++ _Tt_db_client::oldDBToNewDBResults(_Tt_old_db_results) -internalC++ _Tt_db_client::queueMessage(const _Tt_string&,const _Tt_string_list_ptr&,const _Tt_message_ptr&) -internalC++ _Tt_db_client::removeFile(const _Tt_string&) -internalC++ _Tt_db_client::removeObject(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::setCurrentAccess(const _Tt_db_access_ptr&) -internalC++ _Tt_db_client::setFileAccess(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_db_client::setFileProperties(const _Tt_string&,const _Tt_db_property_list_ptr&,int&) -internalC++ _Tt_db_client::setFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,int&) -internalC++ _Tt_db_client::setObjectAccess(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_db_client::setObjectFile(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::setObjectProperties(const _Tt_string&,const _Tt_db_property_list_ptr&,_Tt_db_property_list_ptr&,int&) -internalC++ _Tt_db_client::setObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,_Tt_db_property_list_ptr&,int&) -internalC++ _Tt_db_client::setObjectType(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_client::setTtDBDefaults(void) -internalC++ _Tt_db_client_list::_Tt_db_client_list(void) -internalC++ _Tt_db_client_list::xdr(XDR*) -internalC++ _Tt_db_client_list::~_Tt_db_client_list(void) -internalC++ _Tt_db_client_list_cursor::~_Tt_db_client_list_cursor(void) -internalC++ _Tt_db_client_list_maker(void) -internalC++ _Tt_db_client_list_ptr::_Tt_db_client_list_ptr(void) -internalC++ _Tt_db_client_list_ptr::xdr(XDR*) -internalC++ _Tt_db_client_list_ptr::~_Tt_db_client_list_ptr(void) -internalC++ _Tt_db_client_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_client_maker(void) -internalC++ _Tt_db_client_ptr::xdr(XDR*) -internalC++ _Tt_db_client_table::xdr(XDR*) -internalC++ _Tt_db_client_table::~_Tt_db_client_table(void) -internalC++ _Tt_db_client_table_cursor::~_Tt_db_client_table_cursor(void) -internalC++ _Tt_db_client_table_maker(void) -internalC++ _Tt_db_client_table_ptr::_Tt_db_client_table_ptr(void) -internalC++ _Tt_db_client_table_ptr::xdr(XDR*) -internalC++ _Tt_db_client_table_ptr::~_Tt_db_client_table_ptr(void) -internalC++ _Tt_db_client_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_client_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_file::_Tt_db_file(const _Tt_string&) -internalC++ _Tt_db_file::_Tt_db_file(const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_db_file::_Tt_db_file(void) -internalC++ _Tt_db_file::addProperty(const _Tt_db_property_ptr&,int) -internalC++ _Tt_db_file::addSession(const _Tt_string&) -internalC++ _Tt_db_file::copy(const _Tt_string&) -internalC++ _Tt_db_file::createDBFile(void) -internalC++ _Tt_db_file::deleteProperty(const _Tt_db_property_ptr&) -internalC++ _Tt_db_file::deleteSession(const _Tt_string&) -internalC++ _Tt_db_file::dequeueMessages(const _Tt_string_list_ptr&,_Tt_message_list_ptr&) -internalC++ _Tt_db_file::getAccess(void) -internalC++ _Tt_db_file::getCurrentAccess(void) const -internalC++ _Tt_db_file::getHostname(void) -internalC++ _Tt_db_file::getNetworkPath(const _Tt_string&) -internalC++ _Tt_db_file::getObjects(void) -internalC++ _Tt_db_file::getProperties(void) -internalC++ _Tt_db_file::getProperty(const _Tt_string&) -internalC++ _Tt_db_file::getSessions(void) -internalC++ _Tt_db_file::isFileInDatabase(void) -internalC++ _Tt_db_file::move(const _Tt_string&) -internalC++ _Tt_db_file::processDBResults(void) -internalC++ _Tt_db_file::queueMessage(const _Tt_string_list_ptr&,const _Tt_message_ptr&) -internalC++ _Tt_db_file::remove(void) -internalC++ _Tt_db_file::setAccess(const _Tt_db_access_ptr&) -internalC++ _Tt_db_file::setCurrentAccess(const _Tt_db_access_ptr&) -internalC++ _Tt_db_file::setProperties(const _Tt_db_property_list_ptr&) -internalC++ _Tt_db_file::setProperty(const _Tt_db_property_ptr&) -internalC++ _Tt_db_file::setTtDBFileDefaults(const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_db_file::~_Tt_db_file(void) -internalC++ _Tt_db_file_maker(void) -internalC++ _Tt_db_file_ptr::_Tt_db_file_ptr(void) -internalC++ _Tt_db_file_ptr::xdr(XDR*) -internalC++ _Tt_db_file_ptr::~_Tt_db_file_ptr(void) -internalC++ _Tt_db_file_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_hostname_global_map_ref::_Tt_db_hostname_global_map_ref(void) -internalC++ _Tt_db_hostname_global_map_ref::addDB(_Tt_db_client_ptr&) -internalC++ _Tt_db_hostname_global_map_ref::dbHostnameMap -internalC++ _Tt_db_hostname_global_map_ref::dbHostnameMapKey(_Tt_object_ptr&) -internalC++ _Tt_db_hostname_global_map_ref::flush(void) -internalC++ _Tt_db_hostname_global_map_ref::getDB(const _Tt_string&,_Tt_string&,_Tt_db_results&) -internalC++ _Tt_db_hostname_global_map_ref::removeDB(const _Tt_string&) -internalC++ _Tt_db_hostname_global_map_ref::~_Tt_db_hostname_global_map_ref(void) -internalC++ _Tt_db_hostname_redirection_map::_Tt_db_hostname_redirection_map(void) -internalC++ _Tt_db_hostname_redirection_map::findEntry(const _Tt_string&) -internalC++ _Tt_db_hostname_redirection_map::refresh(void) -internalC++ _Tt_db_hostname_redirection_map::~_Tt_db_hostname_redirection_map(void) -internalC++ _Tt_db_key::~_Tt_db_key(void) -internalC++ _Tt_db_key_maker(void) -internalC++ _Tt_db_key_ptr::xdr(XDR*) -internalC++ _Tt_db_key_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_object::_Tt_db_object(const _Tt_string&) -internalC++ _Tt_db_object::copy(const _Tt_string&) -internalC++ _Tt_db_object::create(const _Tt_string&) -internalC++ _Tt_db_object::createDBObject(void) -internalC++ _Tt_db_object::createMemoryObject(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_object::deleteProperty(const _Tt_db_property_ptr&) -internalC++ _Tt_db_object::getCurrentAccess(void) const -internalC++ _Tt_db_object::getDBObjectHostnameFromID(void) -internalC++ _Tt_db_object::getFile(void) -internalC++ _Tt_db_object::getObjectKey(void) const -internalC++ _Tt_db_object::getProperties(void) -internalC++ _Tt_db_object::getProperty(const _Tt_string&) -internalC++ _Tt_db_object::getType(void) -internalC++ _Tt_db_object::internalRefresh(void) -internalC++ _Tt_db_object::isObjectInDatabase(int) -internalC++ _Tt_db_object::makeEquivalentObjectID(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_db_object::move(const _Tt_string&) -internalC++ _Tt_db_object::processDBResults(void) -internalC++ _Tt_db_object::refresh(void) -internalC++ _Tt_db_object::remove(const _Tt_string&) -internalC++ _Tt_db_object::setCurrentAccess(const _Tt_db_access_ptr&) -internalC++ _Tt_db_object::setObjectID(const _Tt_string&) -internalC++ _Tt_db_object::setProperties(const _Tt_db_property_list_ptr&) -internalC++ _Tt_db_object::setProperty(const _Tt_db_property_ptr&) -internalC++ _Tt_db_object::setTtDBObjectDefaults(void) -internalC++ _Tt_db_object::~_Tt_db_object(void) -internalC++ _Tt_db_object_list::_Tt_db_object_list(void) -internalC++ _Tt_db_object_list::xdr(XDR*) -internalC++ _Tt_db_object_list::~_Tt_db_object_list(void) -internalC++ _Tt_db_object_list_cursor::~_Tt_db_object_list_cursor(void) -internalC++ _Tt_db_object_list_maker(void) -internalC++ _Tt_db_object_list_ptr::_Tt_db_object_list_ptr(void) -internalC++ _Tt_db_object_list_ptr::xdr(XDR*) -internalC++ _Tt_db_object_list_ptr::~_Tt_db_object_list_ptr(void) -internalC++ _Tt_db_object_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_object_maker(void) -internalC++ _Tt_db_object_ptr::_Tt_db_object_ptr(void) -internalC++ _Tt_db_object_ptr::xdr(XDR*) -internalC++ _Tt_db_object_table::xdr(XDR*) -internalC++ _Tt_db_object_table::~_Tt_db_object_table(void) -internalC++ _Tt_db_object_table_cursor::~_Tt_db_object_table_cursor(void) -internalC++ _Tt_db_object_table_maker(void) -internalC++ _Tt_db_object_table_ptr::_Tt_db_object_table_ptr(void) -internalC++ _Tt_db_object_table_ptr::xdr(XDR*) -internalC++ _Tt_db_object_table_ptr::~_Tt_db_object_table_ptr(void) -internalC++ _Tt_db_object_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_object_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_property::~_Tt_db_property(void) -internalC++ _Tt_db_property_list::xdr(XDR*) -internalC++ _Tt_db_property_list::~_Tt_db_property_list(void) -internalC++ _Tt_db_property_list_maker(void) -internalC++ _Tt_db_property_list_ptr::xdr(XDR*) -internalC++ _Tt_db_property_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_db_property_maker(void) -internalC++ _Tt_db_property_ptr::xdr(XDR*) -internalC++ _Tt_db_property_xdr(XDR*,_Tt_object*) -internalC++ _Tt_desktop::close(void) -internalC++ _Tt_desktop::del_prop(_Tt_string) -internalC++ _Tt_desktop::get_prop(_Tt_string,_Tt_string&) -internalC++ _Tt_desktop::io_error_proc(void*) -internalC++ _Tt_desktop::io_exception -internalC++ _Tt_desktop::lock(void) -internalC++ _Tt_desktop::process_event(void) -internalC++ _Tt_desktop::restore_user_handler(void) -internalC++ _Tt_desktop::session_name(_Tt_string) -internalC++ _Tt_desktop::unlock(void) -internalC++ _Tt_desktop::~_Tt_desktop(void) -internalC++ _Tt_desktop_lock::_Tt_desktop_lock(void) -internalC++ _Tt_desktop_lock::~_Tt_desktop_lock(void) -internalC++ _Tt_desktop_lock_maker(void) -internalC++ _Tt_desktop_lock_ptr::xdr(XDR*) -internalC++ _Tt_desktop_lock_xdr(XDR*,_Tt_object*) -internalC++ _Tt_desktop_maker(void) -internalC++ _Tt_desktop_ptr::_Tt_desktop_ptr(void) -internalC++ _Tt_desktop_ptr::xdr(XDR*) -internalC++ _Tt_desktop_ptr::~_Tt_desktop_ptr(void) -internalC++ _Tt_desktop_xdr(XDR*,_Tt_object*) -internalC++ _Tt_file::_Tt_file(const _Tt_string&) -internalC++ _Tt_file::_Tt_file(void) -internalC++ _Tt_file::query(tt_filter_action (*)(tt_filter_action (*)(const char*,void*,void*),_Tt_string,void*,void*),tt_filter_action (*)(const char*,void*,void*),void*,void*) -internalC++ _Tt_file::~_Tt_file(void) -internalC++ _Tt_file_list::_Tt_file_list(void) -internalC++ _Tt_file_list::xdr(XDR*) -internalC++ _Tt_file_list::~_Tt_file_list(void) -internalC++ _Tt_file_list_cursor::~_Tt_file_list_cursor(void) -internalC++ _Tt_file_list_maker(void) -internalC++ _Tt_file_list_ptr::_Tt_file_list_ptr(void) -internalC++ _Tt_file_list_ptr::xdr(XDR*) -internalC++ _Tt_file_list_ptr::~_Tt_file_list_ptr(void) -internalC++ _Tt_file_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_file_maker(void) -internalC++ _Tt_file_ptr::_Tt_file_ptr(void) -internalC++ _Tt_file_ptr::xdr(XDR*) -internalC++ _Tt_file_ptr::~_Tt_file_ptr(void) -internalC++ _Tt_file_system::findBestMountPoint(_Tt_string&,int&,_Tt_string&) -internalC++ _Tt_file_system::findMountEntry(const _Tt_string&) -internalC++ _Tt_file_system::flush(void) -internalC++ _Tt_file_system::lastMountTime -internalC++ _Tt_file_system::updateFileSystemEntries(void) -internalC++ _Tt_file_system_entry::_Tt_file_system_entry(const _Tt_string&,const _Tt_string&,const _Tt_string&,int,int) -internalC++ _Tt_file_system_entry::_Tt_file_system_entry(void) -internalC++ _Tt_file_system_entry::~_Tt_file_system_entry(void) -internalC++ _Tt_file_system_entry_list::_Tt_file_system_entry_list(void) -internalC++ _Tt_file_system_entry_list::xdr(XDR*) -internalC++ _Tt_file_system_entry_list::~_Tt_file_system_entry_list(void) -internalC++ _Tt_file_system_entry_list_cursor::~_Tt_file_system_entry_list_cursor(void) -internalC++ _Tt_file_system_entry_list_maker(void) -internalC++ _Tt_file_system_entry_list_ptr::_Tt_file_system_entry_list_ptr(void) -internalC++ _Tt_file_system_entry_list_ptr::xdr(XDR*) -internalC++ _Tt_file_system_entry_list_ptr::~_Tt_file_system_entry_list_ptr(void) -internalC++ _Tt_file_system_entry_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_file_system_entry_maker(void) -internalC++ _Tt_file_system_entry_ptr::_Tt_file_system_entry_ptr(void) -internalC++ _Tt_file_system_entry_ptr::xdr(XDR*) -internalC++ _Tt_file_system_entry_xdr(XDR*,_Tt_object*) -internalC++ _Tt_file_table::xdr(XDR*) -internalC++ _Tt_file_table::~_Tt_file_table(void) -internalC++ _Tt_file_table_cursor::~_Tt_file_table_cursor(void) -internalC++ _Tt_file_table_maker(void) -internalC++ _Tt_file_table_ptr::_Tt_file_table_ptr(void) -internalC++ _Tt_file_table_ptr::xdr(XDR*) -internalC++ _Tt_file_table_ptr::~_Tt_file_table_ptr(void) -internalC++ _Tt_file_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_file_xdr(XDR*,_Tt_object*) -internalC++ _Tt_global::_maxfds -internalC++ _Tt_global::find_host_byname(_Tt_string,_Tt_host_ptr&) -internalC++ _Tt_global::~_Tt_global(void) -internalC++ _Tt_host::_Tt_host(void) -internalC++ _Tt_host::addr_length(void) const -internalC++ _Tt_host::init_byaddr(_Tt_string) -internalC++ _Tt_host::init_byname(_Tt_string) -internalC++ _Tt_host::init_bystringaddr(_Tt_string) -internalC++ _Tt_host::init_from_hostent(hostent*) -internalC++ _Tt_host::xdr(XDR*) -internalC++ _Tt_host::~_Tt_host(void) -internalC++ _Tt_host_equiv::_Tt_host_equiv(void) -internalC++ _Tt_host_equiv::hostname_equiv(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_host_equiv::prefix_host(const _Tt_string&,const _Tt_string&) -internalC++ _Tt_host_equiv::~_Tt_host_equiv(void) -internalC++ _Tt_host_equiv_maker(void) -internalC++ _Tt_host_equiv_ptr::_Tt_host_equiv_ptr(void) -internalC++ _Tt_host_equiv_ptr::xdr(XDR*) -internalC++ _Tt_host_equiv_ptr::~_Tt_host_equiv_ptr(void) -internalC++ _Tt_host_equiv_xdr(XDR*,_Tt_object*) -internalC++ _Tt_host_list::_Tt_host_list(void) -internalC++ _Tt_host_list::xdr(XDR*) -internalC++ _Tt_host_list::~_Tt_host_list(void) -internalC++ _Tt_host_list_cursor::~_Tt_host_list_cursor(void) -internalC++ _Tt_host_list_maker(void) -internalC++ _Tt_host_list_ptr::_Tt_host_list_ptr(void) -internalC++ _Tt_host_list_ptr::xdr(XDR*) -internalC++ _Tt_host_list_ptr::~_Tt_host_list_ptr(void) -internalC++ _Tt_host_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_host_maker(void) -internalC++ _Tt_host_ptr::_Tt_host_ptr(void) -internalC++ _Tt_host_ptr::xdr(XDR*) -internalC++ _Tt_host_ptr::~_Tt_host_ptr(void) -internalC++ _Tt_host_table::xdr(XDR*) -internalC++ _Tt_host_table::~_Tt_host_table(void) -internalC++ _Tt_host_table_cursor::~_Tt_host_table_cursor(void) -internalC++ _Tt_host_table_maker(void) -internalC++ _Tt_host_table_ptr::_Tt_host_table_ptr(void) -internalC++ _Tt_host_table_ptr::xdr(XDR*) -internalC++ _Tt_host_table_ptr::~_Tt_host_table_ptr(void) -internalC++ _Tt_host_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_host_xdr(XDR*,_Tt_object*) -internalC++ _Tt_hostname_cache::_Tt_hostname_cache(_Tt_string&) -internalC++ _Tt_hostname_cache::_Tt_hostname_cache(void) -internalC++ _Tt_hostname_cache::h_keyfn(_Tt_object_ptr&) -internalC++ _Tt_hostname_cache::~_Tt_hostname_cache(void) -internalC++ _Tt_hostname_cache_list::_Tt_hostname_cache_list(void) -internalC++ _Tt_hostname_cache_list::xdr(XDR*) -internalC++ _Tt_hostname_cache_list::~_Tt_hostname_cache_list(void) -internalC++ _Tt_hostname_cache_list_cursor::~_Tt_hostname_cache_list_cursor(void) -internalC++ _Tt_hostname_cache_list_maker(void) -internalC++ _Tt_hostname_cache_list_ptr::_Tt_hostname_cache_list_ptr(void) -internalC++ _Tt_hostname_cache_list_ptr::xdr(XDR*) -internalC++ _Tt_hostname_cache_list_ptr::~_Tt_hostname_cache_list_ptr(void) -internalC++ _Tt_hostname_cache_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_hostname_cache_maker(void) -internalC++ _Tt_hostname_cache_ptr::_Tt_hostname_cache_ptr(void) -internalC++ _Tt_hostname_cache_ptr::xdr(XDR*) -internalC++ _Tt_hostname_cache_ptr::~_Tt_hostname_cache_ptr(void) -internalC++ _Tt_hostname_cache_table::xdr(XDR*) -internalC++ _Tt_hostname_cache_table::~_Tt_hostname_cache_table(void) -internalC++ _Tt_hostname_cache_table_cursor::~_Tt_hostname_cache_table_cursor(void) -internalC++ _Tt_hostname_cache_table_maker(void) -internalC++ _Tt_hostname_cache_table_ptr::_Tt_hostname_cache_table_ptr(void) -internalC++ _Tt_hostname_cache_table_ptr::xdr(XDR*) -internalC++ _Tt_hostname_cache_table_ptr::~_Tt_hostname_cache_table_ptr(void) -internalC++ _Tt_hostname_cache_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_hostname_cache_xdr(XDR*,_Tt_object*) -internalC++ _Tt_int_rec::_Tt_int_rec(void) -internalC++ _Tt_int_rec::print(const _Tt_ostream&) const -internalC++ _Tt_int_rec::xdr(XDR*) -internalC++ _Tt_int_rec::~_Tt_int_rec(void) -internalC++ _Tt_int_rec_list::xdr(XDR*) -internalC++ _Tt_int_rec_list::~_Tt_int_rec_list(void) -internalC++ _Tt_int_rec_list_maker(void) -internalC++ _Tt_int_rec_list_ptr::xdr(XDR*) -internalC++ _Tt_int_rec_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_int_rec_maker(void) -internalC++ _Tt_int_rec_ptr::_Tt_int_rec_ptr(void) -internalC++ _Tt_int_rec_ptr::xdr(XDR*) -internalC++ _Tt_int_rec_xdr(XDR*,_Tt_object*) -internalC++ _Tt_map_entry::_Tt_map_entry(void) -internalC++ _Tt_map_entry::getAddress(_Tt_object_ptr&) -internalC++ _Tt_map_entry::~_Tt_map_entry(void) -internalC++ _Tt_map_entry_maker(void) -internalC++ _Tt_map_entry_ptr::_Tt_map_entry_ptr(void) -internalC++ _Tt_map_entry_ptr::xdr(XDR*) -internalC++ _Tt_map_entry_ptr::~_Tt_map_entry_ptr(void) -internalC++ _Tt_map_entry_table::xdr(XDR*) -internalC++ _Tt_map_entry_table::~_Tt_map_entry_table(void) -internalC++ _Tt_map_entry_table_cursor::~_Tt_map_entry_table_cursor(void) -internalC++ _Tt_map_entry_table_maker(void) -internalC++ _Tt_map_entry_table_ptr::_Tt_map_entry_table_ptr(void) -internalC++ _Tt_map_entry_table_ptr::xdr(XDR*) -internalC++ _Tt_map_entry_table_ptr::~_Tt_map_entry_table_ptr(void) -internalC++ _Tt_map_entry_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_map_entry_xdr(XDR*,_Tt_object*) -internalC++ _Tt_message::_set_id(int) -internalC++ _Tt_message::add_arg(_Tt_arg_ptr&) -internalC++ _Tt_message::add_context(_Tt_msg_context_ptr&) -internalC++ _Tt_message::api_id(void) const -internalC++ _Tt_message::context(int) const -internalC++ _Tt_message::contextsCount(void) const -internalC++ _Tt_message::gid(void) const -internalC++ _Tt_message::id(void) const -internalC++ _Tt_message::is_awaiting_reply(void) const -internalC++ _Tt_message::print(const _Tt_ostream&) const -internalC++ _Tt_message::set_awaiting_reply(int) -internalC++ _Tt_message::set_file(_Tt_string) -internalC++ _Tt_message::set_id(void) -internalC++ _Tt_message::set_message_class(tt_class) -internalC++ _Tt_message::set_object(_Tt_string) -internalC++ _Tt_message::set_observer_procid(const _Tt_procid_ptr&) -internalC++ _Tt_message::set_op(_Tt_string) -internalC++ _Tt_message::set_otype(_Tt_string) -internalC++ _Tt_message::set_paradigm(tt_address) -internalC++ _Tt_message::set_reliability(tt_disposition) -internalC++ _Tt_message::set_scope(tt_scope) -internalC++ _Tt_message::set_sender(_Tt_procid_ptr&) -internalC++ _Tt_message::set_sender_ptype(_Tt_string) -internalC++ _Tt_message::set_session(_Tt_session_ptr&) -internalC++ _Tt_message::set_status_string(_Tt_string) -internalC++ _Tt_message::set_super(void) -internalC++ _Tt_message::status_string(void) -internalC++ _Tt_message::uid(void) const -internalC++ _Tt_message_list::xdr(XDR*) -internalC++ _Tt_message_list_maker(void) -internalC++ _Tt_message_list_ptr::xdr(XDR*) -internalC++ _Tt_message_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_message_maker(void) -internalC++ _Tt_message_ptr::xdr(XDR*) -internalC++ _Tt_message_xdr(XDR*,_Tt_object*) -internalC++ _Tt_mp::check_if_sessions_alive(void) -internalC++ _Tt_mp::find_file(_Tt_string,_Tt_file_ptr&,int) -internalC++ _Tt_mp::find_session_by_fd(int,_Tt_session_ptr&) -internalC++ _Tt_mp::generate_message_id(void) -internalC++ _Tt_mp::generate_pattern_id(void) -internalC++ _Tt_mp::remove_file(_Tt_string) -internalC++ _Tt_mp::remove_session(_Tt_string) -internalC++ _Tt_mp::save_session_fd(int) -internalC++ _Tt_msg_context::print(const _Tt_ostream&) const -internalC++ _Tt_msg_context::print_(const _Tt_ostream&,const _Tt_object*) -internalC++ _Tt_msg_context::setValue(const _Tt_string&) -internalC++ _Tt_msg_context::setValue(int) -internalC++ _Tt_msg_context::xdr(XDR*) -internalC++ _Tt_msg_context_list::_Tt_msg_context_list(void) -internalC++ _Tt_msg_context_list::append_ordered(const _Tt_msg_context_ptr&) -internalC++ _Tt_msg_context_list::xdr(XDR*) -internalC++ _Tt_msg_context_list::~_Tt_msg_context_list(void) -internalC++ _Tt_msg_context_list_maker(void) -internalC++ _Tt_msg_context_list_ptr::_Tt_msg_context_list_ptr(void) -internalC++ _Tt_msg_context_list_ptr::xdr(XDR*) -internalC++ _Tt_msg_context_list_ptr::~_Tt_msg_context_list_ptr(void) -internalC++ _Tt_msg_context_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_msg_context_maker(void) -internalC++ _Tt_msg_context_ptr::xdr(XDR*) -internalC++ _Tt_msg_context_xdr(XDR*,_Tt_object*) -internalC++ _Tt_object::null_ptr(void) -internalC++ _Tt_object::verify_refcount(int) -internalC++ _Tt_object_list::dequeue(void) -internalC++ _Tt_object_list::verify(int (*)(const _Tt_object*)) -internalC++ _Tt_object_list_cursor::insert(const _Tt_object_ptr&) -internalC++ _Tt_object_list_cursor::operator->(void) const -internalC++ _Tt_object_list_element::_Tt_object_list_element(void) -internalC++ _Tt_object_list_element::~_Tt_object_list_element(void) -internalC++ _Tt_object_list_maker(void) -internalC++ _Tt_object_list_ptr::xdr(XDR*) -internalC++ _Tt_object_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_object_maker(void) -internalC++ _Tt_object_ptr::xdr(XDR*) -internalC++ _Tt_object_table::flush(void) -internalC++ _Tt_object_table_cursor::is_valid(void) const -internalC++ _Tt_object_table_cursor::operator->(void) -internalC++ _Tt_object_table_cursor::prev(void) -internalC++ _Tt_object_table_cursor::reset(void) -internalC++ _Tt_object_table_maker(void) -internalC++ _Tt_object_table_ptr::xdr(XDR*) -internalC++ _Tt_object_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_object_xdr(XDR*,_Tt_object*) -internalC++ _Tt_objid_spec::_Tt_objid_spec(_Tt_string) -internalC++ _Tt_objid_spec::_Tt_objid_spec(void) -internalC++ _Tt_objid_spec::getOnDiskFlag(void) -internalC++ _Tt_objid_spec::setOnDiskFlag(int) -internalC++ _Tt_objid_spec::~_Tt_objid_spec(void) -internalC++ _Tt_objid_spec_maker(void) -internalC++ _Tt_objid_spec_ptr::_Tt_objid_spec_ptr(void) -internalC++ _Tt_objid_spec_ptr::xdr(XDR*) -internalC++ _Tt_objid_spec_ptr::~_Tt_objid_spec_ptr(void) -internalC++ _Tt_objid_spec_table::xdr(XDR*) -internalC++ _Tt_objid_spec_table::~_Tt_objid_spec_table(void) -internalC++ _Tt_objid_spec_table_cursor::~_Tt_objid_spec_table_cursor(void) -internalC++ _Tt_objid_spec_table_maker(void) -internalC++ _Tt_objid_spec_table_ptr::_Tt_objid_spec_table_ptr(void) -internalC++ _Tt_objid_spec_table_ptr::xdr(XDR*) -internalC++ _Tt_objid_spec_table_ptr::~_Tt_objid_spec_table_ptr(void) -internalC++ _Tt_objid_spec_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_objid_spec_xdr(XDR*,_Tt_object*) -internalC++ _Tt_old_db::_Tt_old_db(const _Tt_string&,const _Tt_db_client_ptr&) -internalC++ _Tt_old_db::_Tt_old_db(void) -internalC++ _Tt_old_db::addFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,int,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::addObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,int,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::addProperty(const _Tt_string&,const _Tt_db_property_ptr&,int) -internalC++ _Tt_old_db::addPropertyValue(const _Tt_string&,const _Tt_string&,const _Tt_string&) -internalC++ _Tt_old_db::connectToDB(const _Tt_string&,const _Tt_db_client_ptr&) -internalC++ _Tt_old_db::createFile(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::createObject(const _Tt_string&,const _Tt_string&,const _Tt_db_access_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteFileObjects(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteFileProperties(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteObjectProperties(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::deleteProperties(const _Tt_string&,int) -internalC++ _Tt_old_db::deleteProperty(const _Tt_string&,const _Tt_db_property_ptr&) -internalC++ _Tt_old_db::getAccess(const _Tt_string&,_Tt_db_access_ptr&) -internalC++ _Tt_old_db::getFile(const _Tt_string&,_Tt_string&) -internalC++ _Tt_old_db::getFileAccess(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_access_ptr&) -internalC++ _Tt_old_db::getFileChildren(const _Tt_string&,_Tt_string_list_ptr&) -internalC++ _Tt_old_db::getFileKey(const _Tt_string&,_Tt_string&) -internalC++ _Tt_old_db::getFileObjects(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_string_list_ptr&) -internalC++ _Tt_old_db::getFileProperties(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_property_list_ptr&) -internalC++ _Tt_old_db::getFileProperty(const _Tt_string&,const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_property_ptr&) -internalC++ _Tt_old_db::getObjectAccess(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_access_ptr&) -internalC++ _Tt_old_db::getObjectFile(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_string&) -internalC++ _Tt_old_db::getObjectKey(const _Tt_string&) -internalC++ _Tt_old_db::getObjectProperties(const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_property_list_ptr&) -internalC++ _Tt_old_db::getObjectProperty(const _Tt_string&,const _Tt_string&,const _Tt_db_access_ptr&,_Tt_db_property_ptr&) -internalC++ _Tt_old_db::getProperties(const _Tt_string&,_Tt_db_property_list_ptr&) -internalC++ _Tt_old_db::getProperty(const _Tt_string&,const _Tt_string&,_Tt_db_property_ptr&) -internalC++ _Tt_old_db::removeFile(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::removeObject(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setAccess(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setFileAccess(const _Tt_string&,const _Tt_db_access_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setFileFile(const _Tt_string&,const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setFileProperties(const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setFileProperty(const _Tt_string&,const _Tt_db_property_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setObjectAccess(const _Tt_string&,const _Tt_db_access_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setObjectFile(const _Tt_string&,const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setObjectProperties(const _Tt_string&,const _Tt_db_property_list_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setObjectProperty(const _Tt_string&,const _Tt_db_property_ptr&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::setProperties(const _Tt_string&,const _Tt_db_property_list_ptr&) -internalC++ _Tt_old_db::setProperty(const _Tt_string&,const _Tt_db_property_ptr&) -internalC++ _Tt_old_db::verifyAccess(const _Tt_string&,const _Tt_db_access_ptr&,int,int) -internalC++ _Tt_old_db::verifyObjectAccess(const _Tt_string&,const _Tt_db_access_ptr&,int,int) -internalC++ _Tt_old_db::verifyUserOnlyObjectAccess(const _Tt_string&,const _Tt_db_access_ptr&) -internalC++ _Tt_old_db::~_Tt_old_db(void) -internalC++ _Tt_old_db_list::_Tt_old_db_list(void) -internalC++ _Tt_old_db_list::xdr(XDR*) -internalC++ _Tt_old_db_list::~_Tt_old_db_list(void) -internalC++ _Tt_old_db_list_cursor::~_Tt_old_db_list_cursor(void) -internalC++ _Tt_old_db_list_maker(void) -internalC++ _Tt_old_db_list_ptr::_Tt_old_db_list_ptr(void) -internalC++ _Tt_old_db_list_ptr::xdr(XDR*) -internalC++ _Tt_old_db_list_ptr::~_Tt_old_db_list_ptr(void) -internalC++ _Tt_old_db_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_old_db_maker(void) -internalC++ _Tt_old_db_message_info::_Tt_old_db_message_info(void) -internalC++ _Tt_old_db_message_info::xdr(XDR*) -internalC++ _Tt_old_db_message_info::~_Tt_old_db_message_info(void) -internalC++ _Tt_old_db_message_info_maker(void) -internalC++ _Tt_old_db_message_info_ptr::_Tt_old_db_message_info_ptr(void) -internalC++ _Tt_old_db_message_info_ptr::xdr(XDR*) -internalC++ _Tt_old_db_message_info_ptr::~_Tt_old_db_message_info_ptr(void) -internalC++ _Tt_old_db_message_info_xdr(XDR*,_Tt_object*) -internalC++ _Tt_old_db_partition_map_ref::_Tt_old_db_partition_map_ref(void) -internalC++ _Tt_old_db_partition_map_ref::addDB(_Tt_old_db_ptr&) -internalC++ _Tt_old_db_partition_map_ref::dbPartitionMap -internalC++ _Tt_old_db_partition_map_ref::dbPartitionMapKey(_Tt_object_ptr&) -internalC++ _Tt_old_db_partition_map_ref::flush(void) -internalC++ _Tt_old_db_partition_map_ref::getDB(const _Tt_string&,const _Tt_db_client_ptr&) -internalC++ _Tt_old_db_partition_map_ref::removeDB(const _Tt_string&) -internalC++ _Tt_old_db_partition_map_ref::~_Tt_old_db_partition_map_ref(void) -internalC++ _Tt_old_db_ptr::_Tt_old_db_ptr(void) -internalC++ _Tt_old_db_ptr::xdr(XDR*) -internalC++ _Tt_old_db_ptr::~_Tt_old_db_ptr(void) -internalC++ _Tt_old_db_table::xdr(XDR*) -internalC++ _Tt_old_db_table::~_Tt_old_db_table(void) -internalC++ _Tt_old_db_table_cursor::~_Tt_old_db_table_cursor(void) -internalC++ _Tt_old_db_table_maker(void) -internalC++ _Tt_old_db_table_ptr::_Tt_old_db_table_ptr(void) -internalC++ _Tt_old_db_table_ptr::xdr(XDR*) -internalC++ _Tt_old_db_table_ptr::~_Tt_old_db_table_ptr(void) -internalC++ _Tt_old_db_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_old_db_xdr(XDR*,_Tt_object*) -internalC++ _Tt_ostream::_Tt_ostream(_Tt_string&) -internalC++ _Tt_ostream::_Tt_ostream(void) -internalC++ _Tt_ostream::operator<<(const _Tt_message&) const -internalC++ _Tt_ostream::operator<<(const _Tt_pattern&) const -internalC++ _Tt_ostream::operator<<(long) const -internalC++ _Tt_ostream::operator<<(tt_callback_action) const -internalC++ _Tt_ostream::operator<<(tt_status) const -internalC++ _Tt_ostream::operator<<(unsigned long) const -internalC++ _Tt_ostream::operator<<(void*) const -internalC++ _Tt_ostream::operator=(FILE*) -internalC++ _Tt_ostream::operator=(_Tt_string&) -internalC++ _Tt_ostream::print(void (*)(const _Tt_ostream&,const _Tt_object*),const _Tt_object*) const -internalC++ _Tt_ostream::set_indent(const _Tt_string&) const -internalC++ _Tt_ostream::sprintf(unsigned int,const char* ...) const -internalC++ _Tt_pat_context::addValue(const _Tt_string&) -internalC++ _Tt_pat_context::addValue(int) -internalC++ _Tt_pat_context::print(const _Tt_ostream&) const -internalC++ _Tt_pat_context::print_(const _Tt_ostream&,const _Tt_object*) -internalC++ _Tt_pat_context::xdr(XDR*) -internalC++ _Tt_pat_context_list::_Tt_pat_context_list(void) -internalC++ _Tt_pat_context_list::xdr(XDR*) -internalC++ _Tt_pat_context_list::~_Tt_pat_context_list(void) -internalC++ _Tt_pat_context_list_maker(void) -internalC++ _Tt_pat_context_list_ptr::_Tt_pat_context_list_ptr(void) -internalC++ _Tt_pat_context_list_ptr::xdr(XDR*) -internalC++ _Tt_pat_context_list_ptr::~_Tt_pat_context_list_ptr(void) -internalC++ _Tt_pat_context_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_pat_context_maker(void) -internalC++ _Tt_pat_context_ptr::_Tt_pat_context_ptr(void) -internalC++ _Tt_pat_context_ptr::xdr(XDR*) -internalC++ _Tt_pat_context_xdr(XDR*,_Tt_object*) -internalC++ _Tt_patlist::_Tt_patlist(_Tt_string) -internalC++ _Tt_patlist::~_Tt_patlist(void) -internalC++ _Tt_patlist_list::_Tt_patlist_list(void) -internalC++ _Tt_patlist_list::xdr(XDR*) -internalC++ _Tt_patlist_list::~_Tt_patlist_list(void) -internalC++ _Tt_patlist_list_cursor::~_Tt_patlist_list_cursor(void) -internalC++ _Tt_patlist_list_maker(void) -internalC++ _Tt_patlist_list_ptr::_Tt_patlist_list_ptr(void) -internalC++ _Tt_patlist_list_ptr::xdr(XDR*) -internalC++ _Tt_patlist_list_ptr::~_Tt_patlist_list_ptr(void) -internalC++ _Tt_patlist_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_patlist_maker(void) -internalC++ _Tt_patlist_ptr::xdr(XDR*) -internalC++ _Tt_patlist_table::xdr(XDR*) -internalC++ _Tt_patlist_table::~_Tt_patlist_table(void) -internalC++ _Tt_patlist_table_cursor::~_Tt_patlist_table_cursor(void) -internalC++ _Tt_patlist_table_maker(void) -internalC++ _Tt_patlist_table_ptr::xdr(XDR*) -internalC++ _Tt_patlist_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_patlist_xdr(XDR*,_Tt_object*) -internalC++ _Tt_pattern::add_object(const _Tt_string&) -internalC++ _Tt_pattern::base_constructor(void) -internalC++ _Tt_pattern::context(const char*) const -internalC++ _Tt_pattern::context(int) const -internalC++ _Tt_pattern::contextsCount(void) const -internalC++ _Tt_pattern::print(const _Tt_ostream&) const -internalC++ _Tt_pattern_list::xdr(XDR*) -internalC++ _Tt_pattern_list::~_Tt_pattern_list(void) -internalC++ _Tt_pattern_list_maker(void) -internalC++ _Tt_pattern_list_ptr::xdr(XDR*) -internalC++ _Tt_pattern_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_pattern_maker(void) -internalC++ _Tt_pattern_ptr::xdr(XDR*) -internalC++ _Tt_pattern_xdr(XDR*,_Tt_object*) -internalC++ _Tt_pid_t_rec::_Tt_pid_t_rec(pid_t) -internalC++ _Tt_pid_t_rec::_Tt_pid_t_rec(void) -internalC++ _Tt_pid_t_rec::print(const _Tt_ostream&) const -internalC++ _Tt_pid_t_rec::xdr(XDR*) -internalC++ _Tt_pid_t_rec::~_Tt_pid_t_rec(void) -internalC++ _Tt_pid_t_rec_list::_Tt_pid_t_rec_list(void) -internalC++ _Tt_pid_t_rec_list::xdr(XDR*) -internalC++ _Tt_pid_t_rec_list::~_Tt_pid_t_rec_list(void) -internalC++ _Tt_pid_t_rec_list_cursor::~_Tt_pid_t_rec_list_cursor(void) -internalC++ _Tt_pid_t_rec_list_maker(void) -internalC++ _Tt_pid_t_rec_list_ptr::xdr(XDR*) -internalC++ _Tt_pid_t_rec_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_pid_t_rec_maker(void) -internalC++ _Tt_pid_t_rec_ptr::_Tt_pid_t_rec_ptr(void) -internalC++ _Tt_pid_t_rec_ptr::xdr(XDR*) -internalC++ _Tt_pid_t_rec_ptr::~_Tt_pid_t_rec_ptr(void) -internalC++ _Tt_pid_t_rec_xdr(XDR*,_Tt_object*) -internalC++ _Tt_procid::fd(void) -internalC++ _Tt_procid::is_equal(_Tt_string&) -internalC++ _Tt_procid::port(void) const -internalC++ _Tt_procid::print(const _Tt_ostream&) const -internalC++ _Tt_procid_list::xdr(XDR*) -internalC++ _Tt_procid_list_maker(void) -internalC++ _Tt_procid_list_ptr::xdr(XDR*) -internalC++ _Tt_procid_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_procid_maker(void) -internalC++ _Tt_procid_ptr::xdr(XDR*) -internalC++ _Tt_procid_table::xdr(XDR*) -internalC++ _Tt_procid_table::~_Tt_procid_table(void) -internalC++ _Tt_procid_table_cursor::~_Tt_procid_table_cursor(void) -internalC++ _Tt_procid_table_maker(void) -internalC++ _Tt_procid_table_ptr::_Tt_procid_table_ptr(void) -internalC++ _Tt_procid_table_ptr::xdr(XDR*) -internalC++ _Tt_procid_table_ptr::~_Tt_procid_table_ptr(void) -internalC++ _Tt_procid_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_procid_xdr(XDR*,_Tt_object*) -internalC++ _Tt_qmsg_info::xdr(XDR*) -internalC++ _Tt_qmsg_info::~_Tt_qmsg_info(void) -internalC++ _Tt_qmsg_info_maker(void) -internalC++ _Tt_qmsg_info_ptr::xdr(XDR*) -internalC++ _Tt_qmsg_info_xdr(XDR*,_Tt_object*) -internalC++ _Tt_rpc_client::_Tt_rpc_client(int) -internalC++ _Tt_rpc_client::call(int,xdrproc_t,char*,xdrproc_t,char*,int) -internalC++ _Tt_rpc_client::init(_Tt_host_ptr&,int,int,uid_t,_Tt_auth&) -internalC++ _Tt_rpc_client::socket(void) -internalC++ _Tt_rpc_client::~_Tt_rpc_client(void) -internalC++ _Tt_rpc_client_maker(void) -internalC++ _Tt_rpc_client_ptr::_Tt_rpc_client_ptr(void) -internalC++ _Tt_rpc_client_ptr::xdr(XDR*) -internalC++ _Tt_rpc_client_ptr::~_Tt_rpc_client_ptr(void) -internalC++ _Tt_rpc_client_xdr(XDR*,_Tt_object*) -internalC++ _Tt_session::Xid(_Tt_string) -internalC++ _Tt_session_list::_Tt_session_list(void) -internalC++ _Tt_session_list::xdr(XDR*) -internalC++ _Tt_session_list::~_Tt_session_list(void) -internalC++ _Tt_session_list_cursor::~_Tt_session_list_cursor(void) -internalC++ _Tt_session_list_maker(void) -internalC++ _Tt_session_list_ptr::_Tt_session_list_ptr(void) -internalC++ _Tt_session_list_ptr::xdr(XDR*) -internalC++ _Tt_session_list_ptr::~_Tt_session_list_ptr(void) -internalC++ _Tt_session_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_session_maker(void) -internalC++ _Tt_session_prop::_Tt_session_prop(_Tt_string,_Tt_string_list_ptr) -internalC++ _Tt_session_prop::_Tt_session_prop(void) -internalC++ _Tt_session_prop::~_Tt_session_prop(void) -internalC++ _Tt_session_prop_list::xdr(XDR*) -internalC++ _Tt_session_prop_list::~_Tt_session_prop_list(void) -internalC++ _Tt_session_prop_list_maker(void) -internalC++ _Tt_session_prop_list_ptr::_Tt_session_prop_list_ptr(void) -internalC++ _Tt_session_prop_list_ptr::xdr(XDR*) -internalC++ _Tt_session_prop_list_ptr::~_Tt_session_prop_list_ptr(void) -internalC++ _Tt_session_prop_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_session_prop_maker(void) -internalC++ _Tt_session_prop_ptr::_Tt_session_prop_ptr(void) -internalC++ _Tt_session_prop_ptr::xdr(XDR*) -internalC++ _Tt_session_prop_xdr(XDR*,_Tt_object*) -internalC++ _Tt_session_ptr::xdr(XDR*) -internalC++ _Tt_session_table::xdr(XDR*) -internalC++ _Tt_session_table::~_Tt_session_table(void) -internalC++ _Tt_session_table_cursor::~_Tt_session_table_cursor(void) -internalC++ _Tt_session_table_maker(void) -internalC++ _Tt_session_table_ptr::_Tt_session_table_ptr(void) -internalC++ _Tt_session_table_ptr::xdr(XDR*) -internalC++ _Tt_session_table_ptr::~_Tt_session_table_ptr(void) -internalC++ _Tt_session_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_session_xdr(XDR*,_Tt_object*) -internalC++ _Tt_stream_socket::_Tt_stream_socket(void) -internalC++ _Tt_stream_socket::accept(void) -internalC++ _Tt_stream_socket::port(void) -internalC++ _Tt_stream_socket::read_would_block(void) -internalC++ _Tt_stream_socket::recv(char*,int) -internalC++ _Tt_stream_socket::sock(void) -internalC++ _Tt_stream_socket::~_Tt_stream_socket(void) -internalC++ _Tt_stream_socket_maker(void) -internalC++ _Tt_stream_socket_ptr::_Tt_stream_socket_ptr(void) -internalC++ _Tt_stream_socket_ptr::xdr(XDR*) -internalC++ _Tt_stream_socket_ptr::~_Tt_stream_socket_ptr(void) -internalC++ _Tt_stream_socket_xdr(XDR*,_Tt_object*) -internalC++ _Tt_string::cat(char) const -internalC++ _Tt_string::cat(int) const -internalC++ _Tt_string::cat(long) const -internalC++ _Tt_string::cat(unsigned int) const -internalC++ _Tt_string::cat(unsigned long) const -internalC++ _Tt_string::hash(int) const -internalC++ _Tt_string::index(const char*) const -internalC++ _Tt_string::mid(int,int) const -internalC++ _Tt_string::print(void) const -internalC++ _Tt_string::quote_nulls(void) const -internalC++ _Tt_string::replace(const char*,const _Tt_string&) const -internalC++ _Tt_string::split(const char*,_Tt_string&) const -internalC++ _Tt_string::split(int,_Tt_string&) const -internalC++ _Tt_string::strchr(const char*) const -internalC++ _Tt_string::unquote_nulls(void) const -internalC++ _Tt_string_buf::_Tt_string_buf(const _Tt_string_buf&) -internalC++ _Tt_string_buf::set(const unsigned char*,int) -internalC++ _Tt_string_buf::xdr(XDR*) -internalC++ _Tt_string_buf::xdr_1(XDR*) -internalC++ _Tt_string_buf::xdr_2(XDR*) -internalC++ _Tt_string_buf::~_Tt_string_buf(void) -internalC++ _Tt_string_buf_list::_Tt_string_buf_list(void) -internalC++ _Tt_string_buf_list::xdr(XDR*) -internalC++ _Tt_string_buf_list::~_Tt_string_buf_list(void) -internalC++ _Tt_string_buf_list_cursor::~_Tt_string_buf_list_cursor(void) -internalC++ _Tt_string_buf_list_maker(void) -internalC++ _Tt_string_buf_list_ptr::_Tt_string_buf_list_ptr(void) -internalC++ _Tt_string_buf_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_string_buf_maker(void) -internalC++ _Tt_string_buf_ptr::xdr(XDR*) -internalC++ _Tt_string_buf_ptr::_Tt_string_buf_ptr(void) -internalC++ _Tt_string_buf_xdr(XDR*,_Tt_object*) -internalC++ _Tt_string_list::_Tt_string_list(const _Tt_string_buf_list&) -internalC++ _Tt_string_list::_Tt_string_list(const _Tt_string_list&) -internalC++ _Tt_string_map::_Tt_string_map(void) -internalC++ _Tt_string_map::~_Tt_string_map(void) -internalC++ _Tt_string_map_maker(void) -internalC++ _Tt_string_map_ptr::xdr(XDR*) -internalC++ _Tt_string_map_xdr(XDR*,_Tt_object*) -#ifdef OPT_XTHREADS -internalC++ _Tt_threadspecific::_Tt_threadspecific(const _Tt_c_session_ptr&,const _Tt_c_procid_ptr&) -internalC++ _Tt_threadspecific::free_procid(void) -internalC++ _Tt_threadspecific::thread_stgstack(void) -#endif -internalC++ _Tt_trace::_allowed2trace(void) -internalC++ _Tt_trace::_entry(void) -internalC++ _Tt_trace::_exit(int,const char* (*)(int),int) -internalC++ _Tt_trace::_pstream -internalC++ _Tt_trace::_toggled_off -internalC++ _Tt_trace::any_tracing(void) -internalC++ _Tt_trace::entry(_Tt_message&,_Tt_dispatch_reason) -internalC++ _Tt_trace::entry(_Tt_message&,const _Tt_procid&) -internalC++ _Tt_trace::entry(_Tt_message&,tt_state) -internalC++ _Tt_trace::entry(char*,_Tt_entry_pt,va_list) -internalC++ _Tt_trace::entry(tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*),_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _Tt_trace::exit(_Tt_message_handle*) -internalC++ _Tt_trace::exit(_Tt_pattern_handle*) -internalC++ _Tt_trace::exit(char*) -internalC++ _Tt_trace::exit(int) -internalC++ _Tt_trace::exit(tt_address) -internalC++ _Tt_trace::exit(tt_callback_action) -internalC++ _Tt_trace::exit(tt_category) -internalC++ _Tt_trace::exit(tt_class) -internalC++ _Tt_trace::exit(tt_disposition) -internalC++ _Tt_trace::exit(tt_mode) -internalC++ _Tt_trace::exit(tt_scope) -internalC++ _Tt_trace::exit(tt_state) -internalC++ _Tt_trace::exit(tt_status) -internalC++ _Tt_trace::exit(void) -internalC++ _Tt_trace::exit(void*) -internalC++ _Tt_trace::exitq(void) -internalC++ _Tt_trace::fini(void) -internalC++ _Tt_trace::init(int) -internalC++ _Tt_trace::operator<<(_Tt_message&) const -internalC++ _Tt_trace::operator<<(tt_status) const -internalC++ _Tt_trace::toggle(void) -internalC++ _Tt_trace_parser::_Tt_trace_parser(_Tt_trace_parser&) -internalC++ _Tt_trace_parser::_Tt_trace_parser(const char*) -internalC++ _Tt_trace_parser::_Tt_trace_parser(int) -internalC++ _Tt_trace_parser::_Tt_trace_parser(void) -internalC++ _Tt_trace_parser::_is_traced(const _Tt_message&) const -internalC++ _Tt_trace_parser::add_function(const _Tt_string&) -internalC++ _Tt_trace_parser::add_handler_ptype(const _Tt_string&) -internalC++ _Tt_trace_parser::add_op(const _Tt_string&) -internalC++ _Tt_trace_parser::add_sender_ptype(const _Tt_string&) -internalC++ _Tt_trace_parser::add_state(int) -internalC++ _Tt_trace_parser::any_tracing(void) -internalC++ _Tt_trace_parser::attributes_val(void) const -internalC++ _Tt_trace_parser::clear_functions(void) -internalC++ _Tt_trace_parser::clear_handler_ptypes(void) -internalC++ _Tt_trace_parser::clear_ops(void) -internalC++ _Tt_trace_parser::clear_sender_ptypes(void) -internalC++ _Tt_trace_parser::clear_states(void) -internalC++ _Tt_trace_parser::follow_val(void) -internalC++ _Tt_trace_parser::handler_ptypes_val(void) -internalC++ _Tt_trace_parser::ifunction_val(void) -internalC++ _Tt_trace_parser::is_traced(_Tt_entry_pt) const -internalC++ _Tt_trace_parser::is_traced(const _Tt_message&) const -internalC++ _Tt_trace_parser::is_traced(const _Tt_message&,_Tt_dispatch_stage) const -internalC++ _Tt_trace_parser::mode_val(void) -internalC++ _Tt_trace_parser::ops_val(void) -internalC++ _Tt_trace_parser::parse(void) -internalC++ _Tt_trace_parser::sender_ptypes_val(void) -internalC++ _Tt_trace_parser::set_attributes(int) -internalC++ _Tt_trace_parser::set_follow(int) -internalC++ _Tt_trace_parser::set_function(int) -internalC++ _Tt_trace_parser::set_sink(const _Tt_string&,int) -internalC++ _Tt_trace_parser::sfunction_val(void) -internalC++ _Tt_trace_parser::sink_val(void) -internalC++ _Tt_trace_parser::states_val(void) -internalC++ _Tt_trace_parser::tracer_init(void) -internalC++ _Tt_trace_parser::~_Tt_trace_parser(void) -internalC++ _Tt_trace_stream::_Tt_trace_stream(const char*) -internalC++ _Tt_trace_stream::_Tt_trace_stream(int) -internalC++ _Tt_trace_stream::_Tt_trace_stream(void) -internalC++ _Tt_trace_stream::decr_indent(void) const -internalC++ _Tt_trace_stream::incr_indent(void) const -internalC++ _Tt_trace_stream::init(void) -internalC++ _Tt_trace_stream::~_Tt_trace_stream(void) -internalC++ _Tt_typecb::_Tt_typecb(const _Tt_string&,int) -internalC++ _Tt_typecb::_Tt_typecb(void) -internalC++ _Tt_typecb::add_callback(tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _Tt_typecb::opnum(void) -internalC++ _Tt_typecb::run_callbacks(_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _Tt_typecb::get_typename(void) -internalC++ _Tt_typecb::~_Tt_typecb(void) -internalC++ _Tt_typecb_list::_Tt_typecb_list(void) -internalC++ _Tt_typecb_list::xdr(XDR*) -internalC++ _Tt_typecb_list::~_Tt_typecb_list(void) -internalC++ _Tt_typecb_list_cursor::~_Tt_typecb_list_cursor(void) -internalC++ _Tt_typecb_list_maker(void) -internalC++ _Tt_typecb_list_ptr::_Tt_typecb_list_ptr(void) -internalC++ _Tt_typecb_list_ptr::xdr(XDR*) -internalC++ _Tt_typecb_list_ptr::~_Tt_typecb_list_ptr(void) -internalC++ _Tt_typecb_list_xdr(XDR*,_Tt_object*) -internalC++ _Tt_typecb_maker(void) -internalC++ _Tt_typecb_ptr::_Tt_typecb_ptr(void) -internalC++ _Tt_typecb_ptr::xdr(XDR*) -internalC++ _Tt_typecb_ptr::~_Tt_typecb_ptr(void) -internalC++ _Tt_typecb_table::xdr(XDR*) -internalC++ _Tt_typecb_table::~_Tt_typecb_table(void) -internalC++ _Tt_typecb_table_cursor::~_Tt_typecb_table_cursor(void) -internalC++ _Tt_typecb_table_maker(void) -internalC++ _Tt_typecb_table_ptr::_Tt_typecb_table_ptr(void) -internalC++ _Tt_typecb_table_ptr::xdr(XDR*) -internalC++ _Tt_typecb_table_ptr::~_Tt_typecb_table_ptr(void) -internalC++ _Tt_typecb_table_xdr(XDR*,_Tt_object*) -internalC++ _Tt_typecb_xdr(XDR*,_Tt_object*) -internalC++ _Ttmedia_ptype_info::_Ttmedia_ptype_info(_Tt_message_handle* (*)(_Tt_message_handle*,void*,Tttk_op,tt_status,unsigned char*,int,char*,char*),void*) -internalC++ _TttkItem2Free::_TttkItem2Free(_Tt_message_handle*) -internalC++ _TttkItem2Free::_TttkItem2Free(_Tt_pattern_handle*) -internalC++ _TttkItem2Free::_TttkItem2Free(char*) -internalC++ _TttkItem2Free::_TttkItem2Free(void) -internalC++ _TttkItem2Free::operator=(_Tt_message_handle*) -internalC++ _TttkItem2Free::operator=(_Tt_pattern_handle*) -internalC++ _TttkItem2Free::operator=(char*) -internalC++ _TttkItem2Free::~_TttkItem2Free(void) -internalC++ _TttkList2Free::_TttkList2Free(unsigned int) -internalC++ _TttkList2Free::_destruct(void) -internalC++ _TttkList2Free::_item(int) -internalC++ _TttkList2Free::flush(void) -internalC++ _TttkList2Free::operator+=(_Tt_message_handle*) -internalC++ _TttkList2Free::operator+=(_Tt_pattern_handle*) -internalC++ _TttkList2Free::operator+=(char*) -internalC++ _TttkList2Free::~_TttkList2Free(void) -internalC++ _prepend_P_to_sessid(const char*,_Tt_string&) -internalC++ _ttDesktopMessageFinish(_Tt_message_handle*,_Tt_message_handle*,int) -internalC++ _ttDesktopPatternFinish(_Tt_pattern_handle*,_Tt_message_handle*,int) -internalC++ _ttDtCallbackAction(_Tt_message_handle*) -internalC++ _ttDtGetLocaleCB(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*) -internalC++ _ttDtMessageCB(_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _ttDtMessageGong(_Tt_message_handle*,tt_status,const char*,int,int) -internalC++ _ttDtOp(Tttk_op) -internalC++ _ttDtPError(const char*,const char*) -internalC++ _ttDtPMessageCreate(_Tt_message_handle*,tt_class,tt_scope,const char*,Tttk_op,_Tt_message_handle* (*)(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*),void*,void*) -internalC++ _ttDtPatternCreate(tt_category,tt_scope,int,const char*,Tttk_op,_Tt_message_handle* (*)(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*),void*,void*,int) -internalC++ _ttDtPrint(const char*,const char*) -internalC++ _ttDtPrintInt(const char*,const char*,int) -internalC++ _ttDtPrintStatus(const char*,const char*,tt_status) -internalC++ _ttMeOpnumCB(_Tt_message_handle*,_Tt_pattern_handle*) -internalC++ _ttTkNoteReplyStatus(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*) -internalC++ _tt_X_session(const char*) -internalC++ _tt_add_file_prop_1(_tt_add_file_prop_args*,CLIENT*) -internalC++ _tt_add_file_prop_1(_tt_add_file_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_add_obj_prop_1(_tt_add_obj_prop_args*,CLIENT*) -internalC++ _tt_add_obj_prop_1(_tt_add_obj_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_addsession_1(_Tt_session_args*,CLIENT*) -internalC++ _tt_api_handle_print(FILE*,const _Tt_object*) -internalC++ _tt_api_stg_stack_elm_print(FILE*,const _Tt_object*) -internalC++ _tt_api_userdata_print(FILE*,const _Tt_object*) -internalC++ _tt_arg_print(const _Tt_ostream&,const _Tt_object*) -internalC++ _tt_base64_decode(const char*) -internalC++ _tt_bcontext_join(const char*,const unsigned char*,int) -internalC++ _tt_bcontext_quit(const char*,const unsigned char*,int) -internalC++ _tt_close(void) -internalC++ _tt_context_join(const char*,const char*) -internalC++ _tt_context_quit(const char*,const char*) -internalC++ _tt_create_file_1(_tt_create_file_args*,CLIENT*) -internalC++ _tt_create_file_1(_tt_create_file_args*,const _Tt_db_client_ptr&) -internalC++ _tt_create_obj_1(_tt_create_obj_args*,CLIENT*) -internalC++ _tt_create_obj_1(_tt_create_obj_args*,const _Tt_db_client_ptr&) -internalC++ _tt_db_network_path(const _Tt_string&,_Tt_string&,_Tt_string&,_Tt_string&,_Tt_string&) -internalC++ _tt_db_objid_to_key(const _Tt_string&) -internalC++ _tt_default_file(void) -internalC++ _tt_default_file_set(const char*) -internalC++ _tt_default_procid(void) -internalC++ _tt_default_procid_set(const char*) -internalC++ _tt_default_ptype(void) -internalC++ _tt_default_ptype_set(const char*) -internalC++ _tt_default_session(void) -internalC++ _tt_default_session_set(const char*) -internalC++ _tt_delete_file_prop_1(_tt_del_file_prop_args*,CLIENT*) -internalC++ _tt_delete_file_prop_1(_tt_del_file_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_delete_obj_prop_1(_tt_del_obj_prop_args*,CLIENT*) -internalC++ _tt_delete_obj_prop_1(_tt_del_obj_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_delete_session_1(_tt_delete_session_args*,CLIENT*) -internalC++ _tt_delsession_1(_Tt_session_args*,CLIENT*) -internalC++ _tt_dequeue_messages_1(_tt_dequeue_msgs_args*,CLIENT*) -internalC++ _tt_dequeue_messages_1(_tt_dequeue_msgs_args*,const _Tt_db_client_ptr&) -internalC++ _tt_enumname(_Tt_entry_pt) -internalC++ _tt_enumname(tt_address) -internalC++ _tt_enumname(tt_callback_action) -internalC++ _tt_enumname(tt_disposition) -internalC++ _tt_enumname(tt_filter_action) -internalC++ _tt_enumname(tt_state) -internalC++ _tt_error_int(tt_status) -internalC++ _tt_error_pointer(tt_status) -internalC++ _tt_fd(void) -internalC++ _tt_file_copy(const char*,const char*) -internalC++ _tt_file_destroy(const char*) -internalC++ _tt_file_join(const char*) -internalC++ _tt_file_move(const char*,const char*) -internalC++ _tt_file_netfile_1(_tt_file_netfile_args*,CLIENT*) -internalC++ _tt_file_objects_query(const char*,tt_filter_action (*)(const char*,void*,void*),void*,void*) -internalC++ _tt_file_quit(const char*) -internalC++ _tt_free(char*) -internalC++ _tt_free_rpc_message(const _tt_message&) -internalC++ _tt_garbage_collect_1(void*,CLIENT*) -internalC++ _tt_get_all_sessions_1(_tt_get_all_sessions_args*,CLIENT*) -internalC++ _tt_get_api_error(_Tt_db_results,api_module) -internalC++ _tt_get_file_access_1(_tt_get_file_access_args*,CLIENT*) -internalC++ _tt_get_file_access_1(_tt_get_file_access_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_file_objs_1(_tt_get_file_objs_args*,CLIENT*) -internalC++ _tt_get_file_objs_1(_tt_get_file_objs_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_file_partition_1(char**,CLIENT*) -internalC++ _tt_get_file_partition_1(char**,const _Tt_db_client_ptr&) -internalC++ _tt_get_file_prop_1(_tt_get_file_prop_args*,CLIENT*) -internalC++ _tt_get_file_prop_1(_tt_get_file_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_file_props_1(_tt_get_file_props_args*,CLIENT*) -internalC++ _tt_get_file_props_1(_tt_get_file_props_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_first_set_env_var(int ...) -internalC++ _tt_get_min_auth_level_1(void*,CLIENT*) -internalC++ _tt_get_obj_access_1(_tt_get_obj_access_args*,CLIENT*) -internalC++ _tt_get_obj_access_1(_tt_get_obj_access_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_obj_file_1(_tt_get_obj_file_args*,CLIENT*) -internalC++ _tt_get_obj_file_1(_tt_get_obj_file_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_obj_prop_1(_tt_get_obj_prop_args*,CLIENT*) -internalC++ _tt_get_obj_prop_1(_tt_get_obj_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_obj_props_1(_tt_get_obj_props_args*,CLIENT*) -internalC++ _tt_get_obj_props_1(_tt_get_obj_props_args*,const _Tt_db_client_ptr&) -internalC++ _tt_get_obj_type_1(_tt_get_obj_type_args*,CLIENT*) -internalC++ _tt_get_rpc_message(const _tt_message&,_Tt_message_ptr&) -internalC++ _tt_get_rpc_messages(const _tt_message_list&,_Tt_message_list_ptr&) -internalC++ _tt_get_rpc_result(void) -internalC++ _tt_gethostid(void) -internalC++ _tt_getoidaccess_1(_Tt_oidaccess_args*,CLIENT*) -internalC++ _tt_gettype_1(_Tt_spec_props*,CLIENT*) -internalC++ _tt_host_addr(_Tt_object_ptr&) -internalC++ _tt_host_file_netfile(const char*,const char*) -internalC++ _tt_host_name(_Tt_object_ptr&) -internalC++ _tt_host_netfile_file(const char*,const char*) -internalC++ _tt_icontext_join(const char*,int) -internalC++ _tt_icontext_quit(const char*,int) -internalC++ _tt_initial_session(void) -internalC++ _tt_int_error(int) -internalC++ _tt_int_rec_print(const _Tt_ostream&,const _Tt_object*) -internalC++ _tt_internal_init(void) -internalC++ _tt_is_file_in_db_1(_tt_is_file_in_db_args*,CLIENT*) -internalC++ _tt_is_file_in_db_1(_tt_is_file_in_db_args*,const _Tt_db_client_ptr&) -internalC++ _tt_is_obj_in_db_1(_tt_is_obj_in_db_args*,CLIENT*) -internalC++ _tt_is_obj_in_db_1(_tt_is_obj_in_db_args*,const _Tt_db_client_ptr&) -internalC++ _tt_isaddindex_1(_Tt_isaddindex_args*,CLIENT*) -internalC++ _tt_isbuild_1(_Tt_isbuild_args*,CLIENT*) -internalC++ _tt_isclose_1(int*,CLIENT*) -internalC++ _tt_iscntl_1(_Tt_iscntl_args*,CLIENT*) -internalC++ _tt_isdelrec_1(_Tt_isdelrec_args*,CLIENT*) -internalC++ _tt_iserase_1(char**,CLIENT*) -internalC++ _tt_isopen_1(_Tt_isopen_args*,CLIENT*) -internalC++ _tt_isread_1(_Tt_isread_args*,CLIENT*) -internalC++ _tt_isrewrec_1(_Tt_isrewrec_args*,CLIENT*) -internalC++ _tt_isstart_1(_Tt_isstart_args*,CLIENT*) -internalC++ _tt_iswrite_1(_Tt_iswrite_args*,CLIENT*) -internalC++ _tt_load_xlib(void) -internalC++ _tt_load_xt(void) -internalC++ _tt_local_network_path(const _Tt_string&) -internalC++ _tt_log_error(int,int,char*,char*) -internalC++ _tt_malloc(size_t) -internalC++ _tt_mark(void) -internalC++ _tt_message_abstain(_Tt_message_handle*) -internalC++ _tt_message_abstainer(_Tt_message_handle*,int) -internalC++ _tt_message_abstainers_count(_Tt_message_handle*) -internalC++ _tt_message_accept(_Tt_message_handle*) -internalC++ _tt_message_accepter(_Tt_message_handle*,int) -internalC++ _tt_message_accepters_count(_Tt_message_handle*) -internalC++ _tt_message_address(_Tt_message_handle*) -internalC++ _tt_message_address_set(_Tt_message_handle*,tt_address) -internalC++ _tt_message_arg_add(_Tt_message_handle*,tt_mode,const char*,const char*) -internalC++ _tt_message_arg_bval(_Tt_message_handle*,int,unsigned char**,int*) -internalC++ _tt_message_arg_bval_set(_Tt_message_handle*,int,const unsigned char*,int) -internalC++ _tt_message_arg_ival(_Tt_message_handle*,int,int*) -internalC++ _tt_message_arg_ival_set(_Tt_message_handle*,int,int) -internalC++ _tt_message_arg_mode(_Tt_message_handle*,int) -internalC++ _tt_message_arg_type(_Tt_message_handle*,int) -internalC++ _tt_message_arg_val(_Tt_message_handle*,int) -internalC++ _tt_message_arg_val_set(_Tt_message_handle*,int,const char*) -internalC++ _tt_message_arg_xval(_Tt_message_handle*,int,xdrproc_t,void*) -internalC++ _tt_message_arg_xval_set(_Tt_message_handle*,int,xdrproc_t,void*) -internalC++ _tt_message_args_count(_Tt_message_handle*) -internalC++ _tt_message_barg_add(_Tt_message_handle*,tt_mode,const char*,const unsigned char*,int) -internalC++ _tt_message_bcontext_set(_Tt_message_handle*,const char*,const unsigned char*,int) -internalC++ _tt_message_callback_add(_Tt_message_handle*,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _tt_message_class(_Tt_message_handle*) -internalC++ _tt_message_class_set(_Tt_message_handle*,tt_class) -internalC++ _tt_message_context_bval(_Tt_message_handle*,const char*,unsigned char**,int*) -internalC++ _tt_message_context_ival(_Tt_message_handle*,const char*,int*) -internalC++ _tt_message_context_set(_Tt_message_handle*,const char*,const char*) -internalC++ _tt_message_context_slotname(_Tt_message_handle*,int) -internalC++ _tt_message_context_val(_Tt_message_handle*,const char*) -internalC++ _tt_message_context_xval(_Tt_message_handle*,const char*,xdrproc_t,void*) -internalC++ _tt_message_contexts_count(_Tt_message_handle*) -internalC++ _tt_message_create(void) -internalC++ _tt_message_create_super(_Tt_message_handle*) -internalC++ _tt_message_destroy(_Tt_message_handle*) -internalC++ _tt_message_disposition(_Tt_message_handle*) -internalC++ _tt_message_disposition_set(_Tt_message_handle*,tt_disposition) -internalC++ _tt_message_fail(_Tt_message_handle*) -internalC++ _tt_message_file(_Tt_message_handle*) -internalC++ _tt_message_file_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_gid(_Tt_message_handle*) -internalC++ _tt_message_handler(_Tt_message_handle*) -internalC++ _tt_message_handler_ptype(_Tt_message_handle*) -internalC++ _tt_message_handler_ptype_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_handler_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_iarg_add(_Tt_message_handle*,tt_mode,const char*,int) -internalC++ _tt_message_icontext_set(_Tt_message_handle*,const char*,int) -internalC++ _tt_message_id(_Tt_message_handle*) -internalC++ _tt_message_object(_Tt_message_handle*) -internalC++ _tt_message_object_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_op(_Tt_message_handle*) -internalC++ _tt_message_op_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_opnum(_Tt_message_handle*) -internalC++ _tt_message_otype(_Tt_message_handle*) -internalC++ _tt_message_otype_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_pattern(_Tt_message_handle*) -internalC++ _tt_message_print(_Tt_message_handle*) -internalC++ _tt_message_receive(void) -internalC++ _tt_message_reject(_Tt_message_handle*) -internalC++ _tt_message_rejecter(_Tt_message_handle*,int) -internalC++ _tt_message_rejecters_count(_Tt_message_handle*) -internalC++ _tt_message_reply(_Tt_message_handle*) -internalC++ _tt_message_scope(_Tt_message_handle*) -internalC++ _tt_message_scope_set(_Tt_message_handle*,tt_scope) -internalC++ _tt_message_send(_Tt_message_handle*) -internalC++ _tt_message_send_on_exit(_Tt_message_handle*) -internalC++ _tt_message_sender(_Tt_message_handle*) -internalC++ _tt_message_sender_ptype(_Tt_message_handle*) -internalC++ _tt_message_sender_ptype_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_session(_Tt_message_handle*) -internalC++ _tt_message_session_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_state(_Tt_message_handle*) -internalC++ _tt_message_status(_Tt_message_handle*) -internalC++ _tt_message_status_set(_Tt_message_handle*,int) -internalC++ _tt_message_status_string(_Tt_message_handle*) -internalC++ _tt_message_status_string_set(_Tt_message_handle*,const char*) -internalC++ _tt_message_uid(_Tt_message_handle*) -internalC++ _tt_message_user(_Tt_message_handle*,int) -internalC++ _tt_message_user_set(_Tt_message_handle*,int,void*) -internalC++ _tt_message_xarg_add(_Tt_message_handle*,tt_mode,const char*,xdrproc_t,void*) -internalC++ _tt_message_xcontext_set(_Tt_message_handle*,const char*,xdrproc_t,void*) -internalC++ _tt_mfs_1(char**,CLIENT*) -internalC++ _tt_min_auth_level_1(char**,CLIENT*,clnt_stat*) -internalC++ _tt_move_file_1(_tt_move_file_args*,CLIENT*) -internalC++ _tt_move_file_1(_tt_move_file_args*,const _Tt_db_client_ptr&) -internalC++ _tt_netfile_file_1(_tt_file_netfile_args*,CLIENT*) -internalC++ _tt_objid_equal(const char*,const char*) -internalC++ _tt_objid_objkey(const char*) -internalC++ _tt_onotice_create(const char*,const char*) -internalC++ _tt_open(void) -internalC++ _tt_orequest_create(const char*,const char*) -internalC++ _tt_otype_base(const char*) -internalC++ _tt_otype_derived(const char*,int) -internalC++ _tt_otype_deriveds_count(const char*) -internalC++ _tt_otype_hsig_arg_mode(const char*,int,int) -internalC++ _tt_otype_hsig_arg_type(const char*,int,int) -internalC++ _tt_otype_hsig_args_count(const char*,int) -internalC++ _tt_otype_hsig_count(const char*) -internalC++ _tt_otype_hsig_op(const char*,int) -internalC++ _tt_otype_is_derived(const char*,const char*) -internalC++ _tt_otype_opnum_callback_add(const char*,int,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _tt_otype_osig_arg_mode(const char*,int,int) -internalC++ _tt_otype_osig_arg_type(const char*,int,int) -internalC++ _tt_otype_osig_args_count(const char*,int) -internalC++ _tt_otype_osig_count(const char*) -internalC++ _tt_otype_osig_op(const char*,int) -internalC++ _tt_pattern_address_add(_Tt_pattern_handle*,tt_address) -internalC++ _tt_pattern_arg_add(_Tt_pattern_handle*,tt_mode,const char*,const char*) -internalC++ _tt_pattern_barg_add(_Tt_pattern_handle*,tt_mode,const char*,const unsigned char*,int) -internalC++ _tt_pattern_bcontext_add(_Tt_pattern_handle*,const char*,const unsigned char*,int) -internalC++ _tt_pattern_callback_add(_Tt_pattern_handle*,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _tt_pattern_category(_Tt_pattern_handle*) -internalC++ _tt_pattern_category_set(_Tt_pattern_handle*,tt_category) -internalC++ _tt_pattern_class_add(_Tt_pattern_handle*,tt_class) -internalC++ _tt_pattern_context_add(_Tt_pattern_handle*,const char*,const char*) -internalC++ _tt_pattern_create(void) -internalC++ _tt_pattern_destroy(_Tt_pattern_handle*) -internalC++ _tt_pattern_disposition_add(_Tt_pattern_handle*,tt_disposition) -internalC++ _tt_pattern_file_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_iarg_add(_Tt_pattern_handle*,tt_mode,const char*,int) -internalC++ _tt_pattern_icontext_add(_Tt_pattern_handle*,const char*,int) -internalC++ _tt_pattern_object_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_op_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_opnum_add(_Tt_pattern_handle*,int) -internalC++ _tt_pattern_otype_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_print(_Tt_pattern_handle*) -internalC++ _tt_pattern_register(_Tt_pattern_handle*) -internalC++ _tt_pattern_scope_add(_Tt_pattern_handle*,tt_scope) -internalC++ _tt_pattern_sender_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_sender_ptype_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_session_add(_Tt_pattern_handle*,const char*) -internalC++ _tt_pattern_state_add(_Tt_pattern_handle*,tt_state) -internalC++ _tt_pattern_unregister(_Tt_pattern_handle*) -internalC++ _tt_pattern_user(_Tt_pattern_handle*,int) -internalC++ _tt_pattern_user_set(_Tt_pattern_handle*,int,void*) -internalC++ _tt_pattern_xarg_add(_Tt_pattern_handle*,tt_mode,const char*,xdrproc_t,void*) -internalC++ _tt_pattern_xcontext_add(_Tt_pattern_handle*,const char*,xdrproc_t,void*) -internalC++ _tt_pnotice_create(tt_scope,const char*) -internalC++ _tt_prequest_create(tt_scope,const char*) -internalC++ _tt_print_escaped_string(const _Tt_ostream&,const char*,int,int,int) -internalC++ _tt_procid_session(const char*) -internalC++ _tt_ptype_declare(const char*) -internalC++ _tt_ptype_exists(const char*) -internalC++ _tt_ptype_opnum_callback_add(const char*,int,tt_callback_action (*)(_Tt_message_handle*,_Tt_pattern_handle*)) -internalC++ _tt_ptype_opnum_user(const char*,int) -internalC++ _tt_ptype_opnum_user_set(const char*,int,void*) -internalC++ _tt_ptype_undeclare(const char*) -internalC++ _tt_queue_message_1(_tt_queue_msg_args*,CLIENT*) -internalC++ _tt_queue_message_1(_tt_queue_msg_args*,const _Tt_db_client_ptr&) -internalC++ _tt_release(int) -internalC++ _tt_remove_file_1(_tt_remove_file_args*,CLIENT*) -internalC++ _tt_remove_file_1(_tt_remove_file_args*,const _Tt_db_client_ptr&) -internalC++ _tt_remove_obj_1(_tt_remove_obj_args*,CLIENT*) -internalC++ _tt_remove_obj_1(_tt_remove_obj_args*,const _Tt_db_client_ptr&) -internalC++ _tt_session_address(_Tt_object_ptr&) -internalC++ _tt_session_bprop(const char*,const char*,int,unsigned char**,int*) -internalC++ _tt_session_bprop_add(const char*,const char*,const unsigned char*,int) -internalC++ _tt_session_bprop_set(const char*,const char*,const unsigned char*,int) -internalC++ _tt_session_join(const char*) -internalC++ _tt_session_prop(const char*,const char*,int) -internalC++ _tt_session_prop_add(const char*,const char*,const char*) -internalC++ _tt_session_prop_count(const char*,const char*) -internalC++ _tt_session_prop_set(const char*,const char*,const char*) -internalC++ _tt_session_propname(const char*,int) -internalC++ _tt_session_propnames_count(const char*) -internalC++ _tt_session_quit(const char*) -internalC++ _tt_session_types_load(const char*) -internalC++ _tt_set_file_access_1(_tt_set_file_access_args*,CLIENT*) -internalC++ _tt_set_file_access_1(_tt_set_file_access_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_file_prop_1(_tt_set_file_prop_args*,CLIENT*) -internalC++ _tt_set_file_prop_1(_tt_set_file_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_file_props_1(_tt_set_file_props_args*,CLIENT*) -internalC++ _tt_set_file_props_1(_tt_set_file_props_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_obj_access_1(_tt_set_obj_access_args*,CLIENT*) -internalC++ _tt_set_obj_access_1(_tt_set_obj_access_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_obj_file_1(_tt_set_obj_file_args*,CLIENT*) -internalC++ _tt_set_obj_file_1(_tt_set_obj_file_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_obj_prop_1(_tt_set_obj_prop_args*,CLIENT*) -internalC++ _tt_set_obj_prop_1(_tt_set_obj_prop_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_obj_props_1(_tt_set_obj_props_args*,CLIENT*) -internalC++ _tt_set_obj_props_1(_tt_set_obj_props_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_obj_type_1(_tt_set_obj_type_args*,CLIENT*) -internalC++ _tt_set_obj_type_1(_tt_set_obj_type_args*,const _Tt_db_client_ptr&) -internalC++ _tt_set_rpc_message(const _Tt_message_ptr&,_tt_message&) -internalC++ _tt_setoidgroup_1(_Tt_oidaccess_args*,CLIENT*) -internalC++ _tt_setoidmode_1(_Tt_oidaccess_args*,CLIENT*) -internalC++ _tt_setoiduser_1(_Tt_oidaccess_args*,CLIENT*) -internalC++ _tt_spec_bprop(const char*,const char*,int,unsigned char**,int*) -internalC++ _tt_spec_bprop_add(const char*,const char*,const unsigned char*,int) -internalC++ _tt_spec_bprop_set(const char*,const char*,const unsigned char*,int) -internalC++ _tt_spec_create(const char*) -internalC++ _tt_spec_destroy(const char*) -internalC++ _tt_spec_file(const char*) -internalC++ _tt_spec_move(const char*,const char*) -internalC++ _tt_spec_prop(const char*,const char*,int) -internalC++ _tt_spec_prop_add(const char*,const char*,const char*) -internalC++ _tt_spec_prop_count(const char*,const char*) -internalC++ _tt_spec_prop_set(const char*,const char*,const char*) -internalC++ _tt_spec_propname(const char*,int) -internalC++ _tt_spec_propnames_count(const char*) -internalC++ _tt_spec_type(const char*) -internalC++ _tt_spec_type_set(const char*,const char*) -internalC++ _tt_spec_write(const char*) -internalC++ _tt_status_message(tt_status) -internalC++ _tt_strdup(const char*) -internalC++ _tt_strdup(const char*,int) -internalC++ _tt_take(char*) -internalC++ _tt_test_and_set_1(_Tt_test_and_set_args*,CLIENT*) -internalC++ _tt_trace_parse(_Tt_string&,_Tt_trace_parser*) -internalC++ _tt_transaction_1(_Tt_transaction_args*,CLIENT*) -internalC++ _tt_typecb_key(_Tt_object_ptr&) -internalC++ _tt_typecb_key(const _Tt_string&,int) -internalC++ _tt_valid_otype(const char*) -internalC++ _tt_vsyslog(FILE*,int,const char*,va_list) -internalC++ _tt_xcontext_join(const char*,xdrproc_t,void*) -internalC++ _tt_xcontext_quit(const char*,xdrproc_t,void*) -internalC++ _tt_xdr_cstring_list(XDR*,char***) -internalC++ _tt_xdr_decode(xdrproc_t,void*,_Tt_string) -internalC++ _tt_xdr_encode(xdrproc_t,void*,_Tt_string&) -internalC++ _tt_xdr_sizeof(xdrproc_t,void*) -internalC++ _tt_xdr_string_list(XDR*,_Tt_string_list_ptr*) -internalC++ _ttdt_contract_cb(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*) -internalC++ _ttdt_do_GSet_Geometry(_Tt_message_handle*,void*,_Tt_message_handle*,int*,int*,int*,int*) -internalC++ _ttdt_do_Get_XInfo(_Tt_message_handle*,void*,_Tt_message_handle*,char**,int*,int*) -internalC++ _ttdt_do_RaiseLower(_Tt_message_handle*,void*,_Tt_message_handle*) -internalC++ _ttdt_do_Set_XInfo(_Tt_message_handle*,void*,_Tt_message_handle*,char*,int,int) -internalC++ _ttdt_do_wm_state(_Tt_message_handle*,void*,_Tt_message_handle*,int*) -internalC++ _ttdt_file_request(Tttk_op,_Tt_message_handle*,const char*,tt_scope,_XtAppStruct*,int) -internalC++ _ttdt_pat(Tttk_op,_Tt_message_handle* (*)(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*),tt_category,_Tt_message_handle*,void*,void*,int) -internalC++ _ttdt_posix_cb(_Tt_message_handle*,_Tt_pattern_handle*,void*,void*) -internalC++ _ttdt_realized_widget(void*,int) -internalC++ _tttk_block_app_while(_XtAppStruct*,const int*,int) -internalC++ _tttk_block_procid_while(const int*,int) -internalC++ _tttk_message_am_handling(_Tt_message_handle*) -internalC++ _tttk_message_arg_is_set(_Tt_message_handle*,unsigned int) -internalC++ _tttk_message_arg_ival(_Tt_message_handle*,unsigned int,int) -internalC++ _tttk_message_arg_val(_Tt_message_handle*,unsigned int,const char*) -internalC++ _tttk_message_id(_Tt_message_handle*,int) -internalC++ _tttk_message_in_final_state(_Tt_message_handle*) -internalC++ _tttk_message_receive(const char*) -internalC++ _tttk_message_reply(_Tt_message_handle*) -internalC++ _tttk_pattern_contract(_Tt_pattern_handle*) -internalC++ _tttk_patterns_destroy(_Tt_pattern_handle**) -internalC++ _tttk_timed_out(void*,unsigned long) -internalC++ operator<<(_Tt_trace_stream&,_Tt_message&) -internalC++ ttMediaLoadPatCB(_Tt_message_handle*,_Tt_pattern_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,Tttk_op,tt_status,unsigned char*,int,char*,char*),void*,Tttk_op,int,int) -internalC++ tt_ldpath(_Tt_string,_Tt_string&) -internalC++ tt_xdr_add_pattern_args(XDR*,_Tt_add_pattern_args*) -internalC++ tt_xdr_arg(XDR*,_Tt_arg_ptr*) -internalC++ tt_xdr_arg_list(XDR*,_Tt_arg_list_ptr*) -internalC++ tt_xdr_bstring(XDR*,char**) -internalC++ tt_xdr_del_pattern_args(XDR*,_Tt_del_pattern_args*) -internalC++ tt_xdr_message_list(XDR*,_Tt_message_list_ptr*) -internalC++ tt_xdr_pattern(XDR*,_Tt_pattern_ptr*) -internalC++ ttdt_Get_Geometry(const char*,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int,int,int,int),void*,int) -internalC++ ttdt_Get_Geometry_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int*,int*,int*,int*),void*,int) -internalC++ ttdt_Get_Iconified(const char*,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int),void*,int) -internalC++ ttdt_Get_Iconified_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int*),void*,int) -internalC++ ttdt_Get_Locale(const char*,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,const char**,const char**),void*,const char**,int) -internalC++ ttdt_Get_Situation(const char*,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,char*),void*,int) -internalC++ ttdt_Get_XInfo(const char*,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,char*,int,int),void*,int) -internalC++ ttdt_Get_XInfo_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,char**,int*,int*),void*,int) -internalC++ ttdt_Set_Geometry(const char*,_Tt_message_handle*,tt_class,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int,int,int,int),void*,int,int,int,int,int) -internalC++ ttdt_Set_Geometry_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int*,int*,int*,int*),void*,int) -internalC++ ttdt_Set_Iconified(const char*,_Tt_message_handle*,tt_class,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int),void*,int,int) -internalC++ ttdt_Set_Iconified_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,int*),void*,int) -internalC++ ttdt_Set_XInfo(const char*,_Tt_message_handle*,tt_class,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,char*,int,int),void*,const char*,int,int,int) -internalC++ ttdt_Set_XInfo_pat(tt_category,_Tt_message_handle*,_Tt_message_handle* (*)(_Tt_message_handle*,void*,_Tt_message_handle*,char*,int,int),void*,int) -internalC++ ttdt_Started(_Tt_message_handle*,const char*,const char*,const char*,int) -internalC++ ttdt_Status(_Tt_message_handle*,_Tt_message_handle*,const char*,const char*,const char*,const char*,int) -internalC++ ttdt_Stopped(_Tt_message_handle*,const char*,const char*,const char*,int) -internalC++ xdr_Tt_prop(XDR*,_Tt_prop*) -internalC++ xdr_Tt_trans_record(XDR*,_Tt_trans_record*) -internalC++ xdr_Tt_trans_record_list(XDR*,_Tt_trans_record**) -internalC++ xdr_keydesc(XDR*,keydesc*) -internalC++ xdr_keypart(XDR*,keypart*) -internalC++ xdr_tt_access(XDR*,_tt_access*) -internalC++ xdr_tt_get_obj_type_args(XDR*,_tt_get_obj_type_args*) -internalC++ xdr_tt_message(XDR*,_tt_message*) -internalC++ xdr_tt_property(XDR*,_tt_property*) -internalC++ xdr_tt_property_value(XDR*,_tt_property_value*) -internalC++ xdr_tt_string(XDR*,_tt_string*) - -/* - * Public symbols added for ICE style authorization - */ -internalC++ _tt_AuthFileName(void) -internalC++ _tt_FreeAuthFileEntry(_tt_AuthFileEntry*) -internalC++ _tt_GenerateMagicCookie(int) -internalC++ _tt_GetAuthFileEntry(char*,char*,char*) -internalC++ _tt_LockAuthFile(char*,int,int,long) -internalC++ _tt_ReadAuthFileEntry(FILE*) -internalC++ _tt_UnlockAuthFile(char*) -internalC++ _tt_WriteAuthFileEntry(FILE*,_tt_AuthFileEntry*) - -#ifdef _AIX -/* Including defines these symbols everywhere on AIX machines. */ -internal __page_size -internal __page_sizeM1 -internal __page_sizeX16 -internal __page_sizeX24 -internal __page_size_K -internal _mutex_global_np -#endif - -#if defined(_AIX) -/* Symbols from realpath.c */ -internal _tt_internal_realpath -#endif - -#if defined(sun) -/* C++ symbols from the Sun compiler */ -internal _pure_error_ -internalC++ operator delete(void*) -internalC++ set_terminate(void(*)(void)) -internalC++ set_unexpected(void(*)(void)) -internalC++ terminate(void) -internalC++ unexpected(void) -internalC++ xstack::get_prev(void) -#endif diff --git a/cde/lib/tt/lib/mp/mp_desktop.C b/cde/lib/tt/lib/mp/mp_desktop.C index ae83f90b9..8e1529a15 100644 --- a/cde/lib/tt/lib/mp/mp_desktop.C +++ b/cde/lib/tt/lib/mp/mp_desktop.C @@ -257,9 +257,7 @@ process_event() } set_error_handler(_Tt_desktop::io_error_proc); - if (0 == sigsetjmp(io_exception, 1)) { - CALLX11(XFlush)(priv->xd); - } else { + if (0 != sigsetjmp(io_exception, 1)) { priv->xd = (Display *)0; ret_val = 0; } diff --git a/cde/lib/tt/lib/mp/mp_session.C b/cde/lib/tt/lib/mp/mp_session.C index 32ef0da85..2f2ebcba7 100644 --- a/cde/lib/tt/lib/mp/mp_session.C +++ b/cde/lib/tt/lib/mp/mp_session.C @@ -149,7 +149,7 @@ c_open_unix_socket(char *socket_name) memset(&server_addr, 0, sizeof(server_addr)); server_addr.sun_family = AF_UNIX; strcpy(server_addr.sun_path, socket_name); -#if defined(_AIX) || defined(hpux) +#if defined(_AIX) int servlen = strlen(server_addr.sun_path) + sizeof(server_addr.sun_fam\ ily); if (connect(sock, (sockaddr *)&server_addr, servlen) < 0) { diff --git a/cde/lib/tt/lib/mp/mp_stream_socket.C b/cde/lib/tt/lib/mp/mp_stream_socket.C index fbc3f5122..5009a99ef 100644 --- a/cde/lib/tt/lib/mp/mp_stream_socket.C +++ b/cde/lib/tt/lib/mp/mp_stream_socket.C @@ -209,12 +209,7 @@ init(int init_as_source) return(0); } len = sizeof(sockaddr_in); -#if defined(_AIX) && (OSMAJORVERSION==4) && (OSMINORVERSION==2) - if (getsockname(_sock, (sockaddr *)&_hostaddr, (size_t *)&len) - < 0) { -#else if (getsockname(_sock, (sockaddr *)&_hostaddr, &len) < 0) { -#endif return(0); } return(listen(_sock,5) == 0); @@ -440,13 +435,9 @@ accept() #endif sockaddr_in saddr; -#if defined(_AIX) && (OSMAJORVERSION==4) && (OSMINORVERSION==2) - _msgsock = ::accept(_sock, (struct sockaddr *)&saddr, - (size_t *)&addrlen); -#else _msgsock = ::accept(_sock, (struct sockaddr *)&saddr, &addrlen); -#endif + if (_msgsock < 0) { _tt_syslog( 0, LOG_ERR, "_Tt_stream_socket::accept(): " "accept(): %m" ); diff --git a/cde/lib/tt/lib/realpath.c b/cde/lib/tt/lib/realpath.c deleted file mode 100644 index f1801df31..000000000 --- a/cde/lib/tt/lib/realpath.c +++ /dev/null @@ -1,160 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/*%% (c) Copyright 1993, 1994 Hewlett-Packard Company */ -/*%% (c) Copyright 1993, 1994 International Business Machines Corp. */ -/*%% (c) Copyright 1993, 1994 Sun Microsystems, Inc. */ -/*%% (c) Copyright 1993, 1994 Novell, Inc. */ -/*%% $XConsortium: realpath.c /main/3 1995/10/23 09:49:50 rswiston $ */ - -#include -#include -#include -#include -#include -#include - -/* This is used when the operating system does not provide us with - * a realpath implementation. It's named differently so there is - * no name clash between it and the system version of realpath. - */ - -char * -_tt_internal_realpath(pathname, finalpath) -char *pathname; -char *finalpath; -{ - struct stat sbuf; - char curpath[MAXPATHLEN], - workpath[MAXPATHLEN], - linkpath[MAXPATHLEN], - namebuf[MAXPATHLEN], - *where, - *ptr, - *last; - int len; - int nlink = 0; /* To keep track of loops in the path. */ - - strcpy(curpath, pathname); - - if (*pathname != '/') { -#if defined(__STDC__) && defined(hpux) - if (!getcwd(workpath)) { -#else - if (!getwd(workpath)) { -#endif - strcpy(finalpath, "."); - return(NULL); - } - } else *workpath = NULL; - - /* curpath is the path we're still resolving */ - /* linkpath is the path a symbolic link points to */ - /* workpath is the path we've resolved */ - - loop: - where = curpath; - while (*where != NULL) { - if (!strcmp(where, ".")) { - where++; - continue; - } - - /* deal with "./" */ - if (!strncmp(where, "./", 2)) { - where += 2; - continue; - } - - /* deal with "../" */ - if (!strncmp(where, "../", 3)) { - where += 3; - ptr = last = workpath; - while (*ptr) { - if (*ptr == '/') last = ptr; - ptr++; - } - *last = NULL; - continue; - } - - ptr = strchr(where, '/'); - if (!ptr) - ptr = where + strlen(where) - 1; - else - *ptr = NULL; - - strcpy(namebuf, workpath); - - for (last = namebuf; *last; last++) continue; - - /* tack on a trailing, or leading, `/` */ - if (last == namebuf || *--last != '/') { - strcat(namebuf, "/"); - } - - strcat(namebuf, where); - - where = ++ptr; - if (lstat(namebuf, &sbuf) == -1) { - strcpy(finalpath, namebuf); - return(NULL); - } - - if ((sbuf.st_mode & S_IFLNK) == S_IFLNK) { - /* Look for loop in path such as link to self. */ - nlink++; - if (nlink > MAXSYMLINKS) { - errno = ELOOP; - return (NULL); - } - len = readlink(namebuf, linkpath, MAXPATHLEN); - if (len == 0) { - strcpy(finalpath, namebuf); - return(NULL); - } - *(linkpath + len) = NULL; /* readlink doesn't null-terminate result */ - if (*linkpath == '/') *workpath = NULL; - if (*where) { - strcat(linkpath, "/"); - strcat(linkpath, where); - } - strcpy(curpath, linkpath); - goto loop; - } - - if ((sbuf.st_mode & S_IFDIR) == S_IFDIR) { - strcpy(workpath, namebuf); - continue; - } - - if (*where) { - strcpy(finalpath, namebuf); - return(NULL); /* path/notadir/morepath */ - } else - strcpy(workpath, namebuf); - } - strcpy(finalpath, workpath); - return(finalpath); - -} - diff --git a/cde/lib/tt/lib/realpath.hp.c b/cde/lib/tt/lib/realpath.hp.c deleted file mode 100644 index 97a700b0c..000000000 --- a/cde/lib/tt/lib/realpath.hp.c +++ /dev/null @@ -1,146 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/*%% (c) Copyright 1993, 1994 Hewlett-Packard Company */ -/*%% (c) Copyright 1993, 1994 International Business Machines Corp. */ -/*%% (c) Copyright 1993, 1994 Sun Microsystems, Inc. */ -/*%% (c) Copyright 1993, 1994 Novell, Inc. */ -/*%% $XConsortium: realpath.hp.c /main/3 1995/10/23 09:49:57 rswiston $ */ -/* @(#)realpath.hp.c 1.3 93/07/30 - * Version of realpath for HP/UX systems */ - -#include -#include -#include -#include -#include - -char * -realpath(pathname, finalpath) -char *pathname; -char *finalpath; -{ - struct stat sbuf; - char curpath[MAXPATHLEN], - workpath[MAXPATHLEN], - linkpath[MAXPATHLEN], - namebuf[MAXPATHLEN], - *where, - *ptr, - *last; - int len; - - strcpy(curpath, pathname); - - if (*pathname != '/') { -#if defined(__STDC__) - if (!getcwd(workpath)) { -#else - if (!getwd(workpath)) { -#endif - strcpy(finalpath, "."); - return(NULL); - } - } else *workpath = NULL; - - /* curpath is the path we're still resolving */ - /* linkpath is the path a symbolic link points to */ - /* workpath is the path we've resolved */ - - loop: - where = curpath; - while (*where != NULL) { - if (!strcmp(where, ".")) { - where++; - continue; - } - - /* deal with "./" */ - if (!strncmp(where, "./", 2)) { - where += 2; - continue; - } - - /* deal with "../" */ - if (!strncmp(where, "../", 3)) { - where += 3; - ptr = last = workpath; - while (*ptr) { - if (*ptr == '/') last = ptr; - ptr++; - } - *last = NULL; - continue; - } - - ptr = strchr(where, '/'); - if (!ptr) - ptr = where + strlen(where) - 1; - else - *ptr = NULL; - - strcpy(namebuf, workpath); - for (last = namebuf; *last; last++) continue; - /* tack on a trailing, or leading, `/` */ - if (last == namebuf || *--last != '/') { - strcat(namebuf, "/"); - } - strcat(namebuf, where); - - where = ++ptr; - if (lstat(namebuf, &sbuf) == -1) { - strcpy(finalpath, namebuf); - return(NULL); - } - - if ((sbuf.st_mode & S_IFLNK) == S_IFLNK) { - len = readlink(namebuf, linkpath, MAXPATHLEN); - if (len == 0) { - strcpy(finalpath, namebuf); - return(NULL); - } - *(linkpath + len) = NULL; /* readlink doesn't null-terminate result */ - if (*linkpath == '/') *workpath = NULL; - if (*where) { - strcat(linkpath, "/"); - strcat(linkpath, where); - } - strcpy(curpath, linkpath); - goto loop; - } - - if ((sbuf.st_mode & S_IFDIR) == S_IFDIR) { - strcpy(workpath, namebuf); - continue; - } - - if (*where) { - strcpy(finalpath, namebuf); - return(NULL); /* path/notadir/morepath */ - } else - strcpy(workpath, namebuf); - } - strcpy(finalpath, workpath); - return(finalpath); - -} - diff --git a/cde/lib/tt/lib/tt_options.h b/cde/lib/tt/lib/tt_options.h index de3a30e23..52114ad41 100644 --- a/cde/lib/tt/lib/tt_options.h +++ b/cde/lib/tt/lib/tt_options.h @@ -65,27 +65,18 @@ * * OPT_PATCH -- if defined, build patch info into objects * - * OPT_BUG_SUNOS_4 -- used to flag special hacks only needed because - * of bugs or quirks in SunOS 4.x. - * * OPT_BUG_SUNOS_5 -- used to flag special hacks only needed because * of bugs or quirks in SunOS 5.x. * - * OPT_BUG_HPUX -- used to flag special hacks only needed because - * of bugs or quirks in HP-UX. - * * OPT_BUG_RPCINTR -- used to flag that RPC_INTR is not defined * in enum clnt_stat. * - * OPT_BUG_SGI -- used to flag special hacks only needed because of - * bugs or quirks in SGI IRIX. - * * OPT_XDR_LONG_TYPE -- used for (64-bit) architectures where * defines x_putlong and x_getlong to not take "long*". * - * OPT_POSIX_SIGNAL -- set to assume posix-style sigaction() call. + * OPT_POSIX_SIGNAL -- set to assume posix-style sigaction() call (default). * OPT_BSD_SIGNAL -- set to assume bsd-style signal() call. - * If *neither* OPT_POSIX_SIGNAL or OPT_BSD_SIGNAL is defined, use + * If OPT_POSIX_SIGNAL is undefined and OPT_BSD_SIGNAL is not set, use * the old SVR2-style sigset(). * * OPT_BSD_WAIT -- set to assume bsd-style wait() calls, which expect @@ -112,8 +103,6 @@ * OPT_LOCKF_MNTTAB - set to hold a lockf lock on MNTTAB while doing * getmntents. * - * OPT_LOCAL_MOUNT_TYPE -- mount type in mntent for local disks. - * * OPT_DEFINE_SIG_PF - define if SIG_PF (=type of pointer to signal * handler function) isn't defined in system includes * @@ -123,9 +112,6 @@ * the tttarfile file will appear after extracts, a small flaw but not a * fatal one. * - * OPT_HAS_REALPATH -- set if the system provides a realpath() library - * function; otherwise we'll use our local copy. - * * OPT_PING_TRIES - The number of times to rpc-ping ttsession to * see if ttsession is alive. * @@ -197,136 +183,43 @@ # define GNU_STRCAST #endif -/* - * To avoid ugly cpp command-line options, we instead centralize - * in the following code all knowledge about deducing the OS version - * from the definitions cpp gives us. - */ -#if defined(sun) -# if !defined(OS_VERSION) -# if defined(OSMajorVersion) -# define OS_VERSION OSMajorVersion -# define OS_MINOR_VERSION OSMinorVersion -# else -# if !defined(_STDIO_H) && !defined(__stdio_h) -# include -# endif -# if defined(_SIZE_T) -# define OS_VERSION 5 -# else -# define OS_VERSION 4 -# endif -# endif -# endif +#undef OPT_CPP_PATH +#define OPT_CPP_PATH CPP_PROGRAM + +#ifdef sun +#define OPT_CPP_OPTIONS "-B" +#else +#define OPT_BUG_RPCINTR +#define OPT_CPP_OPTIONS "" +#define OPT_AUTOMOUNT_PATH_FIX +#define OPT_DEFINE_SIG_PF #endif +#define OPT_POSIX_SIGNAL +#define OPT_CATGETS +#define OPT_TAR_HAS_EXCLUDE_OPTION + #if defined(_AIX) -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT +# undef OPT_BUG_RPCINTR +# undef OPT_TAR_HAS_EXCLUDE_OPTION # define OPT_BUG_AIX -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_BSD_SIGNAL -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS # define OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_CPP_PATH "/usr/ccs/lib/cpp" -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_DEFINE_SIG_PF -# undef OPT_TAR_HAS_EXCLUDE_OPTION -# undef OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX /* # define OPT_XTHREADS 1 */ /* Defaulted by -DXTHREADS */ -#elif defined(sun) && (OS_VERSION <= 4) - -# define OPT_UNIX_SOCKET_RPC -# undef OPT_TLI - /* for 4.1.1 systems turning on any dlopen features on the */ - /* client side would break clients with ld errors unless they */ - /* linked with -ldl. OPT_DLOPEN_CE is ok since clients don't */ - /* ever execute ce_* functions. */ -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# define OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_PATCH -# define OPT_BSD_SIGNAL -# define OPT_BSD_WAIT -# define OPT_DGETTEXT -# undef OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_CPP_PATH "/usr/lib/cpp" -# define OPT_CPP_OPTIONS "-B" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_42 -# undef OPT_OLD_RPC -# undef OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION - -# define OPT_BUG_SUNOS_4 - -# define OPT_HAS_REALPATH -# undef OPT_AUTOMOUNT_PATH_FIX - -#elif defined(sun) && (OS_VERSION >= 5) - -# undef OPT_UNIX_SOCKET_RPC +#elif defined(sun) # define OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT # define OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_BSD_SIGNAL -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE # define OPT_SYSINFO -# define OPT_CPP_PATH "/usr/ccs/lib/cpp" -# define OPT_CPP_OPTIONS "-B" # define OPT_SVR4_GETMNTENT # define OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_UFS -# undef OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_HAS_REALPATH -# undef OPT_AUTOMOUNT_PATH_FIX - -/* Does not work on X86 */ -# if defined(i386) && OS_MINOR_VERSION <= 4 -# undef OPT_GARBAGE_THREADS -# undef OPT_SOLARIS_THREADED_TRIES -# else -# define OPT_SOLARIS_THREADS 1 +# define OPT_SOLARIS_THREADS 1 /* # define OPT_XTHREADS 1 */ /* Defaulted by -DXTHREADS */ -# define OPT_GARBAGE_THREADS 1 -# define OPT_SOLARIS_THREADED_TRIES 10 -# endif +# define OPT_GARBAGE_THREADS 1 +# define OPT_SOLARIS_THREADED_TRIES 10 -/* Solaris 2.5 and above, supports clnt_create_timed(3N) */ -# if (OS_MINOR_VERSION >= 5) -# define OPT_HAS_CLNT_CREATE_TIMED 1 -# define OPT_CLNT_CREATE_TIMEOUT 30 -# endif - -/* TURN THESE OFF FOR NOW */ -# undef OPT_GARBAGE_IN_PARALLEL -# undef OPT_GARBAGE_THREADS +# define OPT_HAS_CLNT_CREATE_TIMED 1 +# define OPT_CLNT_CREATE_TIMEOUT 30 /* Turn ON/OFF parallel threads for garbage collection */ # if defined(OPT_DO_AUTO_GARBAGE_COLLECT) && defined(OPT_SOLARIS_THREADS) @@ -334,192 +227,23 @@ # define OPT_GARBAGE_THREADS 1 # else # define OPT_GARBAGE_IN_PARALLEL 0 /* used as a const */ -# undef OPT_GARBAGE_THREADS # endif -#elif defined(sgi) -/* these are probably way obsolete now that irix is svr4 based */ -# define OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# define OPT_TAR_HAS_EXCLUDE_OPTION - -#elif defined(__hpux) || defined(hpux) - -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# define OPT_BUG_HPUX -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_BSD_SIGNAL -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX -/* - * re-define these. HP-UX does not seem to want to wake up a swapped - * process. The timeouts have to be increased so that HP-UX has time - * to swap in ttsession (if it is out). - */ -# undef OPT_PING_TRIES -# define OPT_PING_TRIES 10 -# undef OPT_PING_SLEEP -# define OPT_PING_SLEEP 2 -# if OSMAJORVERSION < 10 -# define OPT_CPP_PATH "/lib/cpp" -# else -# define OPT_CPP_PATH "/opt/langtools/lbin/cpp" -# endif -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_HFS -# define OPT_DEFINE_SIG_PF -# undef OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_BUG_RPCINTR - #elif defined(__linux__) - -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_PATCH -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_CPP_PATH "/usr/bin/cpp" -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE "ext2fs" -# undef OPT_OLD_RPC -# define OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX -# define OPT_BUG_RPCINTR -# undef OPT_XTHREADS # define OPT_CONST_CORRECT #elif defined(__OpenBSD__) -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_PATCH -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_CPP_PATH "/usr/libexec/cpp" -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_UFS -# undef OPT_OLD_RPC -# define OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX -# define OPT_BUG_RPCINTR -# undef OPT_XTHREADS - #elif defined(__FreeBSD__) -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_PATCH -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# if defined(OSMAJORVERSION) && (OSMAJORVERSION >= 5) -# define OPT_CPP_PATH "/usr/bin/cpp" -# else -# define OPT_CPP_PATH "/usr/libexec/cpp" -# endif -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_UFS -# undef OPT_OLD_RPC -# define OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX -# define OPT_BUG_RPCINTR -# undef OPT_XTHREADS # define OPT_CONST_CORRECT #elif defined(__NetBSD__) -# undef OPT_UNIX_SOCKET_RPC -# undef OPT_TLI -# undef OPT_DLOPEN_X11 -# undef OPT_DLOPEN_CE -# undef OPT_ADDMSG_DIRECT -# undef OPT_SECURE_RPC -# undef OPT_CLASSING_ENGINE -# undef OPT_PATCH -# define OPT_POSIX_SIGNAL -# undef OPT_BSD_WAIT -# undef OPT_DGETTEXT -# define OPT_CATGETS -# undef OPT_GETDTABLESIZE -# undef OPT_SYSINFO -# define OPT_CPP_PATH "/usr/bin/cpp" -# define OPT_CPP_OPTIONS "" -# undef OPT_SVR4_GETMNTENT -# undef OPT_LOCKF_MNTENT -# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_UFS -# undef OPT_OLD_RPC -# define OPT_DEFINE_SIG_PF -# define OPT_TAR_HAS_EXCLUDE_OPTION -# define OPT_HAS_REALPATH -# define OPT_AUTOMOUNT_PATH_FIX -# define OPT_BUG_RPCINTR -# undef OPT_XTHREADS # define OPT_CONST_CORRECT # define HAS_STATVFS #else /* Unknown configuration, complain */ -}}}} You must edit lib/tt_options.h and add a section defining the options for your configuration. - -#endif - -#ifdef CPP_PROGRAM -# undef OPT_CPP_PATH -# define OPT_CPP_PATH CPP_PROGRAM +#warning "Your system is unknown to us, things might not build properly without editing tt_options.h" #endif #endif /* _TT_OPTIONS_H */ diff --git a/cde/lib/tt/lib/tttk/ttdesktop.C b/cde/lib/tt/lib/tttk/ttdesktop.C index a352cfe74..33752bb2a 100644 --- a/cde/lib/tt/lib/tttk/ttdesktop.C +++ b/cde/lib/tt/lib/tttk/ttdesktop.C @@ -1765,8 +1765,7 @@ _ttdt_posix_cb( tt_message_arg_val_set( msg, 4, names.machine ); // The last 3 are from sysinfo which seems to be SVR4 only. // For platforms without the sysinfo call, we just leave - // the values unset for now, except for the serial - // number which is available from utsname onHPUX. + // the values unset for now #if defined(OPT_SYSINFO) if (sysinfo( SI_ARCHITECTURE, buf, SYS_NMLN ) >= 0) { tt_message_arg_val_set( msg, 5, buf ); @@ -1777,8 +1776,6 @@ _ttdt_posix_cb( if (sysinfo( SI_HW_SERIAL, buf, SYS_NMLN ) >= 0) { tt_message_arg_val_set( msg, 7, buf ); } -#elif defined(__hpux) || defined(hpux) - tt_message_arg_val_set( msg, 7, names.idnumber); #endif tt_message_reply( msg ); tttk_message_destroy( msg ); diff --git a/cde/lib/tt/lib/util/tt_host.C b/cde/lib/tt/lib/util/tt_host.C index d608b57e1..87342ef71 100644 --- a/cde/lib/tt/lib/util/tt_host.C +++ b/cde/lib/tt/lib/util/tt_host.C @@ -45,9 +45,6 @@ extern "C" in_addr_t inet_addr(const char *); #include #include #include -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif #define X_INCLUDE_NETDB_H #define XOS_USE_XT_LOCKING diff --git a/cde/lib/tt/lib/util/tt_log.C b/cde/lib/tt/lib/util/tt_log.C index aaf4e1f36..5f8f3b2d3 100644 --- a/cde/lib/tt/lib/util/tt_log.C +++ b/cde/lib/tt/lib/util/tt_log.C @@ -34,9 +34,6 @@ #include #include -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif #define X_INCLUDE_TIME_H #define XOS_USE_XT_LOCKING diff --git a/cde/lib/tt/lib/util/tt_object_list.h b/cde/lib/tt/lib/util/tt_object_list.h index 1e93c7984..25f3cf554 100644 --- a/cde/lib/tt/lib/util/tt_object_list.h +++ b/cde/lib/tt/lib/util/tt_object_list.h @@ -37,7 +37,7 @@ #include #include #include -#if defined(OPT_BUG_HPUX) || defined(OPT_BUG_AIX) +#if defined(OPT_BUG_AIX) # undef remove #endif diff --git a/cde/lib/tt/lib/util/tt_path.C b/cde/lib/tt/lib/util/tt_path.C index 7cc309c0d..0d3df63ce 100644 --- a/cde/lib/tt/lib/util/tt_path.C +++ b/cde/lib/tt/lib/util/tt_path.C @@ -59,23 +59,10 @@ #undef rindex #endif -// Not everybody has realpath() in libc, sometimes we have to define -// it ourselves, see realpath*.c in tt/lib - -#if !defined(OPT_HAS_REALPATH) - extern "C" { char *_tt_internal_realpath(char*, char*); } -#endif - -// Use the system realpath on OS's that have it, otherwise -// use the ToolTalk implementation of it. char * _tt_get_realpath(char *pathname, char *finalpath) { -#ifdef OPT_HAS_REALPATH return realpath(pathname, finalpath); -#else - return _tt_internal_realpath(pathname, finalpath); -#endif } /* diff --git a/cde/lib/tt/lib/util/tt_port.C b/cde/lib/tt/lib/util/tt_port.C index 39da7edbc..1544cbea1 100644 --- a/cde/lib/tt/lib/util/tt_port.C +++ b/cde/lib/tt/lib/util/tt_port.C @@ -45,12 +45,6 @@ #include #include #include -#if defined(OPT_BUG_HPUX) && !defined(hpV4) -extern "C" { - int syslog(int priority, const char *message, ...); - int openlog(const char *ident, int logopt, int facility); -} -#endif #if defined(sun) #include #endif @@ -200,15 +194,11 @@ _tt_gethostid(void) sscanf(serial_num, "%12lx", &_hostid); } } -#elif defined(hpux) || defined(_AIX) +#elif defined(_AIX) struct utsname uts_name; uname(&uts_name); -# if defined(_AIX) - _hostid = atol(uts_name.machine); -# else - _hostid = atol(uts_name.idnumber); -# endif + _hostid = atol(uts_name.machine); #else _hostid = gethostid(); #endif @@ -365,7 +355,7 @@ _tt_vsyslog( return; } -#if defined(OPT_BUG_AIX) || defined(OPT_BUG_HPUX) +#if defined(OPT_BUG_AIX) char buf[5000]; vsprintf( buf, _format, args ); syslog( priority, buf ); diff --git a/cde/lib/tt/lib/util/tt_string.C b/cde/lib/tt/lib/util/tt_string.C index 8479da8a8..5d086d5ae 100644 --- a/cde/lib/tt/lib/util/tt_string.C +++ b/cde/lib/tt/lib/util/tt_string.C @@ -51,9 +51,7 @@ #include #include #include -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#endif #include "util/tt_string.h" #include "util/tt_assert.h" #include "util/tt_xdr_utils.h" diff --git a/cde/lib/tt/lib/util/tt_string.h b/cde/lib/tt/lib/util/tt_string.h index 6e7181606..1c9f7b60f 100644 --- a/cde/lib/tt/lib/util/tt_string.h +++ b/cde/lib/tt/lib/util/tt_string.h @@ -44,11 +44,7 @@ #endif #include -#if defined(OPT_BUG_HPUX) -extern "C" { -#include -}; -#elif defined(OPT_BUG_SUNOS_5) +#if defined(OPT_BUG_SUNOS_5) #include #include #elif defined(OPT_BUG_AIX) diff --git a/cde/lib/tt/lib/util/tt_string_match.C b/cde/lib/tt/lib/util/tt_string_match.C index aab8e3a18..8e3a3b5c0 100644 --- a/cde/lib/tt/lib/util/tt_string_match.C +++ b/cde/lib/tt/lib/util/tt_string_match.C @@ -42,12 +42,6 @@ #include "util/tt_assert.h" #include -#if defined (__hpux) -/* - * On HP MAXINT is defined in both and - */ -#undef MAXINT -#endif #if defined(CSRG_BASED) #define MAXINT INT_MAX #else diff --git a/cde/lib/tt/lib/util/tt_tracefile_parse.C b/cde/lib/tt/lib/util/tt_tracefile_parse.C index 8d66ce345..69bea1886 100644 --- a/cde/lib/tt/lib/util/tt_tracefile_parse.C +++ b/cde/lib/tt/lib/util/tt_tracefile_parse.C @@ -41,7 +41,7 @@ #include "util/tt_trace_parser.h" #include "util/tt_entry_pt_names.h" -#if defined (_AIX) || defined(hpux) || defined(__linux__) || defined(CSRG_BASED) +#if defined (_AIX) || defined(__linux__) || defined(CSRG_BASED) #include #endif diff --git a/cde/lib/tt/lib/util/tt_xdr_utils.C b/cde/lib/tt/lib/util/tt_xdr_utils.C index ee6585cfe..d4603c664 100644 --- a/cde/lib/tt/lib/util/tt_xdr_utils.C +++ b/cde/lib/tt/lib/util/tt_xdr_utils.C @@ -113,7 +113,7 @@ _tt_xdr_sizeof(xdrproc_t f, void *data) _Tt_xdr_size_stream:: _Tt_xdr_size_stream() { memset (&ops, 0, sizeof ops); -#if defined(OPT_BUG_SUNOS_4) || defined(OPT_BUG_HPUX) +#if defined(OPT_BUG_SUNOS_4) ops.x_putlong = (int (*)(...))tt_x_putlong; ops.x_putbytes = (int (*)(...))tt_x_putbytes; ops.x_inline = (long *(*)(...))tt_x_inline; diff --git a/cde/lib/tt/mini_isam/iscntl.c b/cde/lib/tt/mini_isam/iscntl.c index f243e5345..29c65e39c 100644 --- a/cde/lib/tt/mini_isam/iscntl.c +++ b/cde/lib/tt/mini_isam/iscntl.c @@ -36,11 +36,7 @@ * Generic control function */ -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #include -#else -#include -#endif #include "isam_impl.h" @@ -76,25 +72,13 @@ typedef int (* intfunc)(); -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) int iscntl(int isfd, int func, ...) -#else -int -iscntl(isfd, func, va_alist) - int isfd; - int func; - va_dcl -#endif { va_list pvar; int ret; -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) va_start(pvar, func); -#else - va_start(pvar); -#endif switch (func) { case ISCNTL_MASKSIGNALS: diff --git a/cde/lib/tt/slib/mp_rpc_server.C b/cde/lib/tt/slib/mp_rpc_server.C index 7924901a2..bf75c67a3 100644 --- a/cde/lib/tt/slib/mp_rpc_server.C +++ b/cde/lib/tt/slib/mp_rpc_server.C @@ -410,11 +410,7 @@ gettransient(int proto, int vers, int *sockp) _tt_syslog(0, LOG_ERR, "bind(): %m"); return(0); } -#if defined (_AIX) && (OSMAJORVERSION==4) && (OSMINORVERSION==2) - if (getsockname(s, (sockaddr *)&addr, (size_t *)&len) < 0) { -#else if (getsockname(s, (sockaddr *)&addr, &len) < 0) { -#endif _tt_syslog(0, LOG_ERR, "getsockname(): %m"); return(0); } diff --git a/cde/lib/tt/slib/mp_s_session.C b/cde/lib/tt/slib/mp_s_session.C index 2adb0b535..0d9450224 100644 --- a/cde/lib/tt/slib/mp_s_session.C +++ b/cde/lib/tt/slib/mp_s_session.C @@ -115,7 +115,7 @@ s_open_unix_socket(char *socket_name) server_addr.sun_family = AF_UNIX; (void)unlink(socket_name); strcpy(server_addr.sun_path, socket_name); -#if defined(_AIX) || defined(hpux) +#if defined(_AIX) int servlen = strlen(server_addr.sun_path) + sizeof(server_addr.sun_fam\ ily); if (bind(sock, (struct sockaddr *)&server_addr,servlen) < 0) { diff --git a/cde/programs/Makefile.am b/cde/programs/Makefile.am index 1f5f4eb9a..77bb1d60e 100644 --- a/cde/programs/Makefile.am +++ b/cde/programs/Makefile.am @@ -7,3 +7,7 @@ SUBDIRS = backdrops icons dsdm dtmail dtpad dtfile dtwm dtlogin \ dtcreate dtprintinfo fontaliases dtdspmsg ttsnoop dtimsstart \ dtpdm dtsr dtpdmd dtinfo types tttypes util dtopen localized \ dthelp dtdocbook + +install-data-hook: + -if [ $(CDE_INSTALLATION_TOP)/bin != $(bindir) ];then \ + cd $(DESTDIR)$(CDE_INSTALLATION_TOP) && $(LN_S) $(bindir) bin ; fi diff --git a/cde/programs/dsdm/Makefile.am b/cde/programs/dsdm/Makefile.am index 78a3202be..acf6edf9f 100644 --- a/cde/programs/dsdm/Makefile.am +++ b/cde/programs/dsdm/Makefile.am @@ -2,8 +2,4 @@ bin_PROGRAMS = dsdm dsdm_LDADD = $(XTOOLLIB) -if SOLARIS -dsdm_LDADD += -ldl -endif - dsdm_SOURCES = dsdm.c proxy.c diff --git a/cde/programs/dtaction/Main.c b/cde/programs/dtaction/Main.c index 74b767f78..3d8f676ea 100644 --- a/cde/programs/dtaction/Main.c +++ b/cde/programs/dtaction/Main.c @@ -403,10 +403,7 @@ SetGidUid ( unsigned short rgid, unsigned short ruid ) if(-1 == setregid(rgid, rgid)) { fprintf(stderr, "SetGidUid: setregid failed on %d\n", rgid); } -#elif defined(__hpux) - setresgid(rgid, rgid, rgid); -#else - setregid(rgid, rgid, rgid); + setregid(rgid, rgid); #endif /* fix process uid */ @@ -416,10 +413,7 @@ SetGidUid ( unsigned short rgid, unsigned short ruid ) if(-1 == setreuid(ruid, ruid)) { fprintf(stderr, "SetGidUid: setreuid failed on %d\n", ruid); } -#elif defined(__hpux) - setresuid(ruid, ruid, ruid); -#else - setreuid(ruid, ruid, ruid); + setreuid(ruid, ruid); #endif } @@ -591,13 +585,7 @@ AddSuLog( time_t timenow; struct tm *now; -#ifdef hpV4 /* 10.* versions */ char * SULog = "/var/adm/sulog"; -#elif defined( hpux ) /* 9.* versions */ - char * SULog = "/usr/adm/sulog"; -#else - char * SULog = "/var/adm/sulog"; -#endif if ((f = fopen (SULog, "a")) == NULL) return; diff --git a/cde/programs/dtaction/Makefile.am b/cde/programs/dtaction/Makefile.am index f1370dfc8..245d887ce 100644 --- a/cde/programs/dtaction/Makefile.am +++ b/cde/programs/dtaction/Makefile.am @@ -5,19 +5,3 @@ bin_PROGRAMS = dtaction dtaction_SOURCES = Main.c dtaction_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) - -if SOLARIS -dtaction_LDADD += -ldl -endif - -if LINUX -dtaction_LDADD += -lcrypt -endif - -if FREEBSD -dtaction_LDADD += -lcrypt -endif - -if NETBSD -dtaction_LDADD += -lcrypt -endif diff --git a/cde/programs/dtaction/demo/Makefile.hp b/cde/programs/dtaction/demo/Makefile.hp deleted file mode 100644 index 2ef1e978c..000000000 --- a/cde/programs/dtaction/demo/Makefile.hp +++ /dev/null @@ -1,52 +0,0 @@ -# $XConsortium: Makefile.hp /main/2 1996/05/13 11:29:32 drk $ -########################################################################### -# -# Makefile for dtactiondemo.c -# -# (c) Copyright 1993, 1994 Hewlett-Packard Company -# (c) Copyright 1993, 1994 International Business Machines Corp. -# (c) Copyright 1993, 1994 Sun Microsystems, Inc. -# (c) Copyright 1993, 1994 Unix System Labs, Inc., a subsidiary of -# Novell, Inc. -########################################################################### - -#ifndef CDE_INSTALLATION_TOP - CDE_INSTALLATION_TOP = /usr/dt -#endif - -PROGRAM = dtactiondemo -SOURCES = dtactiondemo.c -OBJECTS = dtactiondemo.o - -CFLAGS = +Obb2000 -Aa -OPTIMIZEDFLAGS = -O - -DEFINES = -D_HPUX_SOURCE - -DTINCLUDE = -I$(CDE_INSTALLATION_TOP)/include -XMINCLUDE = -I$(CDE_INSTALLATION_TOP)/include -X11INCLUDE = -I/usr/include/X11R5 -EXTRA_INCLUDES = -INCLUDES = $(DTINCLUDE) $(XMINCLUDE) $(X11INCLUDE) $(EXTRA_INCLUDES) - -DTSVCLIB = -L$(CDE_INSTALLATION_TOP)/lib -lDtSvc -TTLIB = -L$(CDE_INSTALLATION_TOP)/lib -ltt -XMLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXm -XTLIB = -L$(CDE_INSTALLATION_TOP)/lib -lXt -X11LIB = -L/usr/lib/X11R5 -lX11 - -LIBRARIES = $(DTSVCLIB) $(TTLIB) $(XMLIB) $(XTLIB) $(X11LIB) - -LDFLAGS = - -.c.o: - cc -c $(CFLAGS) $(DEFINES) $(OPTIMIZEDFLAGS) $(INCLUDES) $< - -all:: $(PROGRAM) - -$(PROGRAM):: $(OBJECTS) - cc -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES) - -clean:: - rm -f $(PROGRAM) - rm -f $(OBJECTS) diff --git a/cde/programs/dtappbuilder/src/ab/Makefile.am b/cde/programs/dtappbuilder/src/ab/Makefile.am index 0d43ea0cf..38302f72a 100644 --- a/cde/programs/dtappbuilder/src/ab/Makefile.am +++ b/cde/programs/dtappbuilder/src/ab/Makefile.am @@ -2,7 +2,7 @@ MAINTAINERCLEANFILES = Makefile.in .NOTPARALLEL: -appdefaultsdir = ${prefix}/app-defaults/C +appdefaultsdir = $(CDE_INSTALLATION_TOP)/app-defaults/C ABINCLUDES = -I../include -I../include/ab_private -I../libABil @@ -29,7 +29,6 @@ endif AB_MAKEFILES = \ Makefile.aix \ - Makefile.hpux \ Makefile.sunos \ Makefile.linux \ Makefile.freebsd \ @@ -48,7 +47,7 @@ dtbuilder_LDADD = ../libABil/libABil.a ../libABobjXm/libABobjXm.a \ ../libABobj/libABobj.a ../libAButil/libAButil.a \ $(LIBWIDGET) $(LIBTERM) $(LIBHELP) $(LIBSVC) \ $(LIBTT) $(LIBXIN) -lUil $(MRESOURCELIB) $(XTOOLLIB) ${X_LIB} \ - $(UTILLIB) -lm + $(UTILLIB) dtbuilder_CFLAGS = -DPIXMAP_WORKAROUND $(ABINCLUDES) diff --git a/cde/programs/dtappbuilder/src/ab/appfw_stubs.c b/cde/programs/dtappbuilder/src/ab/appfw_stubs.c index 15dfbc737..6856a6529 100644 --- a/cde/programs/dtappbuilder/src/ab/appfw_stubs.c +++ b/cde/programs/dtappbuilder/src/ab/appfw_stubs.c @@ -166,7 +166,7 @@ appfw_editor_init( ) { Widget item[10]; - int item_val[10]; + XtArgVal item_val[10]; int n; /* diff --git a/cde/programs/dtappbuilder/src/ab/dnd_ed_stubs.c b/cde/programs/dtappbuilder/src/ab/dnd_ed_stubs.c index e5c52fba3..ddf995a8d 100644 --- a/cde/programs/dtappbuilder/src/ab/dnd_ed_stubs.c +++ b/cde/programs/dtappbuilder/src/ab/dnd_ed_stubs.c @@ -210,7 +210,7 @@ dnd_ed_editor_init( { DndEditorSettings dds = &dndEdInfo; Widget item[10]; - int item_val[10]; + XtArgVal item_val[10]; int n = 0; /* diff --git a/cde/programs/dtappbuilder/src/ab/message_ed_stubs.c b/cde/programs/dtappbuilder/src/ab/message_ed_stubs.c index 7840fa960..778c53f1d 100644 --- a/cde/programs/dtappbuilder/src/ab/message_ed_stubs.c +++ b/cde/programs/dtappbuilder/src/ab/message_ed_stubs.c @@ -360,7 +360,7 @@ msg_editor_init( { MsgEditorSettingsRec *mes = &msg_editor_settings_rec; Widget item[6]; - int item_val[6]; + XtArgVal item_val[6]; int i, n; /* diff --git a/cde/programs/dtappbuilder/src/ab/pal_button.c b/cde/programs/dtappbuilder/src/ab/pal_button.c index 9b9226b53..4123c94f2 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_button.c +++ b/cde/programs/dtappbuilder/src/ab/pal_button.c @@ -294,11 +294,11 @@ button_prop_init( /* Button Type */ n = 0; item[n] = cgen->buttontype_rbox_items.Push_item; - item_ptr[n] = AB_BUT_PUSH; n++; + item_ptr[n] = (void *) AB_BUT_PUSH; n++; item[n] = cgen->buttontype_rbox_items.Drawn_item; - item_ptr[n] = AB_BUT_DRAWN; n++; + item_ptr[n] = (void *) AB_BUT_DRAWN; n++; item[n] = cgen->buttontype_rbox_items.Menu_item; - item_ptr[n] = AB_BUT_MENU; n++; + item_ptr[n] = (void *) AB_BUT_MENU; n++; prop_radiobox_init(&(pbs->button_type), cgen->buttontype_rbox_label, cgen->buttontype_rbox, n, item, item_ptr, cgen->buttontype_cb); @@ -309,11 +309,11 @@ button_prop_init( /* Label Type */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; item[n] = cgen->labeltype_rbox_items.Arrow_item; - item_ptr[n] = AB_LABEL_ARROW_DOWN; n++; + item_ptr[n] = (void *) AB_LABEL_ARROW_DOWN; n++; prop_options_init(&(pbs->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -346,11 +346,11 @@ button_prop_init( /* Label Align */ n = 0; item[n] = cgen->labelalign_opmenu_items.Left_item; - item_ptr[n] = AB_ALIGN_LEFT; n++; + item_ptr[n] = (void *) AB_ALIGN_LEFT; n++; item[n] = cgen->labelalign_opmenu_items.Centered_item; - item_ptr[n] = AB_ALIGN_CENTER; n++; + item_ptr[n] = (void *) AB_ALIGN_CENTER; n++; item[n] = cgen->labelalign_opmenu_items.Right_item; - item_ptr[n] = AB_ALIGN_RIGHT; n++; + item_ptr[n] = (void *) AB_ALIGN_RIGHT; n++; prop_options_init(&(pbs->label_align), cgen->labelalign_opmenu_label, cgen->labelalign_opmenu, cgen->labelalign_opmenu_menu, n, item, item_ptr, @@ -359,13 +359,13 @@ button_prop_init( /* Arrow Direction */ n = 0; item[n] = cgen->arrowdir_opmenu_items.Up_item; - item_ptr[n] = AB_LABEL_ARROW_UP; n++; + item_ptr[n] = (void *) AB_LABEL_ARROW_UP; n++; item[n] = cgen->arrowdir_opmenu_items.Down_item; - item_ptr[n] = AB_LABEL_ARROW_DOWN; n++; + item_ptr[n] = (void *) AB_LABEL_ARROW_DOWN; n++; item[n] = cgen->arrowdir_opmenu_items.Right_item; - item_ptr[n] = AB_LABEL_ARROW_RIGHT; n++; + item_ptr[n] = (void *) AB_LABEL_ARROW_RIGHT; n++; item[n] = cgen->arrowdir_opmenu_items.Left_item; - item_ptr[n] = AB_LABEL_ARROW_LEFT; n++; + item_ptr[n] = (void *) AB_LABEL_ARROW_LEFT; n++; prop_options_init(&(pbs->arrow_dir), cgen->arrowdir_opmenu_label, cgen->arrowdir_opmenu, cgen->arrowdir_opmenu_menu, n, item, item_ptr, @@ -380,9 +380,9 @@ button_prop_init( /* Size Policy */ n = 0; item[n] = cgen->sizepolicy_rbox_items.Size_of_Label_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->sizepolicy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pbs->size_policy), cgen->sizepolicy_rbox_label, cgen->sizepolicy_rbox, n, item, item_ptr, cgen->sizepolicy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_choice.c b/cde/programs/dtappbuilder/src/ab/pal_choice.c index 332401101..c63253800 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_choice.c +++ b/cde/programs/dtappbuilder/src/ab/pal_choice.c @@ -343,9 +343,9 @@ choice_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pcs->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, cgen->labeltype_cb); @@ -357,9 +357,9 @@ choice_prop_init( n = 0; item[n] = cgen->labelpos_rbox_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; item[n] = cgen->labelpos_rbox_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; prop_options_init(&(pcs->label_pos), cgen->labelpos_rbox_label, cgen->labelpos_rbox, cgen->labelpos_rbox_menu, n, item, item_ptr, cgen->labeltype_cb); @@ -368,11 +368,11 @@ choice_prop_init( /* Choice Type */ n = 0; item[n] = cgen->choicetype_rbox_items.Radio_Box_item; - item_ptr[n] = AB_CHOICE_EXCLUSIVE; n++; + item_ptr[n] = (void *) AB_CHOICE_EXCLUSIVE; n++; item[n] = cgen->choicetype_rbox_items.Check_Box_item; - item_ptr[n] = AB_CHOICE_NONEXCLUSIVE; n++; + item_ptr[n] = (void *) AB_CHOICE_NONEXCLUSIVE; n++; item[n] = cgen->choicetype_rbox_items.Option_Menu_item; - item_ptr[n] = AB_CHOICE_OPTION_MENU; n++; + item_ptr[n] = (void *) AB_CHOICE_OPTION_MENU; n++; prop_options_init(&(pcs->choice_type), cgen->choicetype_rbox_label, cgen->choicetype_rbox, cgen->choicetype_rbox_menu, n, item, item_ptr, @@ -384,9 +384,9 @@ choice_prop_init( /* Rows/Columns */ n = 0; item[n] = cgen->layout_rbox_items.Columns_item; - item_ptr[n] = AB_ORIENT_VERTICAL; n++; + item_ptr[n] = (void *) AB_ORIENT_VERTICAL; n++; item[n] = cgen->layout_rbox_items.Rows_item; - item_ptr[n] = AB_ORIENT_HORIZONTAL; n++; + item_ptr[n] = (void *) AB_ORIENT_HORIZONTAL; n++; prop_radiobox_init(&(pcs->row_col), cgen->layout_rbox_label, cgen->layout_rbox, n, item, item_ptr, @@ -428,9 +428,9 @@ choice_prop_init( /* Item Label Type */ n = 0; item[n] = cgen->itemlabel_opmenu_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->itemlabel_opmenu_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pcs->item_label_type), cgen->itemlabel_type_label, cgen->itemlabel_opmenu, cgen->itemlabel_opmenu_menu, n, item, item_ptr, cgen->itemlist_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_combobox.c b/cde/programs/dtappbuilder/src/ab/pal_combobox.c index 9cc80ba12..e44673804 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_combobox.c +++ b/cde/programs/dtappbuilder/src/ab/pal_combobox.c @@ -295,9 +295,9 @@ combo_box_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pcs->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -310,9 +310,9 @@ combo_box_prop_init( n = 0; item[n] = cgen->labelpos_rbox_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; item[n] = cgen->labelpos_rbox_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; prop_options_init(&(pcs->label_pos), cgen->labelpos_rbox_label, cgen->labelpos_rbox, cgen->labelpos_rbox_menu, n, item, item_ptr, @@ -321,9 +321,9 @@ combo_box_prop_init( /* Read Only */ n = 0; item[n] = cgen->comboboxtype_rbox_items.Static_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; item[n] = cgen->comboboxtype_rbox_items.Editable_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; prop_radiobox_init(&(pcs->combobox_type), cgen->comboboxtype_rbox_label, cgen->comboboxtype_rbox, n, item, item_ptr, cgen->comboboxtype_cb); @@ -339,9 +339,9 @@ combo_box_prop_init( /* Width */ n = 0; item[n] = cgen->wpolicy_rbox_items.Longest_Item_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->wpolicy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pcs->wth_policy), cgen->wpolicy_rbox_label, cgen->wpolicy_rbox, n, item, item_ptr, cgen->wpolicy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_cpanel.c b/cde/programs/dtappbuilder/src/ab/pal_cpanel.c index 9e777ad7b..04f3faa8f 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_cpanel.c +++ b/cde/programs/dtappbuilder/src/ab/pal_cpanel.c @@ -281,15 +281,15 @@ cpanel_prop_init( /* Border Frame Setting */ n = 0; item[n] = cgen->bframe_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->bframe_opmenu_items.Shadow_Out_item; - item_ptr[n] = AB_LINE_SHADOW_OUT; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_OUT; n++; item[n] = cgen->bframe_opmenu_items.Shadow_In_item; - item_ptr[n] = AB_LINE_SHADOW_IN; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_IN; n++; item[n] = cgen->bframe_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->bframe_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; prop_options_init(&(pcs->frame), cgen->bframe_opmenu_label, cgen->bframe_opmenu, cgen->bframe_opmenu_menu, n, item, item_ptr, @@ -309,9 +309,9 @@ cpanel_prop_init( /* Size Policy */ n = 0; item[n] = cgen->size_policy_rbox_items.Fit_Contents_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->size_policy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pcs->size_policy), cgen->size_policy_rbox_label, cgen->size_policy_rbox, n, item, item_ptr, cgen->size_policy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_custdlg.c b/cde/programs/dtappbuilder/src/ab/pal_custdlg.c index 5393ac27b..a83e8eee7 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_custdlg.c +++ b/cde/programs/dtappbuilder/src/ab/pal_custdlg.c @@ -303,7 +303,7 @@ custdlg_prop_init( /* Window Parent */ n = 0; item[n] = cgen->winparent_opmenu_items.None_item; - item_ptr[n] = 0; n++; + item_ptr[n] = (void *) 0; n++; prop_obj_options_init(&(pcs->win_parent), cgen->winparent_opmenu_label, cgen->winparent_opmenu, cgen->winparent_opmenu_menu, n, item, item_ptr, @@ -317,9 +317,9 @@ custdlg_prop_init( /* Resize Mode */ n = 0; item[n] = cgen->resizemode_rbox_items.Adjustable_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; item[n] = cgen->resizemode_rbox_items.Fixed_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; prop_radiobox_init(&(pcs->resize_mode), cgen->resizemode_rbox_label, cgen->resizemode_rbox, n, item, item_ptr, cgen->resizemode_cb); @@ -338,7 +338,7 @@ custdlg_prop_init( /* Default Button */ n = 0; item[n] = cgen->defaultb_opmenu_items.None_item; - item_ptr[n] = 0; n++; + item_ptr[n] = (void *) 0; n++; prop_obj_options_init(&(pcs->default_but), cgen->defaultb_opmenu_label, cgen->defaultb_opmenu, cgen->defaultb_opmenu_menu, n, item, item_ptr, @@ -348,7 +348,7 @@ custdlg_prop_init( /* Help Button */ n = 0; item[n] = cgen->helpb_opmenu_items.None_item; - item_ptr[n] = 0; n++; + item_ptr[n] = (void *) 0; n++; prop_obj_options_init(&(pcs->help_but), cgen->helpb_opmenu_label, cgen->helpb_opmenu, cgen->helpb_opmenu_menu, n, item, item_ptr, @@ -358,9 +358,9 @@ custdlg_prop_init( /* Size Policy */ n = 0; item[n] = cgen->size_policy_rbox_items.Fit_Contents_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->size_policy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pcs->size_policy), cgen->size_policy_rbox_label, cgen->size_policy_rbox, n, item, item_ptr, cgen->size_policy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_drawp.c b/cde/programs/dtappbuilder/src/ab/pal_drawp.c index 237db19f7..262081ec8 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_drawp.c +++ b/cde/programs/dtappbuilder/src/ab/pal_drawp.c @@ -273,11 +273,11 @@ drawp_prop_init( /* Scrolling */ n = 0; item[n] = cgen->scrolldisp_rbox_items.Never_item; - item_ptr[n] = AB_SCROLLBAR_NEVER; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_NEVER; n++; item[n] = cgen->scrolldisp_rbox_items.Always_item; - item_ptr[n] = AB_SCROLLBAR_ALWAYS; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_ALWAYS; n++; item[n] = cgen->scrolldisp_rbox_items.When_Needed_item; - item_ptr[n] = AB_SCROLLBAR_WHEN_NEEDED; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_WHEN_NEEDED; n++; prop_radiobox_init(&(pds->scrolling), cgen->scrolldisp_rbox_label, cgen->scrolldisp_rbox, n, item, item_ptr, cgen->scroll_cb); @@ -289,15 +289,15 @@ drawp_prop_init( /* Border Frame */ n = 0; item[n] = cgen->bframe_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->bframe_opmenu_items.Shadow_Out_item; - item_ptr[n] = AB_LINE_SHADOW_OUT; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_OUT; n++; item[n] = cgen->bframe_opmenu_items.Shadow_In_item; - item_ptr[n] = AB_LINE_SHADOW_IN; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_IN; n++; item[n] = cgen->bframe_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->bframe_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; prop_options_init(&(pds->frame), cgen->bframe_opmenu_label, cgen->bframe_opmenu, cgen->bframe_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_fchooser.c b/cde/programs/dtappbuilder/src/ab/pal_fchooser.c index a4a02b8f2..8fab0775d 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_fchooser.c +++ b/cde/programs/dtappbuilder/src/ab/pal_fchooser.c @@ -282,11 +282,11 @@ fchooser_prop_init( /* Search Pattern Type */ n = 0; item[n] = cgen->pattern_type_rbox_items.Files_item; - item_ptr[n] = AB_FILE_REGULAR; n++; + item_ptr[n] = (void *) AB_FILE_REGULAR; n++; item[n] = cgen->pattern_type_rbox_items.Directories_item; - item_ptr[n] = AB_FILE_DIRECTORY; n++; + item_ptr[n] = (void *) AB_FILE_DIRECTORY; n++; item[n] = cgen->pattern_type_rbox_items.Both_item; - item_ptr[n] = AB_FILE_ANY; n++; + item_ptr[n] = (void *) AB_FILE_ANY; n++; prop_radiobox_init(&(pcs->pattern_type), cgen->pattern_type_rbox_label, cgen->pattern_type_rbox, n, item, item_ptr, cgen->pattern_type_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_group.c b/cde/programs/dtappbuilder/src/ab/pal_group.c index 5da93db29..7f1d2ee1a 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_group.c +++ b/cde/programs/dtappbuilder/src/ab/pal_group.c @@ -742,15 +742,15 @@ group_prop_init( /* Border Frame Setting */ n = 0; item[n] = cgen->bframe_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->bframe_opmenu_items.Shadow_Out_item; - item_ptr[n] = AB_LINE_SHADOW_OUT; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_OUT; n++; item[n] = cgen->bframe_opmenu_items.Shadow_In_item; - item_ptr[n] = AB_LINE_SHADOW_IN; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_IN; n++; item[n] = cgen->bframe_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->bframe_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; prop_options_init(&(pgs->frame), cgen->bframe_opmenu_label, cgen->bframe_opmenu, cgen->bframe_opmenu_menu, n, item, item_ptr, @@ -759,13 +759,13 @@ group_prop_init( /* Layout Type */ n = 0; item[n] = cgen->layout_rbox_items.bitmaps_ggp_as_is_xbm_item; - item_ptr[n] = AB_GROUP_IGNORE; n++; + item_ptr[n] = (void *) AB_GROUP_IGNORE; n++; item[n] = cgen->layout_rbox_items.bitmaps_ggp_col_xbm_item; - item_ptr[n] = AB_GROUP_COLUMNS; n++; + item_ptr[n] = (void *) AB_GROUP_COLUMNS; n++; item[n] = cgen->layout_rbox_items.bitmaps_ggp_row_xbm_item; - item_ptr[n] = AB_GROUP_ROWS; n++; + item_ptr[n] = (void *) AB_GROUP_ROWS; n++; item[n] = cgen->layout_rbox_items.bitmaps_ggp_rowcol_xbm_item; - item_ptr[n] = AB_GROUP_ROWSCOLUMNS; n++; + item_ptr[n] = (void *) AB_GROUP_ROWSCOLUMNS; n++; prop_radiobox_init(&(pgs->layout_type), cgen->layout_rbox_label, cgen->layout_rbox, n, item, item_ptr, cgen->layout_cb1); @@ -781,9 +781,9 @@ group_prop_init( /* Grid Row/Columns */ n = 0; item[n] = cgen->gridrowcol_rbox_items.Rows_item; - item_ptr[n] = AB_ORIENT_HORIZONTAL; n++; + item_ptr[n] = (void *) AB_ORIENT_HORIZONTAL; n++; item[n] = cgen->gridrowcol_rbox_items.Columns_item; - item_ptr[n] = AB_ORIENT_VERTICAL; n++; + item_ptr[n] = (void *) AB_ORIENT_VERTICAL; n++; prop_radiobox_init(&(pgs->grid_rowcol), NULL, cgen->gridrowcol_rbox, n, item, item_ptr, cgen->gridrowcol_cb); @@ -795,13 +795,13 @@ group_prop_init( /* Vertical Alignment */ n = 0; item[n] = cgen->valign_opmenu_items.bitmaps_align_left_xbm_item; - item_ptr[n] = AB_ALIGN_LEFT; n++; + item_ptr[n] = (void *) AB_ALIGN_LEFT; n++; item[n] = cgen->valign_opmenu_items.bitmaps_align_labels_xbm_item; - item_ptr[n] = AB_ALIGN_LABELS; n++; + item_ptr[n] = (void *) AB_ALIGN_LABELS; n++; item[n] = cgen->valign_opmenu_items.bitmaps_align_vcenter_xbm_item; - item_ptr[n] = AB_ALIGN_VCENTER; n++; + item_ptr[n] = (void *) AB_ALIGN_VCENTER; n++; item[n] = cgen->valign_opmenu_items.bitmaps_align_right_xbm_item; - item_ptr[n] = AB_ALIGN_RIGHT; n++; + item_ptr[n] = (void *) AB_ALIGN_RIGHT; n++; prop_options_init(&(pgs->valign), cgen->valign_opmenu_label, cgen->valign_opmenu, cgen->valign_opmenu_menu, n, item, item_ptr, @@ -814,11 +814,11 @@ group_prop_init( /* Horizontal Alignment */ n = 0; item[n] = cgen->halign_opmenu_items.bitmaps_align_top_xbm_item; - item_ptr[n] = AB_ALIGN_TOP; n++; + item_ptr[n] = (void *) AB_ALIGN_TOP; n++; item[n] = cgen->halign_opmenu_items.bitmaps_align_hcenter_xbm_item; - item_ptr[n] = AB_ALIGN_HCENTER; n++; + item_ptr[n] = (void *) AB_ALIGN_HCENTER; n++; item[n] = cgen->halign_opmenu_items.bitmaps_align_bottom_xbm_item; - item_ptr[n] = AB_ALIGN_BOTTOM; n++; + item_ptr[n] = (void *) AB_ALIGN_BOTTOM; n++; prop_options_init(&(pgs->halign), cgen->halign_opmenu_label, cgen->halign_opmenu, cgen->halign_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_label.c b/cde/programs/dtappbuilder/src/ab/pal_label.c index a51d14353..9cadd116f 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_label.c +++ b/cde/programs/dtappbuilder/src/ab/pal_label.c @@ -257,9 +257,9 @@ label_prop_init( /* Label Type */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pls->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -274,11 +274,11 @@ label_prop_init( /* Label Align */ n = 0; item[n] = cgen->labelalign_opmenu_items.Left_item; - item_ptr[n] = AB_ALIGN_LEFT; n++; + item_ptr[n] = (void *) AB_ALIGN_LEFT; n++; item[n] = cgen->labelalign_opmenu_items.Centered_item; - item_ptr[n] = AB_ALIGN_CENTER; n++; + item_ptr[n] = (void *) AB_ALIGN_CENTER; n++; item[n] = cgen->labelalign_opmenu_items.Right_item; - item_ptr[n] = AB_ALIGN_RIGHT; n++; + item_ptr[n] = (void *) AB_ALIGN_RIGHT; n++; prop_options_init(&(pls->label_align), cgen->labelalign_opmenu_label, cgen->labelalign_opmenu, cgen->labelalign_opmenu_menu, n, item, item_ptr, @@ -287,9 +287,9 @@ label_prop_init( /* Size Policy */ n = 0; item[n] = cgen->szpolicy_rbox_items.Size_of_Label_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->szpolicy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pls->size_policy), cgen->szpolicy_rbox_label, cgen->szpolicy_rbox, n, item, item_ptr, cgen->szpolicy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_list.c b/cde/programs/dtappbuilder/src/ab/pal_list.c index 99b5b043e..2a62a78a8 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_list.c +++ b/cde/programs/dtappbuilder/src/ab/pal_list.c @@ -307,9 +307,9 @@ list_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pls->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -322,9 +322,9 @@ list_prop_init( n = 0; item[n] = cgen->labelpos_rbox_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; item[n] = cgen->labelpos_rbox_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; prop_options_init(&(pls->label_pos), cgen->labelpos_rbox_label, cgen->labelpos_rbox, cgen->labelpos_rbox_menu, n, item, item_ptr, @@ -333,13 +333,13 @@ list_prop_init( /* Selection Mode */ n = 0; item[n] = cgen->selmode_rbox_items.Single_Select_item; - item_ptr[n] = AB_SELECT_SINGLE; n++; + item_ptr[n] = (void *) AB_SELECT_SINGLE; n++; item[n] = cgen->selmode_rbox_items.Browse_Select_item; - item_ptr[n] = AB_SELECT_BROWSE; n++; + item_ptr[n] = (void *) AB_SELECT_BROWSE; n++; item[n] = cgen->selmode_rbox_items.Multiple_Select_item; - item_ptr[n] = AB_SELECT_MULTIPLE; n++; + item_ptr[n] = (void *) AB_SELECT_MULTIPLE; n++; item[n] = cgen->selmode_rbox_items.Browse_Multiple_Select_item; - item_ptr[n] = AB_SELECT_BROWSE_MULTIPLE; n++; + item_ptr[n] = (void *) AB_SELECT_BROWSE_MULTIPLE; n++; prop_options_init(&(pls->sel_mode), cgen->selmode_rbox_label, cgen->selmode_rbox, cgen->selmode_rbox_menu, n, item, item_ptr, @@ -355,9 +355,9 @@ list_prop_init( /* Width */ n = 0; item[n] = cgen->wpolicy_rbox_items.Longest_Item_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->wpolicy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pls->wth_policy), cgen->wpolicy_rbox_label, cgen->wpolicy_rbox, n, item, item_ptr, cgen->wpolicy_cb); @@ -381,9 +381,9 @@ list_prop_init( n = 0; item[n] = cgen->hgt_opmenu_items.Lines_item; - item_ptr[n] = SIZE_IN_CHARS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_CHARS_KEY; n++; item[n] = cgen->hgt_opmenu_items.Pixels_item; - item_ptr[n] = SIZE_IN_PIXELS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_PIXELS_KEY; n++; prop_options_init(&(pls->hgt_metric), cgen->hgt_opmenu_label, cgen->hgt_opmenu, cgen->hgt_opmenu_menu, diff --git a/cde/programs/dtappbuilder/src/ab/pal_mainwin.c b/cde/programs/dtappbuilder/src/ab/pal_mainwin.c index f4b0eefdc..60a4e06a1 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_mainwin.c +++ b/cde/programs/dtappbuilder/src/ab/pal_mainwin.c @@ -275,9 +275,9 @@ mainwin_prop_init( /* Resize Mode */ n = 0; item[n] = cgen->resizemode_rbox_items.Adjustable_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; item[n] = cgen->resizemode_rbox_items.Fixed_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; prop_radiobox_init(&(pms->resize_mode), cgen->resizemode_rbox_label, cgen->resizemode_rbox, n, item, item_ptr, cgen->resizemode_cb); @@ -309,9 +309,9 @@ mainwin_prop_init( /* Size Policy */ n = 0; item[n] = cgen->size_policy_rbox_items.Fit_Contents_item; - item_ptr[n] = SIZE_OF_CONTENTS_KEY; n++; + item_ptr[n] = (void *) SIZE_OF_CONTENTS_KEY; n++; item[n] = cgen->size_policy_rbox_items.Fixed_item; - item_ptr[n] = SIZE_FIXED_KEY; n++; + item_ptr[n] = (void *) SIZE_FIXED_KEY; n++; prop_radiobox_init(&(pms->size_policy), cgen->size_policy_rbox_label, cgen->size_policy_rbox, n, item, item_ptr, cgen->size_policy_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_menu.c b/cde/programs/dtappbuilder/src/ab/pal_menu.c index 0c70c7820..eae9ef61c 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_menu.c +++ b/cde/programs/dtappbuilder/src/ab/pal_menu.c @@ -339,9 +339,9 @@ menu_prop_init( /* Tear-off */ n = 0; item[n] = cgen->tearoff_rbox_items.Enabled_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; item[n] = cgen->tearoff_rbox_items.Disabled_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; prop_radiobox_init(&(pms->tearoff), cgen->tearoff_rbox_label, cgen->tearoff_rbox, n, item, item_ptr, cgen->tearoff_cb); @@ -368,11 +368,11 @@ menu_prop_init( cgen->itemlabel_field, cgen->itemlist_cb); n = 0; item[n] = cgen->itemlabeltype_opmenu_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->itemlabeltype_opmenu_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; item[n] = cgen->itemlabeltype_opmenu_items.Separator_item; - item_ptr[n] = AB_LABEL_SEPARATOR; n++; + item_ptr[n] = (void *) AB_LABEL_SEPARATOR; n++; prop_options_init(&(pms->item_label_type), cgen->itemlabeltype_opmenu_label, cgen->itemlabeltype_opmenu, cgen->itemlabeltype_opmenu_menu, n, item, item_ptr, cgen->itemlist_cb); @@ -392,23 +392,23 @@ menu_prop_init( /* Item Line Style */ n = 0; item[n] = cgen->linestyle_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->linestyle_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; item[n] = cgen->linestyle_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->linestyle_opmenu_items.Etched_In_Dash_item; - item_ptr[n] = AB_LINE_ETCHED_IN_DASH; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN_DASH; n++; item[n] = cgen->linestyle_opmenu_items.Etched_Out_Dash_item; - item_ptr[n] = AB_LINE_ETCHED_OUT_DASH; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT_DASH; n++; item[n] = cgen->linestyle_opmenu_items.Single_Line_item; - item_ptr[n] = AB_LINE_SINGLE_LINE; n++; + item_ptr[n] = (void *) AB_LINE_SINGLE_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Double_Line_item; - item_ptr[n] = AB_LINE_DOUBLE_LINE; n++; + item_ptr[n] = (void *) AB_LINE_DOUBLE_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Single_Dashed_Line_item; - item_ptr[n] = AB_LINE_SINGLE_DASHED_LINE; n++; + item_ptr[n] = (void *) AB_LINE_SINGLE_DASHED_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Double_Dashed_Line_item; - item_ptr[n] = AB_LINE_DOUBLE_DASHED_LINE; n++; + item_ptr[n] = (void *) AB_LINE_DOUBLE_DASHED_LINE; n++; prop_options_init(&(pms->item_line_style), cgen->linestyle_opmenu_label, cgen->linestyle_opmenu, cgen->linestyle_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_menubar.c b/cde/programs/dtappbuilder/src/ab/pal_menubar.c index a4ca52128..559b5eec2 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_menubar.c +++ b/cde/programs/dtappbuilder/src/ab/pal_menubar.c @@ -314,9 +314,9 @@ menubar_prop_init( cgen->itemlabel_field, cgen->itemlist_cb); n = 0; item[n] = cgen->itemlabel_opmenu_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->itemlabel_opmenu_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pms->item_label_type), cgen->item_labeltype_label, cgen->itemlabel_opmenu, cgen->itemlabel_opmenu_menu, n, item, item_ptr, cgen->itemlist_cb); diff --git a/cde/programs/dtappbuilder/src/ab/pal_panedwin.c b/cde/programs/dtappbuilder/src/ab/pal_panedwin.c index 17d72820c..c40bdb950 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_panedwin.c +++ b/cde/programs/dtappbuilder/src/ab/pal_panedwin.c @@ -218,7 +218,7 @@ panedwin_prop_init( DtbRevolvPropDialogInfo rpd = &(dtb_revolv_prop_dialog); PropPanedWinSettingsRec *pws = &(prop_pw_settings_rec[type]); Widget item[2]; - int item_val[2]; + XtArgVal item_val[2]; int n = 0; if (type == AB_PROP_REVOLVING) diff --git a/cde/programs/dtappbuilder/src/ab/pal_scale.c b/cde/programs/dtappbuilder/src/ab/pal_scale.c index f60eea246..88bd765d7 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_scale.c +++ b/cde/programs/dtappbuilder/src/ab/pal_scale.c @@ -292,9 +292,9 @@ scale_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_opmenu_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_opmenu_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pss->label_type), cgen->labeltype_opmenu_label, cgen->labeltype_opmenu, cgen->labeltype_opmenu_menu, @@ -308,9 +308,9 @@ scale_prop_init( n = 0; item[n] = cgen->labelpos_opmenu_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; item[n] = cgen->labelpos_opmenu_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; prop_options_init(&(pss->label_pos), cgen->labelpos_opmenu_label, cgen->labelpos_opmenu, cgen->labelpos_opmenu_menu, @@ -320,9 +320,9 @@ scale_prop_init( /* Scale Type */ n = 0; item[n] = cgen->scaletype_rbox_items.Scale_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; item[n] = cgen->scaletype_rbox_items.Gauge_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; prop_radiobox_init(&(pss->scale_type), cgen->scaletype_rbox_label, cgen->scaletype_rbox, n, item, item_ptr, cgen->scaletype_cb); @@ -338,9 +338,9 @@ scale_prop_init( /* Orientation */ n = 0; item[n] = cgen->orient_rbox_items.Horizontal_item; - item_ptr[n] = AB_ORIENT_HORIZONTAL; n++; + item_ptr[n] = (void *) AB_ORIENT_HORIZONTAL; n++; item[n] = cgen->orient_rbox_items.Vertical_item; - item_ptr[n] = AB_ORIENT_VERTICAL; n++; + item_ptr[n] = (void *) AB_ORIENT_VERTICAL; n++; prop_radiobox_init(&(pss->orient), cgen->orient_rbox_label, cgen->orient_rbox, n, item, item_ptr, cgen->orient_cb); @@ -352,13 +352,13 @@ scale_prop_init( /* Direction */ n = 0; item[n] = cgen->dir_opmenu_items.Left_to_Right_item; - item_ptr[n] = AB_DIR_LEFT_TO_RIGHT; n++; + item_ptr[n] = (void *) AB_DIR_LEFT_TO_RIGHT; n++; item[n] = cgen->dir_opmenu_items.Right_to_Left_item; - item_ptr[n] = AB_DIR_RIGHT_TO_LEFT; n++; + item_ptr[n] = (void *) AB_DIR_RIGHT_TO_LEFT; n++; item[n] = cgen->dir_opmenu_items.Top_to_Bottom_item; - item_ptr[n] = AB_DIR_TOP_TO_BOTTOM; n++; + item_ptr[n] = (void *) AB_DIR_TOP_TO_BOTTOM; n++; item[n] = cgen->dir_opmenu_items.Bottom_to_Top_item; - item_ptr[n] = AB_DIR_BOTTOM_TO_TOP; n++; + item_ptr[n] = (void *) AB_DIR_BOTTOM_TO_TOP; n++; prop_options_init(&(pss->dir), cgen->dir_opmenu_label, cgen->dir_opmenu, cgen->dir_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_sep.c b/cde/programs/dtappbuilder/src/ab/pal_sep.c index 9494ca3f0..039f8659b 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_sep.c +++ b/cde/programs/dtappbuilder/src/ab/pal_sep.c @@ -255,9 +255,9 @@ separator_prop_init( /* Orientation */ n = 0; item[n] = cgen->orient_rbox_items.Horizontal_item; - item_ptr[n] = AB_ORIENT_HORIZONTAL; n++; + item_ptr[n] = (void *) AB_ORIENT_HORIZONTAL; n++; item[n] = cgen->orient_rbox_items.Vertical_item; - item_ptr[n] = AB_ORIENT_VERTICAL; n++; + item_ptr[n] = (void *) AB_ORIENT_VERTICAL; n++; prop_radiobox_init(&(pss->orient), cgen->orient_rbox_label, cgen->orient_rbox, n, item, item_ptr, cgen->orient_cb); @@ -265,23 +265,23 @@ separator_prop_init( /* Line Style */ n = 0; item[n] = cgen->linestyle_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->linestyle_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; item[n] = cgen->linestyle_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->linestyle_opmenu_items.Etched_In_Dash_item; - item_ptr[n] = AB_LINE_ETCHED_IN_DASH; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN_DASH; n++; item[n] = cgen->linestyle_opmenu_items.Etched_Out_Dash_item; - item_ptr[n] = AB_LINE_ETCHED_OUT_DASH; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT_DASH; n++; item[n] = cgen->linestyle_opmenu_items.Single_Line_item; - item_ptr[n] = AB_LINE_SINGLE_LINE; n++; + item_ptr[n] = (void *) AB_LINE_SINGLE_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Double_Line_item; - item_ptr[n] = AB_LINE_DOUBLE_LINE; n++; + item_ptr[n] = (void *) AB_LINE_DOUBLE_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Single_Dashed_Line_item; - item_ptr[n] = AB_LINE_SINGLE_DASHED_LINE; n++; + item_ptr[n] = (void *) AB_LINE_SINGLE_DASHED_LINE; n++; item[n] = cgen->linestyle_opmenu_items.Double_Dashed_Line_item; - item_ptr[n] = AB_LINE_DOUBLE_DASHED_LINE; n++; + item_ptr[n] = (void *) AB_LINE_DOUBLE_DASHED_LINE; n++; prop_options_init(&(pss->line_style), cgen->linestyle_opmenu_label, cgen->linestyle_opmenu, cgen->linestyle_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_spinbox.c b/cde/programs/dtappbuilder/src/ab/pal_spinbox.c index 818aca210..a0582b3b9 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_spinbox.c +++ b/cde/programs/dtappbuilder/src/ab/pal_spinbox.c @@ -293,9 +293,9 @@ spinbox_prop_init( /* Spinbox Type */ n = 0; item[n] = cgen->spinboxtype_rbox_items.Numeric_item; - item_ptr[n] = AB_TEXT_NUMERIC; n++; + item_ptr[n] = (void *) AB_TEXT_NUMERIC; n++; item[n] = cgen->spinboxtype_rbox_items.String_List_item; - item_ptr[n] = AB_TEXT_DEFINED_STRING; n++; + item_ptr[n] = (void *) AB_TEXT_DEFINED_STRING; n++; prop_radiobox_init(&(pss->spinbox_type), cgen->spinboxtype_rbox_label, cgen->spinboxtype_rbox, n, item, item_ptr, cgen->spinboxtype_cb); @@ -306,9 +306,9 @@ spinbox_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pss->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -321,9 +321,9 @@ spinbox_prop_init( n = 0; item[n] = cgen->labelpos_rbox_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; item[n] = cgen->labelpos_rbox_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; prop_options_init(&(pss->label_pos), cgen->labeltype_rbox_label, cgen->labelpos_rbox, cgen->labelpos_rbox_menu, n, item, item_ptr, @@ -332,15 +332,15 @@ spinbox_prop_init( /* Arrow Style */ n = 0; item[n] = cgen->arrowstyle_opmenu_items.Flat_Beginning_item; - item_ptr[n] = AB_ARROW_FLAT_BEGIN; n++; + item_ptr[n] = (void *) AB_ARROW_FLAT_BEGIN; n++; item[n] = cgen->arrowstyle_opmenu_items.Flat_End_item; - item_ptr[n] = AB_ARROW_FLAT_END; n++; + item_ptr[n] = (void *) AB_ARROW_FLAT_END; n++; item[n] = cgen->arrowstyle_opmenu_items.Beginning_item; - item_ptr[n] = AB_ARROW_BEGIN; n++; + item_ptr[n] = (void *) AB_ARROW_BEGIN; n++; item[n] = cgen->arrowstyle_opmenu_items.End_item; - item_ptr[n] = AB_ARROW_END; n++; + item_ptr[n] = (void *) AB_ARROW_END; n++; item[n] = cgen->arrowstyle_opmenu_items.Split_item; - item_ptr[n] = AB_ARROW_SPLIT; n++; + item_ptr[n] = (void *) AB_ARROW_SPLIT; n++; prop_options_init(&(pss->arrow_style), cgen->arrowstyle_opmenu_label, cgen->arrowstyle_opmenu, cgen->arrowstyle_opmenu_menu, n, item, item_ptr, diff --git a/cde/programs/dtappbuilder/src/ab/pal_termp.c b/cde/programs/dtappbuilder/src/ab/pal_termp.c index ca427b1f9..873bb1606 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_termp.c +++ b/cde/programs/dtappbuilder/src/ab/pal_termp.c @@ -267,9 +267,9 @@ termp_prop_init( /* Scrolling */ n = 0; item[n] = cgen->scroll_rbox_items.Never_item; - item_ptr[n] = AB_SCROLLBAR_NEVER; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_NEVER; n++; item[n] = cgen->scroll_rbox_items.Always_item; - item_ptr[n] = AB_SCROLLBAR_ALWAYS; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_ALWAYS; n++; prop_radiobox_init(&(pts->scrolling), cgen->scroll_rbox_label, cgen->scroll_rbox, n, item, item_ptr, cgen->scroll_cb); @@ -277,15 +277,15 @@ termp_prop_init( /* Border Frame */ n = 0; item[n] = cgen->bframe_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->bframe_opmenu_items.Shadow_Out_item; - item_ptr[n] = AB_LINE_SHADOW_OUT; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_OUT; n++; item[n] = cgen->bframe_opmenu_items.Shadow_In_item; - item_ptr[n] = AB_LINE_SHADOW_IN; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_IN; n++; item[n] = cgen->bframe_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->bframe_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; prop_options_init(&(pts->frame), cgen->bframe_opmenu_label, cgen->bframe_opmenu, cgen->bframe_opmenu_menu, n, item, item_ptr, @@ -322,9 +322,9 @@ termp_prop_init( n = 0; item[n] = cgen->size_opmenu_items.Characters_item; - item_ptr[n] = SIZE_IN_CHARS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_CHARS_KEY; n++; item[n] = cgen->size_opmenu_items.Pixels_item; - item_ptr[n] = SIZE_IN_PIXELS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_PIXELS_KEY; n++; prop_options_init(&(pts->size_metric), cgen->size_opmenu_label, cgen->size_opmenu, cgen->size_opmenu_menu, diff --git a/cde/programs/dtappbuilder/src/ab/pal_textf.c b/cde/programs/dtappbuilder/src/ab/pal_textf.c index 09368a20f..4d5fd2a5a 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_textf.c +++ b/cde/programs/dtappbuilder/src/ab/pal_textf.c @@ -259,9 +259,9 @@ textf_prop_init( /* Label, Type, Position */ n = 0; item[n] = cgen->labeltype_rbox_items.String_item; - item_ptr[n] = AB_LABEL_STRING; n++; + item_ptr[n] = (void *) AB_LABEL_STRING; n++; item[n] = cgen->labeltype_rbox_items.Graphic_item; - item_ptr[n] = AB_LABEL_GLYPH; n++; + item_ptr[n] = (void *) AB_LABEL_GLYPH; n++; prop_options_init(&(pts->label_type), cgen->labeltype_rbox_label, cgen->labeltype_rbox, cgen->labeltype_rbox_menu, n, item, item_ptr, @@ -273,9 +273,9 @@ textf_prop_init( n = 0; item[n] = cgen->labelpos_rbox_items.Left_item; - item_ptr[n] = AB_CP_WEST; n++; + item_ptr[n] = (void *) AB_CP_WEST; n++; item[n] = cgen->labelpos_rbox_items.Above_item; - item_ptr[n] = AB_CP_NORTH; n++; + item_ptr[n] = (void *) AB_CP_NORTH; n++; prop_options_init(&(pts->label_pos), cgen->labelpos_rbox_label, cgen->labelpos_rbox, cgen->labelpos_rbox_menu, n, item, item_ptr, @@ -291,9 +291,9 @@ textf_prop_init( /* Operation */ n = 0; item[n] = cgen->op_rbox_items.Editable_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; item[n] = cgen->op_rbox_items.Read_Only_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; prop_radiobox_init(&(pts->op), cgen->op_rbox_label, cgen->op_rbox, n, item, item_ptr, cgen->op_cb); @@ -322,9 +322,9 @@ textf_prop_init( n = 0; item[n] = cgen->width_opmenu_items.Characters_item; - item_ptr[n] = SIZE_IN_CHARS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_CHARS_KEY; n++; item[n] = cgen->width_opmenu_items.Pixels_item; - item_ptr[n] = SIZE_IN_PIXELS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_PIXELS_KEY; n++; prop_options_init(&(pts->size_metric), cgen->width_opmenu_label, cgen->width_opmenu, cgen->width_opmenu_menu, diff --git a/cde/programs/dtappbuilder/src/ab/pal_textp.c b/cde/programs/dtappbuilder/src/ab/pal_textp.c index 51e0034a9..e4fdf3b13 100644 --- a/cde/programs/dtappbuilder/src/ab/pal_textp.c +++ b/cde/programs/dtappbuilder/src/ab/pal_textp.c @@ -270,9 +270,9 @@ textp_prop_init( /* Scrolling */ n = 0; item[n] = cgen->scroll_rbox_items.Never_item; - item_ptr[n] = AB_SCROLLBAR_NEVER; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_NEVER; n++; item[n] = cgen->scroll_rbox_items.Always_item; - item_ptr[n] = AB_SCROLLBAR_ALWAYS; n++; + item_ptr[n] = (void *) AB_SCROLLBAR_ALWAYS; n++; prop_radiobox_init(&(pts->scrolling), cgen->scroll_rbox_label, cgen->scroll_rbox, n, item, item_ptr, cgen->scroll_cb); @@ -280,15 +280,15 @@ textp_prop_init( /* Border Frame */ n = 0; item[n] = cgen->bframe_opmenu_items.None_item; - item_ptr[n] = AB_LINE_NONE; n++; + item_ptr[n] = (void *) AB_LINE_NONE; n++; item[n] = cgen->bframe_opmenu_items.Shadow_Out_item; - item_ptr[n] = AB_LINE_SHADOW_OUT; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_OUT; n++; item[n] = cgen->bframe_opmenu_items.Shadow_In_item; - item_ptr[n] = AB_LINE_SHADOW_IN; n++; + item_ptr[n] = (void *) AB_LINE_SHADOW_IN; n++; item[n] = cgen->bframe_opmenu_items.Etched_Out_item; - item_ptr[n] = AB_LINE_ETCHED_OUT; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_OUT; n++; item[n] = cgen->bframe_opmenu_items.Etched_In_item; - item_ptr[n] = AB_LINE_ETCHED_IN; n++; + item_ptr[n] = (void *) AB_LINE_ETCHED_IN; n++; prop_options_init(&(pts->frame), cgen->bframe_opmenu_label, cgen->bframe_opmenu, cgen->bframe_opmenu_menu, n, item, item_ptr, @@ -297,9 +297,9 @@ textp_prop_init( /* Operation */ n = 0; item[n] = cgen->op_rbox_items.Editable_item; - item_ptr[n] = False; n++; + item_ptr[n] = (void *) False; n++; item[n] = cgen->op_rbox_items.Read_Only_item; - item_ptr[n] = True; n++; + item_ptr[n] = (void *) True; n++; prop_radiobox_init(&(pts->op), cgen->op_rbox_label, cgen->op_rbox, n, item, item_ptr, cgen->op_cb); @@ -343,9 +343,9 @@ textp_prop_init( n = 0; item[n] = cgen->size_opmenu_items.Characters_item; - item_ptr[n] = SIZE_IN_CHARS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_CHARS_KEY; n++; item[n] = cgen->size_opmenu_items.Pixels_item; - item_ptr[n] = SIZE_IN_PIXELS_KEY; n++; + item_ptr[n] = (void *) SIZE_IN_PIXELS_KEY; n++; prop_options_init(&(pts->size_metric), cgen->size_opmenu_label, cgen->size_opmenu, cgen->size_opmenu_menu, diff --git a/cde/programs/dtappbuilder/src/abmf/Makefile.am b/cde/programs/dtappbuilder/src/abmf/Makefile.am index 4578520f1..ee697131a 100644 --- a/cde/programs/dtappbuilder/src/abmf/Makefile.am +++ b/cde/programs/dtappbuilder/src/abmf/Makefile.am @@ -44,7 +44,7 @@ dtcodegen_SOURCES = abmf.c args.c \ utils_header_file.c write_c.c \ write_code.c -#ab_func_strings_LDADD = -lm ../libAButil/libAButil.a +#ab_func_strings_LDADD = ../libAButil/libAButil.a #ab_func_strings_SOURCES = ab_func_strings.c diff --git a/cde/programs/dtappbuilder/src/abmf/make_file.c b/cde/programs/dtappbuilder/src/abmf/make_file.c index 3c443b44c..211cebd18 100644 --- a/cde/programs/dtappbuilder/src/abmf/make_file.c +++ b/cde/programs/dtappbuilder/src/abmf/make_file.c @@ -99,7 +99,6 @@ static int write_os_params( AbmfLibs libs ); static int write_aix_stuff(File makeFile, AbmfLibs libs); -static int write_hpux_stuff(File makeFile, AbmfLibs libs); static int write_sunos_params(File makeFile, AbmfLibs libs); static int write_lnx_params(File makeFile, AbmfLibs libs); static int write_fbsd_params(File makeFile, AbmfLibs libs); @@ -107,7 +106,6 @@ static int write_nbsd_params(File makeFile, AbmfLibs libs); static int write_obsd_params(File makeFile, AbmfLibs libs); static int determine_aix_libs(AbmfLibs libs, ABObj project); -static int determine_hpux_libs(AbmfLibs libs, ABObj project); static int determine_sunos_libs(AbmfLibs libs, ABObj project); static int determine_lnx_libs(AbmfLibs libs, ABObj project); static int determine_fbsd_libs(AbmfLibs libs, ABObj project); @@ -196,11 +194,6 @@ determine_libs(AbmfLibs libs, ABObj project, AB_OS_TYPE osType) lib_add(libs, LibICE, ABMF_LIB_APPEND, ABMF_LIB_REJECT_DUP); lib_add(libs, LibSM, ABMF_LIB_APPEND, ABMF_LIB_REJECT_DUP); lib_add(libs, LibXp, ABMF_LIB_APPEND, ABMF_LIB_REJECT_DUP); - - if (osType == AB_OS_HPUX) - { - lib_add(libs, LibTt, ABMF_LIB_APPEND, ABMF_LIB_REJECT_DUP); - } } if (projData->has_terminal) @@ -217,10 +210,6 @@ determine_libs(AbmfLibs libs, ABObj project, AB_OS_TYPE osType) return_value = determine_aix_libs(libs, project); break; - case AB_OS_HPUX: - return_value = determine_hpux_libs(libs, project); - break; - case AB_OS_SUNOS: return_value = determine_sunos_libs(libs, project); break; @@ -247,18 +236,6 @@ determine_aix_libs(AbmfLibs libs, ABObj project) return 0; } - -static int -determine_hpux_libs(AbmfLibs libs, ABObj project) -{ - /* - lib_add(libs, LibWlarchive, ABMF_LIB_PREPEND, ABMF_LIB_REPLACE_DUP); - lib_add(libs, LibWldefault, ABMF_LIB_APPEND, ABMF_LIB_REPLACE_DUP); - */ - return 0; -} - - static int determine_sunos_libs(AbmfLibs libs, ABObj project) { @@ -476,10 +453,6 @@ write_os_params( return_value = write_aix_stuff(makeFile, libs); break; - case AB_OS_HPUX: - return_value = write_hpux_stuff(makeFile, libs); - break; - case AB_OS_SUNOS: return_value = write_sunos_params(makeFile, libs); break; @@ -551,52 +524,6 @@ write_aix_stuff(File makeFile, AbmfLibs libs) } -static int -write_hpux_stuff(File makeFile, AbmfLibs libs) -{ - STRING osName = util_os_type_to_string(AB_OS_HPUX); - - abio_printf(makeFile, -"###########################################################################\n" -"# These are the %s-dependent configuration parameters that must be\n" -"# set in order for any application to build.\n" -"###########################################################################\n", - osName); - - abio_puts(makeFile, "\n"); - abio_puts(makeFile, -" RM = rm -f\n" -" INCLUDES = -I/usr/dt/include -I/X11/include\n" -"\n" -" STD_DEFINES = -DSYSV -DNLS16 -DMALLOC_0_RETURNS_NULL -DMERGE -DNDEBUG" - " -D__hpux -Dhpux -DOSMAJORVERSION=9 -DOSMINORVERSION=0 -DSHMLINK" - " -D__hp9000s800 -Dhp9000s800 -Dhp9000s700 -DHPPEX\n" -" ANSI_DEFINES = -Aa -D_HPUX_SOURCE -DANSICPP\n" -"\n" -" CDEBUGFLAGS = -g -z\n" -" COPTFLAGS = -O -z\n" -" SYS_LIBRARIES = -lm\n" -" CDE_LIBPATH = /usr/dt/lib\n" -" CDE_LDFLAGS = -L$(CDE_LIBPATH)\n" -" ALLX_LIBPATH = /X11/lib\n" -" ALLX_LDFLAGS = -L$(ALLX_LIBPATH)\n" -); - - write_local_libraries(makeFile, libs, AB_OS_HPUX); - - abio_puts(makeFile, -"\n" -" CFLAGS = $(CDEBUGFLAGS) $(INCLUDES) $(STD_DEFINES)" - " $(ANSI_DEFINES)\n" -" LDLIBS = $(SYS_LIBRARIES)\n" -" LDOPTIONS = $(CDE_LDFLAGS) $(ALLX_LDFLAGS)\n" -"\n" -); - - return 0; -} - - static int write_sunos_params(File makeFile, AbmfLibs libs) { @@ -1159,7 +1086,7 @@ write_targets( "\n" "scour:\n" " $(RM) $(CLEAN_FILES) $(TARGETS.h.merged) $(TARGETS.c.merged) \\\n" -" Makefile Makefile.aix Makefile.hpux Makefile.sunos \\\n" +" Makefile Makefile.aix Makefile.sunos \\\n" " Makefile.linux \\\n" " Makefile.freebsd Makefile.netbsd Makefile.openbsd\n" ); diff --git a/cde/programs/dtappbuilder/src/include/ab_private/util.h b/cde/programs/dtappbuilder/src/include/ab_private/util.h index aceedbd00..a67dd3af2 100644 --- a/cde/programs/dtappbuilder/src/include/ab_private/util.h +++ b/cde/programs/dtappbuilder/src/include/ab_private/util.h @@ -78,7 +78,6 @@ extern char *strdup(const char *); typedef enum { AB_OS_UNDEF = 0, - AB_OS_HPUX, AB_OS_AIX, AB_OS_SUNOS, AB_OS_LNX, diff --git a/cde/programs/dtappbuilder/src/libABil/Makefile.am b/cde/programs/dtappbuilder/src/libABil/Makefile.am index 1fc2ab05e..a9873fcaf 100644 --- a/cde/programs/dtappbuilder/src/libABil/Makefile.am +++ b/cde/programs/dtappbuilder/src/libABil/Makefile.am @@ -8,10 +8,6 @@ BUILT_SOURCES = bil_parse.h bil_parse.c CLEANFILES = bil_parse.h bil_parse.c AM_YFLAGS = -d -if HPUX -CCOPTIONS = -Ae -endif - noinst_LIBRARIES = libABil.a #noinst_PROGRAMS = bil_test diff --git a/cde/programs/dtappbuilder/src/libABil/bil_parse.y b/cde/programs/dtappbuilder/src/libABil/bil_parse.y index 6856554ef..55aefb6bc 100644 --- a/cde/programs/dtappbuilder/src/libABil/bil_parse.y +++ b/cde/programs/dtappbuilder/src/libABil/bil_parse.y @@ -25,6 +25,8 @@ #define TOK (bilP_load_get_token()) +void yyerror(char *); +int yylex(void); %} /* * We assume that yacc spits out the symbols in the order they are diff --git a/cde/programs/dtappbuilder/src/libABobj/Makefile.am b/cde/programs/dtappbuilder/src/libABobj/Makefile.am index 3bf1128f7..af17282a9 100644 --- a/cde/programs/dtappbuilder/src/libABobj/Makefile.am +++ b/cde/programs/dtappbuilder/src/libABobj/Makefile.am @@ -4,10 +4,8 @@ ABINCLUDES = ../include EXTRA_DEFINES = -D_POSIX_SOURCE=1 -EXTRALIBS = -lm - if SOLARIS -EXTRALIBS += -ldl -lgen +EXTRALIBS = -lgen endif noinst_LIBRARIES = libABobj.a diff --git a/cde/programs/dtappbuilder/src/libABobjXm/Makefile.am b/cde/programs/dtappbuilder/src/libABobjXm/Makefile.am index 2e15f3c2e..ed0151061 100644 --- a/cde/programs/dtappbuilder/src/libABobjXm/Makefile.am +++ b/cde/programs/dtappbuilder/src/libABobjXm/Makefile.am @@ -4,10 +4,6 @@ ABINCLUDES = ../include EXTRA_DEFINES = -D_POSIX_SOURCE=1 -if HPUX -CCOPTIONS = -Ae -endif - noinst_LIBRARIES = libABobjXm.a libABobjXm_a_CFLAGS = $(EXTRA_DEFINES) -I$(ABINCLUDES) diff --git a/cde/programs/dtappbuilder/src/libAButil/Makefile.am b/cde/programs/dtappbuilder/src/libAButil/Makefile.am index 71dae306b..af3aa55ac 100644 --- a/cde/programs/dtappbuilder/src/libAButil/Makefile.am +++ b/cde/programs/dtappbuilder/src/libAButil/Makefile.am @@ -4,10 +4,6 @@ ABINCLUDES = ../include EXTRA_DEFINES = -D_POSIX_SOURCE=1 -if HPUX -CCOPTIONS = -Ae -endif - noinst_LIBRARIES = libAButil.a #noinst_PROGRAMS = util_test istr_test @@ -25,13 +21,13 @@ libAButil_a_SOURCES = abio.c \ util_file.c \ util_string.c -#util_test_LDADD = libAButil.a -lm +#util_test_LDADD = libAButil.a #util_test_CFLAGS = $(EXTRA_DEFINES) -I$(ABINCLUDES) #util_test_SOURCES = util_test.c -#istr_test_LDADD = libAButil.a -lm +#istr_test_LDADD = libAButil.a #istr_test_CFLAGS = $(EXTRA_DEFINES) -I$(ABINCLUDES) diff --git a/cde/programs/dtappbuilder/src/libAButil/util.c b/cde/programs/dtappbuilder/src/libAButil/util.c index b7e62c336..7d49ee4da 100644 --- a/cde/programs/dtappbuilder/src/libAButil/util.c +++ b/cde/programs/dtappbuilder/src/libAButil/util.c @@ -230,17 +230,6 @@ util_vfork(void) /* * putenv() is non-POSIX, so the parameter types can vary a bit... */ -#ifdef __cplusplus -extern "C" { -#endif -#if defined(__hpux) || (defined(sun) && OSMAJORVERSION >= 5 && OSMINORVERSION >= 4 && OSMINORVERSION <=10 ) - extern int putenv(const char *string); -#elif !(defined(__aix) || defined(__NetBSD__)) - extern int putenv(char *string); -#endif -#ifdef __cplusplus -} // extern "C" -#endif int util_putenv(STRING string) { @@ -258,7 +247,6 @@ util_get_os_type(void) int rc = 0; /* return code */ struct utsname sysInfo; int aixIndex = -1; - int hpIndex = -1; int sunIndex = -1; int lnxIndex = -1; int fbsdIndex = -1; @@ -275,7 +263,6 @@ util_get_os_type(void) } aixIndex = util_strcasestr(sysInfo.sysname, "aix"); - hpIndex = util_strcasestr(sysInfo.sysname, "hp"); sunIndex = util_strcasestr(sysInfo.sysname, "sun"); lnxIndex = util_strcasestr(sysInfo.sysname, "linux"); fbsdIndex = util_strcasestr(sysInfo.sysname, "freebsd"); @@ -283,49 +270,36 @@ util_get_os_type(void) obsdIndex = util_strcasestr(sysInfo.sysname, "openbsd"); if (aixIndex < 0) aixIndex = INT_MAX; - if (hpIndex < 0) hpIndex = INT_MAX; if (sunIndex < 0) sunIndex = INT_MAX; if (lnxIndex < 0) lnxIndex = INT_MAX; if (fbsdIndex < 0) fbsdIndex = INT_MAX; if (nbsdIndex < 0) nbsdIndex = INT_MAX; if (obsdIndex < 0) obsdIndex = INT_MAX; -#define IS_MATCH(a,b,c,d,e,f,g) \ - (((a) < (b)) && ((a) < (c)) && ((a) < (d)) && ((a) < (e)) && ((a) < (f)) && \ - ((a) < (g))) +#define IS_MATCH(a,b,c,d,e,f) \ + (((a) < (b)) && ((a) < (c)) && ((a) < (d)) && ((a) < (e)) && ((a) < (f))) - if (IS_MATCH(aixIndex, hpIndex, sunIndex, lnxIndex, fbsdIndex, nbsdIndex, - obsdIndex)) + if (IS_MATCH(aixIndex, sunIndex, lnxIndex, fbsdIndex, nbsdIndex, obsdIndex)) { return AB_OS_AIX; } - if (IS_MATCH(hpIndex, aixIndex, sunIndex, lnxIndex, fbsdIndex, nbsdIndex, - obsdIndex)) - { - return AB_OS_HPUX; - } - if (IS_MATCH(sunIndex, aixIndex, hpIndex, lnxIndex, fbsdIndex, nbsdIndex, - obsdIndex)) + if (IS_MATCH(sunIndex, aixIndex, lnxIndex, fbsdIndex, nbsdIndex, obsdIndex)) { return AB_OS_SUNOS; } - if (IS_MATCH(lnxIndex, aixIndex, hpIndex, sunIndex, fbsdIndex, nbsdIndex, - obsdIndex)) + if (IS_MATCH(lnxIndex, aixIndex, sunIndex, fbsdIndex, nbsdIndex, obsdIndex)) { return AB_OS_LNX; } - if (IS_MATCH(fbsdIndex, aixIndex, hpIndex, sunIndex, lnxIndex, nbsdIndex, - obsdIndex)) + if (IS_MATCH(fbsdIndex, aixIndex, sunIndex, lnxIndex, nbsdIndex, obsdIndex)) { return AB_OS_FBSD; } - if (IS_MATCH(nbsdIndex, aixIndex, hpIndex, sunIndex, lnxIndex, fbsdIndex, - obsdIndex)) + if (IS_MATCH(nbsdIndex, aixIndex, sunIndex, lnxIndex, fbsdIndex, obsdIndex)) { return AB_OS_NBSD; } - if (IS_MATCH(obsdIndex, aixIndex, hpIndex, sunIndex, lnxIndex, fbsdIndex, - nbsdIndex)) + if (IS_MATCH(obsdIndex, aixIndex, sunIndex, lnxIndex, fbsdIndex, nbsdIndex)) { return AB_OS_OBSD; } diff --git a/cde/programs/dtappbuilder/src/libAButil/util_convert.c b/cde/programs/dtappbuilder/src/libAButil/util_convert.c index c319d39b5..3b7622748 100644 --- a/cde/programs/dtappbuilder/src/libAButil/util_convert.c +++ b/cde/programs/dtappbuilder/src/libAButil/util_convert.c @@ -852,7 +852,6 @@ util_os_type_to_ident(AB_OS_TYPE osType) switch (osType) { case AB_OS_AIX: typeString = "aix"; break; - case AB_OS_HPUX: typeString = "hpux"; break; case AB_OS_SUNOS: typeString = "sunos"; break; case AB_OS_LNX: typeString = "linux"; break; case AB_OS_FBSD: typeString = "freebsd"; break; @@ -875,7 +874,6 @@ util_os_type_to_string(AB_OS_TYPE osType) switch (osType) { case AB_OS_AIX: nameString = "AIX"; break; - case AB_OS_HPUX: nameString = "HP-UX"; break; case AB_OS_SUNOS: nameString = "SunOS"; break; case AB_OS_LNX: nameString = "Linux"; break; case AB_OS_FBSD: nameString = "FreeBSD"; break; diff --git a/cde/programs/dtcalc/Makefile.am b/cde/programs/dtcalc/Makefile.am index f86bf3a7b..c9bc32d1a 100644 --- a/cde/programs/dtcalc/Makefile.am +++ b/cde/programs/dtcalc/Makefile.am @@ -7,7 +7,7 @@ dtcalc_CPPFLAGS = -DCDE_INSTALLATION_TOP=\"$(CDE_INSTALLATION_TOP)\" dtcalc_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) if SOLARIS -dtcalc_LDADD += -lintl -ldl +dtcalc_LDADD += -lintl endif diff --git a/cde/programs/dtcalc/calctool.c b/cde/programs/dtcalc/calctool.c index 279582000..756e728a4 100644 --- a/cde/programs/dtcalc/calctool.c +++ b/cde/programs/dtcalc/calctool.c @@ -46,7 +46,6 @@ #include "patchlevel.h" #include "calctool.h" #include "ds_common.h" -#include "calctool.h" #include "text.h" static double max_fix[4] = { @@ -1203,8 +1202,8 @@ make_number(int *MPnumber, BOOLEAN mkFix) /*ARGSUSED*/ /* Default math library exception handling routine. */ -int -matherr(struct exception *exc) +void +math_err(void) { #if 0 char msg[100]; @@ -1232,7 +1231,6 @@ matherr(struct exception *exc) #endif doerr(vstrs[(int) V_ERROR]) ; - return(1) ; /* Value ignored. */ } /* Convert string into an MP number. */ diff --git a/cde/programs/dtcalc/calctool.h b/cde/programs/dtcalc/calctool.h index 3377e9f47..a6b631562 100644 --- a/cde/programs/dtcalc/calctool.h +++ b/cde/programs/dtcalc/calctool.h @@ -91,16 +91,6 @@ extern char *_DtGetMessage(char *filename, int set, int n, char *s); #endif #endif /* sun */ -#ifdef hpux -#define HIL_PC101_KBD 1 -#define HIL_ITF_KBD 2 -#define SERIAL_PC101_KBD 3 -#define FIRST_HIL_KBD 0xC0 -#define LAST_HIL_KBD 0xDF -#define LED_BITS 0x30 -#define PS2_DIN_NAME "PS2_DIN_KEYBOARD" -#endif - #include #define MEM 1 @@ -535,9 +525,6 @@ struct calcVars { /* Calctool variables and options. */ int funstate ; /* whether the last key pressed was a fin. func. key*/ int defState ; /* Set when calculator has just been cleared */ -#ifdef hpux - int keybdID; -#endif }; extern struct calcVars CalcVars; @@ -649,6 +636,7 @@ void make_items(void); void make_modewin(void); void make_fin_registers(void); void make_registers(int); +void math_err(void); void MPstr_to_num(char *, enum base_type, int *); void paren_disp(char); void process_event(int); diff --git a/cde/programs/dtcalc/functions.c b/cde/programs/dtcalc/functions.c index fa96fe484..8bcaaf618 100644 --- a/cde/programs/dtcalc/functions.c +++ b/cde/programs/dtcalc/functions.c @@ -677,7 +677,7 @@ do_factorial(int *MPval, int *MPres) /* Calculate the factorial of MPval. */ } mpcim(&i, MPa) ; mpcmi(MP1, &i) ; - if (!i) matherr((struct exception *) NULL) ; + if (!i) math_err() ; else while (i > 0) { @@ -687,7 +687,7 @@ do_factorial(int *MPval, int *MPres) /* Calculate the factorial of MPval. */ i-- ; } } - else matherr((struct exception *) NULL) ; + else math_err() ; mpstr(MPa, MPres) ; } diff --git a/cde/programs/dtcalc/text.c b/cde/programs/dtcalc/text.c index fb88666c2..b2ab0c717 100644 --- a/cde/programs/dtcalc/text.c +++ b/cde/programs/dtcalc/text.c @@ -310,14 +310,7 @@ init_text(void) /* Setup text strings depending upon language. */ get_key_val(&buttons[i++].value, LGET(GETMESSAGE(3, 467, "\010"))) ; /* del */ -#ifdef hpux - if(v->keybdID == HIL_ITF_KBD) - get_key_val(&buttons[i++].value, LGET(GETMESSAGE(3, 513, "\013"))) ; - else - get_key_val(&buttons[i++].value, LGET(GETMESSAGE(3, 468, "\177"))) ; -#else get_key_val(&buttons[i++].value, LGET(GETMESSAGE(3, 468, "\177"))) ; -#endif get_key_val(&buttons[i++].value, LGET(GETMESSAGE(3, 469, "d"))) ; diff --git a/cde/programs/dtcm/dtcm/Makefile.am b/cde/programs/dtcm/dtcm/Makefile.am index 93fbbf3a1..60ccc8d7b 100644 --- a/cde/programs/dtcm/dtcm/Makefile.am +++ b/cde/programs/dtcm/dtcm/Makefile.am @@ -8,7 +8,7 @@ AM_CFLAGS = $(DT_INCDIR) $(CSA_INCDIR) -I../../../lib/csa \ LDADD = ../libDtCmP/libDtCmP.a $(LIBCSA) $(DTCLIENTLIBS) $(XTOOLLIB) if FREEBSD -LDADD += -lcompat +LDADD += -lcompat -lutil endif if NETBSD diff --git a/cde/programs/dtcm/dtcm/browser.c b/cde/programs/dtcm/dtcm/browser.c index 8de446cd8..09f948986 100644 --- a/cde/programs/dtcm/dtcm/browser.c +++ b/cde/programs/dtcm/dtcm/browser.c @@ -1323,7 +1323,7 @@ mb_clear_selected_calendar( if (geditor_showing(e)) remove_from_gaccess_list(name, e); mb_deregister_names(name, c); - mb_refresh_canvas(c->browser, c); + mb_refresh_canvas(b, c); } extern void diff --git a/cde/programs/dtcm/dtcm/rfp.c b/cde/programs/dtcm/dtcm/rfp.c index 460aee2d9..5c9319976 100644 --- a/cde/programs/dtcm/dtcm/rfp.c +++ b/cde/programs/dtcm/dtcm/rfp.c @@ -942,7 +942,7 @@ rfp_form_flags_to_appt(RFP *rfp, Dtcm_appointment *a, char *name, int *flagsP) memset(a->repeat_type, 0, sizeof(CSA_attribute)); _DtCm_set_sint32_attrval(rfp->repeat_type, - &a->repeat_type->value); + (cms_attribute_value **) &a->repeat_type->value); } else a->repeat_type->value->item.sint32_value = rfp->repeat_type; } @@ -958,7 +958,7 @@ rfp_form_flags_to_appt(RFP *rfp, Dtcm_appointment *a, char *name, int *flagsP) memset(a->repeat_type, 0, sizeof(CSA_attribute)); - _DtCm_set_sint32_attrval(rfp->repeat_type,&a->repeat_type->value); + _DtCm_set_sint32_attrval(rfp->repeat_type, (cms_attribute_value **) &a->repeat_type->value); } else a->repeat_type->value->item.sint32_value = rfp->repeat_type; } diff --git a/cde/programs/dtcm/dtcm/x_graphics.c b/cde/programs/dtcm/dtcm/x_graphics.c index 7233d3c67..bfe295516 100644 --- a/cde/programs/dtcm/dtcm/x_graphics.c +++ b/cde/programs/dtcm/dtcm/x_graphics.c @@ -1351,7 +1351,7 @@ cm_print_appt_text(CMGraphicsInfo *gInfo, char *str, unsigned long _len; _len = strlen(str); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) str = to; @@ -1578,7 +1578,7 @@ cm_print_todo_text(CMGraphicsInfo *gInfo, char *str1, CSA_sint32 as, unsigned long _len; _len = strlen(str1); - _converter_( str1, _len, &to, &to_len ); + _converter_( str1, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) str1 = to; } @@ -2009,7 +2009,7 @@ local_dayname(Calendar *c, char **array_place, int dayNum) dayCatIndex[dayNum], defaultDays[dayNum]); _len = strlen( source ); - _converter_( source, _len, &to, &to_len ); + _converter_( source, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = euc_to_octal(to); } else { @@ -2041,7 +2041,7 @@ local_dayname3(Calendar *c, char **array_place, int dayNum) dayCatIndex[dayNum], defaultDays[dayNum]); _len = strlen( source ); - _converter_( source, _len, &to, &to_len ); + _converter_( source, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = euc_to_octal(to); } else { @@ -2089,7 +2089,7 @@ get_report_type_string(CMGraphicsInfo *gInfo) defaultStrs[reportType]); _len = strlen( str ); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = to; } @@ -2367,7 +2367,7 @@ x_open_file(Calendar *c) unsigned long _len; _len = strlen( gInfo->timestamp ); - _converter_( gInfo->timestamp, _len, &to, &to_len ); + _converter_( gInfo->timestamp, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) strncpy( gInfo->timestamp, to, ( BUFFERSIZE > to_len ) ? to_len : BUFFERSIZE - 1 ); @@ -2610,7 +2610,7 @@ x_print_header(void *gInfoP, char *buf, int pageNum, int numPages) unsigned long _len; _len = strlen( buf ); - _converter_( buf, _len, &to, &to_len ); + _converter_( buf, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = euc_to_octal(to); } else { @@ -2639,7 +2639,7 @@ x_print_header(void *gInfoP, char *buf, int pageNum, int numPages) unsigned long _len; _len = strlen( str2 ); - _converter_( str2, _len, &to, &to_len ); + _converter_( str2, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { strncpy( str2, to, ( BUFFERSIZE > to_len ) ? to_len : BUFFERSIZE ); @@ -2654,7 +2654,7 @@ x_print_header(void *gInfoP, char *buf, int pageNum, int numPages) unsigned long _len; _len = strlen( str ); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = to; } @@ -2717,7 +2717,7 @@ x_day_header (void *gInfoP) unsigned long _len; _len = strlen( str ); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = to; } @@ -2737,7 +2737,7 @@ x_day_header (void *gInfoP) unsigned long _len; _len = strlen( str ); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { str = to; } @@ -3249,7 +3249,7 @@ x_print_month(void *gInfoP, int mon, int yr, int x1, unsigned long _len; _len = strlen(str); - _converter_( str, _len, &to, &to_len ); + _converter_( str, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { cm_strcpy(str, to); } @@ -3574,7 +3574,7 @@ x_week_daynames(void *gInfoP, char *dayName, int dayIndex, Boolean more) unsigned long _len; _len = strlen(dayName); - _converter_( dayName, _len, &to, &to_len ); + _converter_( dayName, _len, (void **) &to, &to_len ); if ( ( to != NULL ) && ( to_len != 0 ) ) { dayName = to; } diff --git a/cde/programs/dtcm/server/Makefile.am b/cde/programs/dtcm/server/Makefile.am index 9321ca858..a4ac7dc55 100644 --- a/cde/programs/dtcm/server/Makefile.am +++ b/cde/programs/dtcm/server/Makefile.am @@ -7,7 +7,7 @@ rpc_cmsd_CFLAGS = -I../../../lib/csa $(DT_INCDIR) $(CSA_INCDIR) rpc_cmsd_LDADD = $(LIBCSA) $(DTCLIENTLIBS) $(TIRPCLIB) $(XTOOLLIB) if SOLARIS -rpc_cmsd_LDADD += -lsocket -lnsl -lintl -lm -ldl +rpc_cmsd_LDADD += -lsocket -lnsl -lintl endif rpc_cmsd_SOURCES = parser.c access.c callback.c cmscalendar.c \ diff --git a/cde/programs/dtcm/server/cmsfunc.c b/cde/programs/dtcm/server/cmsfunc.c index 5e6d37d0a..c805b562f 100644 --- a/cde/programs/dtcm/server/cmsfunc.c +++ b/cde/programs/dtcm/server/cmsfunc.c @@ -1293,17 +1293,7 @@ _ListCalendarNames(uint *num_names, char ***names) if ((dirp = opendir(".")) == NULL) return (CSA_E_FAILURE); -#ifdef SunOS - if ((dp = (struct dirent *)malloc(sizeof(struct dirent) + FILENAME_MAX)) - == NULL) { - closedir(dirp); - return (CSA_E_INSUFFICIENT_MEMORY); - } - - while (dp = readdir_r(dirp, dp)) { -#else while (dp = readdir(dirp)) { -#endif if (strncmp(dp->d_name, "callog.", strlen("callog.")) == 0) { if (count == num) { count += _NAME_INCREMENT; diff --git a/cde/programs/dtcm/server/log.c b/cde/programs/dtcm/server/log.c index 4ccd39250..9d963dbb7 100644 --- a/cde/programs/dtcm/server/log.c +++ b/cde/programs/dtcm/server/log.c @@ -734,13 +734,9 @@ _DtCmsSetFileMode( if (changeeuid == B_TRUE) { #ifndef AIX -#ifdef HPUX - setuid (0); -#else if(-1 == seteuid (0)) { perror(strerror(errno)); } -#endif #endif } @@ -767,11 +763,7 @@ _DtCmsSetFileMode( } #ifndef AIX -#ifdef HPUX - if (changeeuid == B_TRUE && setuid (daemon_uid) < 0) -#else if (changeeuid == B_TRUE && seteuid (daemon_uid) < 0) -#endif { if (printerr == B_TRUE) { error = errno; diff --git a/cde/programs/dtcm/server/svcmain.c b/cde/programs/dtcm/server/svcmain.c index 7c8f796c1..8cdb9d2ac 100644 --- a/cde/programs/dtcm/server/svcmain.c +++ b/cde/programs/dtcm/server/svcmain.c @@ -688,14 +688,12 @@ main(int argc, char **argv) /* don't register unsupported versions: */ if (ph->prog[version].nproc == 0) continue; -#ifndef HPUX if (standalone) -#endif (void) pmap_unset(ph->program_num, version); if (udp_transp == (SVCXPRT *)-1) { udp_transp = svcudp_create(standalone ? RPC_ANYSOCK : 0 -#if defined(_AIX) || defined(hpV4) || defined(__linux__) || defined(CSRG_BASED) +#if defined(_AIX) || defined(__linux__) || defined(CSRG_BASED) ); #else ,0,0); @@ -707,13 +705,8 @@ main(int argc, char **argv) } } -#ifndef HPUX if (!svc_register(udp_transp, ph->program_num, version, program, standalone ? IPPROTO_UDP : 0)) { -#else - if (!svc_register(udp_transp, ph->program_num, version, program, - IPPROTO_UDP)) { -#endif (void)fprintf(stderr, "rtable_main.c: unable to register"); exit(1); } @@ -742,17 +735,12 @@ main(int argc, char **argv) #endif /* SunOS */ #ifndef AIX -#ifdef HPUX - setgid (daemon_gid); - setuid (daemon_uid); -#else if(-1 == setegid (daemon_gid)) { perror(strerror(errno)); } if(-1 == seteuid (daemon_uid)) { perror(strerror(errno)); } -#endif /* HPUX */ #endif /* AIX */ init_time(); diff --git a/cde/programs/dtcreate/ErrorDialog.c b/cde/programs/dtcreate/ErrorDialog.c index 677ee6003..fc20062b1 100644 --- a/cde/programs/dtcreate/ErrorDialog.c +++ b/cde/programs/dtcreate/ErrorDialog.c @@ -47,6 +47,7 @@ void activateCB_ErrorDialog_OkButton( Widget UxWidget, { XtDestroyWidget(XtParent(UxWidget)); + *(Widget **)UxClientData = NULL; } /******************************************************************************/ @@ -63,7 +64,7 @@ void display_error_message (Widget parent, char *message) XtAddCallback( ErrorDialog, XmNokCallback, (XtCallbackProc) activateCB_ErrorDialog_OkButton, - (XtPointer) NULL ); + (XtPointer) &ErrorDialog ); XtVaSetValues (ErrorDialog, RES_CONVERT(XmNdialogTitle, GETMESSAGE(6, 31, "Create Action - Error")), diff --git a/cde/programs/dtcreate/Makefile.am b/cde/programs/dtcreate/Makefile.am index b5b3c5c2a..6df2ba70a 100644 --- a/cde/programs/dtcreate/Makefile.am +++ b/cde/programs/dtcreate/Makefile.am @@ -4,10 +4,6 @@ bin_PROGRAMS = dtcreate dtcreate_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) -if SOLARIS -dtcreate_LDADD += -ldl -endif - dtcreate_SOURCES = main.c AddFiletype.c Confirmed.c \ CreateActionAppShell.c FileCharacteristics.c OpenFile.c \ UxXt.c ca_aux.c cmncbs.c cmnutils.c cmnrtns.c ErrorDialog.c \ diff --git a/cde/programs/dtcreate/cmncbs.c b/cde/programs/dtcreate/cmncbs.c index b9fd1fb2d..90e32a57b 100644 --- a/cde/programs/dtcreate/cmncbs.c +++ b/cde/programs/dtcreate/cmncbs.c @@ -158,10 +158,8 @@ void activateCB_open_FindSet (Widget find_set_button, XtPointer cdata, XtFree(container_title); XtFree(directory_title); XtFree(dialog_title); - FreeIconSearchPathList(directories_list); XtVaSetValues (IconSelector, XmNuserData, cdata, NULL); UxPopupInterface (IconSelector, no_grab); - XmProcessTraversal(ISD_SelectedIconTextField, XmTRAVERSE_CURRENT); return; } diff --git a/cde/programs/dtcreate/icon_selection_dialog.c b/cde/programs/dtcreate/icon_selection_dialog.c index d60105025..f27862c7f 100644 --- a/cde/programs/dtcreate/icon_selection_dialog.c +++ b/cde/programs/dtcreate/icon_selection_dialog.c @@ -50,6 +50,7 @@ #include #include
+#include
#include "dtcreate.h" #include "UxXt.h" @@ -144,7 +145,7 @@ int myscandir(char *pszDirName, struct dirent ***NameList, int Select(), int Com errPtr = XtMalloc((strlen(msgPtr) + strlen(fmtPtr) + strlen(pszDirName) + 1) * sizeof(char)); sprintf(errPtr, fmtPtr, msgPtr, pszDirName); - display_error_message(CreateActionAppShell, errPtr); + display_error_message(IconSelector, errPtr); XtFree(errPtr); return(0); } @@ -245,7 +246,7 @@ struct dirent **build_dirent_list (char *filter, int *filecount) errPtr = XtMalloc((strlen(msgPtr) + strlen(fmtPtr) + strlen(dirname) + 1) * sizeof(char)); sprintf(errPtr, fmtPtr, msgPtr, dirname); - display_error_message(CreateActionAppShell, errPtr); + display_error_message(IconSelector, errPtr); XtFree(errPtr); namelist = NULL; } @@ -1327,13 +1328,94 @@ void resizeCB_clipWindow( Widget UxWidget, printf("icon_count = %d\n", icon_count); #endif - increment = (int)height / icon_count; + increment = icon_count > 0 ? (int)height / icon_count : height; XtVaSetValues(widvScrollbar, XmNincrement, increment, NULL); return; } +static void mapCB_icon_selection_dialog(Widget UxWidget, + XtPointer UxClientData, + XtPointer UxCallbackArg) +{ + DtWsmRemoveWorkspaceFunctions(UxDisplay, XtWindow(XtParent(UxWidget))); +} + +static void focusCB_icon_selection_dialog(Widget UxWidget, + XtPointer UxClientData, + XtPointer UxCallbackArg) +{ + char *initial_filter; + Widget descendant; + + XtRemoveCallback(UxWidget, XmNfocusCallback, focusCB_icon_selection_dialog, + NULL); + + TurnOnHourGlassAllWindows(); + + XmProcessTraversal(ISD_SelectedIconTextField, XmTRAVERSE_CURRENT); + + /******************************************************************/ + /* save file_filter */ + /******************************************************************/ + file_filter_global = (char *)calloc(strlen((char *)file_filter)+1, + sizeof(char)); + +#ifdef DEBUG + if (!file_filter_global) + printf("Calloc error for file_filter_global, in mapCB_icon_selection_dialog.\n"); +#endif + + if (file_filter[0] == '*') + file_filter_global = strcpy(file_filter_global, (char *)&file_filter[1]); + else + file_filter_global = strcpy(file_filter_global, (char *)file_filter); + + load_directories_list((char **)directories_list); + initial_filter = initialize_filter((char *)file_filter); + FreeIconSearchPathList((char **)directories_list); + + /******************************************************************/ + /* save main_filter */ + /******************************************************************/ + main_filter = (char *)calloc(strlen(initial_filter)+1, sizeof(char)); + +#ifdef DEBUG + if (!main_filter) + printf("Calloc error for main_filter, in mapCB_icon_selection_dialog.\n"); +#endif + + main_filter = strcpy(main_filter, initial_filter); + + icons_in_container = NULL; + icon_count = 0; + + update_container_contents (initial_filter); + + /******************************************************************/ + /* set selected_icon_name to first name in list */ + /******************************************************************/ +#if 0 + if (icons_in_container) { + XtVaGetValues (icons_in_container[0], XmNimageName, &icon_file_name, NULL); + XmTextFieldSetString (icon_name_text_field, icon_file_name); + selected_icon_name = XtMalloc(strlen(icon_file_name) + 1); + if (selected_icon_name) + selected_icon_name = strcpy(selected_icon_name, icon_file_name); + } +#endif + + load_filter_text_field(initial_filter); + + if (ErrorDialog && XtParent(ErrorDialog) == UxWidget) { + descendant = XtNameToWidget(ErrorDialog, "OK"); + XtSetKeyboardFocus(ErrorDialog, descendant ? descendant : ErrorDialog); + } + + TurnOffHourGlassAllWindows(); +} + /***************************************************************************/ /* */ /* _Uxbuild_icon_selection_dialog */ @@ -1391,6 +1473,11 @@ static Widget _Uxbuild_icon_selection_dialog(void) (XtCallbackProc) helpCB_general, (XtPointer) HELP_ICONSELECTOR ); + XtAddCallback(icon_selection_dialog, XmNmapCallback, + mapCB_icon_selection_dialog, NULL); + + XtAddCallback(icon_selection_dialog, XmNfocusCallback, + focusCB_icon_selection_dialog, NULL); /* Creation of bottom_button_form */ bottom_button_form = XtVaCreateManagedWidget( "bottom_button_form", @@ -1857,7 +1944,6 @@ Widget create_icon_selection_dialog(swidget _UxUxParent, { - char *initial_filter; char *icon_file_name; Widget rtrn; int lcv; @@ -1914,57 +2000,5 @@ Widget create_icon_selection_dialog(swidget _UxUxParent, XtUnmanageChild (icon_name_text_field); } - TurnOnHourGlassAllWindows(); - - /******************************************************************/ - /* save file_filter */ - /******************************************************************/ - file_filter_global = (char *)calloc(strlen((char *)file_filter)+1, sizeof(char)); - -#ifdef DEBUG - if (!file_filter_global) printf("Calloc error for file_filter_global, in create_icon_selection_dialog.\n"); -#endif - - if (file_filter[0] == '*') - file_filter_global = strcpy(file_filter_global, (char *)&file_filter[1]); - else - file_filter_global = strcpy(file_filter_global, (char *)file_filter); - - load_directories_list ((char **)directories_list); - initial_filter = initialize_filter ((char *)file_filter); - - /******************************************************************/ - /* save main_filter */ - /******************************************************************/ - main_filter = (char *)calloc(strlen(initial_filter)+1, sizeof(char)); - -#ifdef DEBUG - if (!main_filter) printf("Calloc error for main_filter, in create_icon_selection_dialog.\n"); -#endif - - main_filter = strcpy(main_filter, initial_filter);; - - icons_in_container = NULL; - icon_count = 0; - - update_container_contents (initial_filter); - - /******************************************************************/ - /* set selected_icon_name to first name in list */ - /******************************************************************/ -#if 0 - if (icons_in_container) { - XtVaGetValues (icons_in_container[0], XmNimageName, &icon_file_name, NULL); - XmTextFieldSetString (icon_name_text_field, icon_file_name); - selected_icon_name = XtMalloc(strlen(icon_file_name) + 1); - if (selected_icon_name) - selected_icon_name = strcpy(selected_icon_name, icon_file_name); - } -#endif - - load_filter_text_field (initial_filter); - - TurnOffHourGlassAllWindows(); - return(rtrn); } diff --git a/cde/programs/dtdbcache/Makefile.am b/cde/programs/dtdbcache/Makefile.am index 9ab1be7db..61fc146dc 100644 --- a/cde/programs/dtdbcache/Makefile.am +++ b/cde/programs/dtdbcache/Makefile.am @@ -5,7 +5,7 @@ bin_PROGRAMS = dtdbcache dtdbcache_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) if SOLARIS -dtdbcache_LDADD += -ldl -lw -lgen +dtdbcache_LDADD += -lw -lgen endif dtdbcache_SOURCES = Main.c diff --git a/cde/programs/dtdocbook/doc_utils/Makefile.am b/cde/programs/dtdocbook/doc_utils/Makefile.am index 1377074ae..9c69a9331 100644 --- a/cde/programs/dtdocbook/doc_utils/Makefile.am +++ b/cde/programs/dtdocbook/doc_utils/Makefile.am @@ -19,7 +19,7 @@ noinst_PROGRAMS = \ noinst_SCRIPTS = dtdocbook2man dtdocbook2sdl AM_CXXFLAGS = -DCDE_NEXT -I$(top_builddir)/lib/DtMmdb -AM_LDFLAGS = $(DTCLIENTLIBS) $(XTOOLLIB) +AM_LDFLAGS = $(DTCLIENTLIBS) $(XTOOLLIB) dtdcbk_datarootdir = $(abs_top_srcdir)/programs/dtdocbook @@ -28,7 +28,7 @@ AM_CPPFLAGS = \ -DINFOLIB_LIBEXECDIR=\"$(PWD)\" validator_SOURCES = validator.C -validator_LDFLAGS = $(LIBMMDB) +validator_LDFLAGS = $(LIBMMDB) $(LMDBLIB) CLEANFILES = $(noinst_SCRIPTS) $(validator_SOURCES) dtdocbook2infolib.c diff --git a/cde/programs/dtdocbook/dtdocbook2infolib.c b/cde/programs/dtdocbook/dtdocbook2infolib.c index ddebc4908..adaea7583 100644 --- a/cde/programs/dtdocbook/dtdocbook2infolib.c +++ b/cde/programs/dtdocbook/dtdocbook2infolib.c @@ -38,6 +38,7 @@ #include #include #include +#include #include /* for dirname() */ #include #include @@ -169,13 +170,17 @@ t_entry langtbl[] = static char *usageMsg1 = "USAGE:\n\ " EXEC_NAME " -h\n\ - " EXEC_NAME " admin\n\ - " EXEC_NAME " build [-h] [-T ] [-m ] [-d ]\n\ - [-n ] -l ...\n\ - " EXEC_NAME " tocgen [-h] [-T ] [-m ] -f [-id ]\n\ - [-title ] ...\n\ - " EXEC_NAME " update [-h] [-m ] -l -b \n\ - " EXEC_NAME " validate [-h] [-T ] [-m ] ...\n" + " EXEC_NAME " admin -L \n\ + " EXEC_NAME " build [-h] -L [-T ] [-m ]\n\ + [-d ] [-n ]\n\ + -l ...\n\ + " EXEC_NAME " tocgen [-h] -L [-T ] [-m ]\n\ + -f [-id ] [-title ]\n\ + ...\n\ + " EXEC_NAME " update [-h] -L [-m ] -l \n\ + -b \n\ + " EXEC_NAME " validate [-h] -L [-T ] [-m ]\n\ + ...\n" "\n" "options:\n"; @@ -215,6 +220,7 @@ static char *buildStyleProlog(void); static char *buildSpec(void); static void defaultGlobals(void); static void checkGlobals(void); +static void setLangIndex(const char * const locale); static int parseArgs(int argc, char *argv[]); static char *parseDocument(int runCmd, ...); static void buildBookcase(char *cmdSrc, char *dirName); @@ -986,45 +992,6 @@ defaultGlobals(void) gStruct->sgmlCatFilesLen = 0; gStruct->sgmlCatFilesMaxLen = 0; - { /* resolve lang from env variable */ - char* lang; - char *s = NULL; - char* code = NULL; - int curLen; - int maxLen = 0; - t_entry* iter; - - if ((lang = getenv("LC_CTYPE")) == NULL) lang = LANG_COMMON; - - lang = XtsNewString(lang); - - s = strchr(lang, '.'); if (s) *s = 0; - - curLen = strlen(lang); - - appendStr(&lang, &curLen, &maxLen, ".UTF-8"); - - /* resolve dtsearch language based on canonical lang */ - - for (iter = langtbl; iter->name; ++iter) { - if (strcmp(lang, iter->name) == 0) { - code = lang; - break; - } - } - - if (!code) code = LANG_COMMON; - - for (iter = langtbl; iter->name; ++iter) { - if (strcmp(iter->name, code) == 0) { - gStruct->dtsridx = iter - langtbl; - break; - } - } - - free(lang); - } - if ((gStruct->sgml = buildSGML()) == NULL) { die(-1, "%s: Cannot find SGML files\n", EXEC_NAME); } @@ -1095,6 +1062,45 @@ checkGlobals(void) checkExec("validator"); } +static void +setLangIndex(const char * const locale) +{ + char* lang; + char *s = NULL; + char* code = NULL; + int curLen; + int maxLen = 0; + t_entry* iter; + + lang = XtsNewString(locale); + + s = strchr(lang, '.'); if (s) *s = 0; + + curLen = strlen(lang); + + appendStr(&lang, &curLen, &maxLen, ".UTF-8"); + + /* resolve dtsearch language based on canonical lang */ + + for (iter = langtbl; iter->name; ++iter) { + if (strcmp(lang, iter->name) == 0) { + code = lang; + break; + } + } + + if (!code) code = LANG_COMMON; + + for (iter = langtbl; iter->name; ++iter) { + if (strcmp(iter->name, code) == 0) { + gStruct->dtsridx = iter - langtbl; + break; + } + } + + free(lang); +} + static void addCatFile(char *catalog, bool needed) { @@ -2278,19 +2284,53 @@ int main(int argc, char *argv[]) { GlobalsStruct globalsStruct; - - if (!addToEnv("PATH", STR(INFOLIB_LIBEXECDIR), true)) - die(-1, "%s: could not set PATH\n", EXEC_NAME); - - gStruct = &globalsStruct; + char *pm; + const char *lc_all; + int ec; + int il = 0; if (argc < 2) - printUsage((char *)NULL, -1); + { + pm = NULL; + ec = -1; + goto usage; + } - defaultGlobals(); + gStruct = &globalsStruct; defaultGlobals(); - if (setenv("LC_CTYPE", STR(langtbl[gStruct->dtsridx].name), 1) == -1) - die(-1, "%s: LC_CTYPE: %s\n", EXEC_NAME, strerror(errno)); + for (int i = 0; i < argc; ++i) + { + if (strcmp(argv[i], "-h") == 0) + { + pm = NULL; + ec = 0; + goto usage; + } + else if (strcmp(argv[i], "-L") == 0) + { + il = 1 + i; + } + } + + if (!(il > 2 && il < argc && isalpha(argv[il][0]))) + { + pm = NULL; + ec = -1; + goto usage; + } + + setLangIndex(argv[il]); + + for (int i = 1 + il; i < argc; ++i) argv[i - 2] = argv[i]; + + argc -= 2; + + lc_all = STR(langtbl[gStruct->dtsridx].name); + + setlocale(LC_ALL, lc_all); + + if (setenv("LC_ALL", lc_all, 1) == -1) + die(-1, "%s: LC_ALL: %s\n", EXEC_NAME, strerror(errno)); if (setenv("SP_CHARSET_FIXED", "1", 1) == -1) die(-1, "%s: SP_CHARSET_FIXED: %s\n", EXEC_NAME, strerror(errno)); @@ -2298,13 +2338,23 @@ main(int argc, char *argv[]) if (setenv("SP_ENCODING", "UTF-8", 1) == -1) die(-1, "%s: SP_ENCODING: %s\n", EXEC_NAME, strerror(errno)); + if (!addToEnv("PATH", STR(INFOLIB_LIBEXECDIR), true)) + die(-1, "%s: could not set PATH\n", EXEC_NAME); + if (!doAdmin(argc, argv) && !doBuild(argc, argv) && !doTocgen(argc, argv) && !doUpdate(argc, argv) && !doValidate(argc, argv) && !doHelp(argc, argv)) - printUsage(EXEC_NAME ": unrecognized subcommand `%s'\n", -1); + { + pm = EXEC_NAME ": unrecognized subcommand\n"; + ec = -1; + goto usage; + } return 0; + +usage: + printUsage(pm, ec); } diff --git a/cde/programs/dtdocbook/dtdocbook2man.in b/cde/programs/dtdocbook/dtdocbook2man.in index a57f2ddc7..5ee47cee5 100755 --- a/cde/programs/dtdocbook/dtdocbook2man.in +++ b/cde/programs/dtdocbook/dtdocbook2man.in @@ -63,11 +63,12 @@ then nroff="| tbl | nroff -man" shift fi -if [ $# -eq 3 ] -then dclfile=$1 - reffile=$2 - manfile=$3 -else echo "usage: dtdocbook2man [-c] dcl-file ref-src-file man-dst-file" +if [ $# -eq 4 ] +then locale=$1 + dclfile=$2 + reffile=$3 + manfile=$4 +else echo "usage: dtdocbook2man [-c] locale dcl-file ref-src-file man-dst-file" exit 1 fi @@ -129,6 +130,6 @@ cat >> /tmp/dtm.$$.psinc <<\! cat $decl $dclfile $reffile | \ sed -e 's/<\!\[[ ]*\%CDE\.C\.CDE;[ ]*\[<[rR]ef[eE]ntry [iI]d="[^"]*">\]\]>//g' | \ $parser $parser_opts | \ -$instant $INSTANT_OPT -croff.cmap -sroff.sdata -tdocbook-to-man.ts > \ +$instant -L$locale -croff.cmap -sroff.sdata -tdocbook-to-man.ts > \ /tmp/dtm.$$.out1 && eval cat /tmp/dtm.$$.psinc /tmp/dtm.$$.out1 $nroff > \ /tmp/dtm.$$.out2 && cp /tmp/dtm.$$.out2 $manfile diff --git a/cde/programs/dtdocbook/dtdocbook2sdl.in b/cde/programs/dtdocbook/dtdocbook2sdl.in index e56d18131..c8c661957 100755 --- a/cde/programs/dtdocbook/dtdocbook2sdl.in +++ b/cde/programs/dtdocbook/dtdocbook2sdl.in @@ -1,7 +1,5 @@ #!@KSH@ -export LC_CTYPE="${LANG}" - # get the name of this command for errors, warnings and messages command_name=`basename $0` @@ -77,95 +75,35 @@ do (u) uncompressed=1;; (v) verbose=1;; (x) debug=1;; + (L) x_locale="$OPTARG";; # undocumented options to be used at build time (H) helptag2="$OPTARG";; (I) instant="$OPTARG";; - (L) x_locale="$OPTARG";; (S) sgmls="$OPTARG";; (?) fatal "Unknown option: -$OPTARG";; esac done -default_charset='UTF-8' -default_locale="en_US.$default_charset" - -# if no -t, use installed dir -prefix="${prefix:-@prefix@}" -exec_prefix="@exec_prefix@" - -export PATH="${PATH}:@bindir@" - -dcbk_name="@PACKAGE_TARNAME@/dtdocbook" - -dtdcbk_libdir="${dtdcbk_libdir:-@libdir@/${dcbk_name}}" -dtdcbk_libexecdir="${dtdcbk_libexecdir:-@libexecdir@/${dcbk_name}}" -dtdcbk_datarootdir="${dtdcbk_datarootdir:-@datarootdir@/${dcbk_name}}" - -# if no -I, use installed one -instant="${instant:-${dtdcbk_libexecdir}/instant/instant}" - -# if no -s, use -t -sgml_dir="${sgml_dir:-${dtdcbk_datarootdir}/sgml}" - -sgml_cat="${sgml_dir}" -sgmls="${sgmls:-onsgmls}" # if no -S, use onsgmls -x_locale="${x_locale:-${LANG}}" # if no -L, use installed one -helptag2="${helptag2:-dthelp_htag2}" # if no -H, use one in PATH - -if [[ $x_locale == *.* ]] then - x_lang="${x_locale%%.*}" - x_charset="${x_locale##*.}" - - if [[ $x_charset != $default_charset ]] then - x_locale="${x_lang}.$default_charset" - fi -else - x_locale="${x_locale}.$default_charset" -fi - -# Set the environment variables for instant(1) to find its files -export TPT_LIB="${dtdcbk_datarootdir}/tpt" -export LOCALE_DIR="${dtdcbk_datarootdir}/locales/${x_locale}" - -if [[ -d $LOCALE_DIR ]] then - export LOCALE_DIR="${dtdcbk_datarootdir}/locales/${default_locale}" -fi - -parser=`basename $sgmls` - -# Set the environment variable for finding the default catalog. -if ([[ "$SGML_CATALOG_FILES" = "" ]]) then - export SGML_CATALOG_FILES="${sgml_cat}/catalog" -else - export SGML_CATALOG_FILES="${SGML_CATALOG_FILES}:${sgml_cat}/catalog" -fi - -export SP_CHARSET_FIXED=1 -export SP_ENCODING="$default_charset" - -# Set the environment variable to be picked up inside instant(1) when it -# goes to call Tcl. -export DBKTCL_DIR="${dtdcbk_libdir}/tcl" - # The user asked for help, give it and exit. if (( $help )); then echo "$command_name [options] " echo "options:" - echo " -c compress an existing SDL file" - echo " -d decompress an existing SDL file" - echo " -g specify additional catalog file (repeatable)" - echo " -h emit this message" - echo " -l leave ..log in current directory" - echo " -m add to list of SDATA or CMAP files" - echo " -o use as the output file name" - echo " -r remove leftover intermediate files" - echo " -s docbook.dcl is in " - echo " -t read translation specs, etc., from " - echo " -u do not compress during translation" - echo " -v verbose" - echo " -x leave intermediate files, for debugging" + echo " -c compress an existing SDL file" + echo " -d decompress an existing SDL file" + echo " -g specify additional catalog file (repeatable)" + echo " -h emit this message" + echo " -l leave ..log in current directory" + echo " -m add to list of SDATA or CMAP files" + echo " -o use as the output file name" + echo " -r remove leftover intermediate files" + echo " -s docbook.dcl is in " + echo " -t read translation specs, etc., from " + echo " -u do not compress during translation" + echo " -v verbose" + echo " -x leave intermediate files, for debugging" + echo " -L set the current locale to " exit 0 fi @@ -178,8 +116,9 @@ elif (( $OPTIND > $# )); then fi -# Get the name of the input file. -iname=`eval echo \\\${\$OPTIND}` +if [[ $x_locale == "" ]] then + fatal "No locale specified" +fi # Check for mutually exclusive options. if (( $compress && $decompress )); then @@ -187,10 +126,66 @@ if (( $compress && $decompress )); then fi +default_charset='UTF-8' + +prefix="${prefix:-@prefix@}" +exec_prefix="@exec_prefix@" + +dcbk_name="@PACKAGE_TARNAME@/dtdocbook" +dtdcbk_libdir="${dtdcbk_libdir:-@libdir@/${dcbk_name}}" +dtdcbk_libexecdir="${dtdcbk_libexecdir:-@libexecdir@/${dcbk_name}}" +dtdcbk_datarootdir="${dtdcbk_datarootdir:-@datarootdir@/${dcbk_name}}" + +sgml_dir="${sgml_dir:-${dtdcbk_datarootdir}/sgml}" + + +if [[ $x_locale == *.* ]] then + x_lang="${x_locale%%.*}" + x_charset="${x_locale##*.}" + + if [[ $x_charset != $default_charset ]] then + x_locale="${x_lang}.$default_charset" + fi +else + x_locale="${x_locale}.$default_charset" +fi + +if ([[ "$SGML_CATALOG_FILES" = "" ]]) then + SGML_CATALOG_FILES="${sgml_dir}/catalog" +else + SGML_CATALOG_FILES="${SGML_CATALOG_FILES}:${sgml_dir}/catalog" +fi + + +export PATH="${PATH}:@bindir@" +export SP_CHARSET_FIXED=1 +export SP_ENCODING="$default_charset" +export DBKTCL_DIR="${dtdcbk_libdir}/tcl" +export TPT_LIB="${dtdcbk_datarootdir}/tpt" +export LOCALE_DIR="${dtdcbk_datarootdir}/locales/${x_locale}" +export SGML_CATALOG_FILES + + +if [[ ! -d $LOCALE_DIR || ! -x $LOCALE_DIR ]] then + fatal "$LOCALE_DIR can't be accessed" +fi + + +# if no -I, use installed one +instant="${instant:-${dtdcbk_libexecdir}/instant/instant}" +sgmls="${sgmls:-onsgmls}" # if no -S, use onsgmls +helptag2="${helptag2:-dthelp_htag2}" # if no -H, use one in PATH + + +# Get the name of the input file. +iname=`eval echo \\\${\$OPTIND}` + # Get the basename and directory of the input file. basename=`basename $iname` dirname=`dirname $iname` +parser=`basename $sgmls` + # Look for an extension on the input file, if it's .sgm (or .sdl for # -c and -d), use it as is, else add the proper extension. @@ -372,12 +367,14 @@ if (( $verbose )); then if [[ $mapfiles != "" ]] then echo " $mapfiles \\\\" fi + echo " -L $x_locale \\\\" echo " -c docbook.cmap \\\\" echo " -t docbook.ts \\\\" echo " $basename.$$.esis" ${instant} -o $basename.out.$$.sdl \ $mapfiles \ - -c docbook.cmap \ + -L $x_locale \ + -c docbook.cmap \ -t docbook.ts \ $basename.$$.esis status=$? @@ -397,6 +394,7 @@ if (( $verbose )); then else ${instant} -o $basename.out.$$.sdl \ $mapfiles \ + -L $x_locale \ -c docbook.cmap \ -t docbook.ts \ $basename.$$.esis 2> $basename.$$.log diff --git a/cde/programs/dtdocbook/infolib/Makefile.am b/cde/programs/dtdocbook/infolib/Makefile.am index daf7dec3a..a9634bc03 100644 --- a/cde/programs/dtdocbook/infolib/Makefile.am +++ b/cde/programs/dtdocbook/infolib/Makefile.am @@ -28,7 +28,7 @@ AM_CXXFLAGS = \ -DEXPAND_TEMPLATES \ -I$(top_builddir)/lib/DtMmdb -AM_LDFLAGS = $(XTOOLLIB) $(LIBMMDB) $(DTCLIENTLIBS) +AM_LDFLAGS = $(XTOOLLIB) $(LIBMMDB) $(DTCLIENTLIBS) $(LMDBLIB) MixedGen_SOURCES = \ MixedGen.C \ diff --git a/cde/programs/dtdocbook/instant/main.c b/cde/programs/dtdocbook/instant/main.c index 65d2678a2..cdec6defc 100644 --- a/cde/programs/dtdocbook/instant/main.c +++ b/cde/programs/dtdocbook/instant/main.c @@ -103,6 +103,7 @@ static char *tranfile; static char **cmapfile, **sdatafile; static char *start_id; static char *last_file; +static char *locale; static int last_lineno; /* forward references */ @@ -132,16 +133,33 @@ main( char *av[] ) { - char **thisopt; + char **thisopt; + char *s, *lc_all; + Initialize1(av[0]); HandleArgs(ac, av); Initialize2(); - /* use the current locale for all text but use American English ... */ - setlocale(LC_ALL, ""); + if (!(locale && *locale)) { + fprintf(stderr, "Error: No locale specified.\n"); + return 1; + } - /* ... in expressions (e.g., leave "." as the radix operator) */ - setlocale(LC_NUMERIC, "C.UTF-8"); + lc_all = strdup(locale); + lc_all = realloc(lc_all, 7 + strlen(locale)); + + s = strchr(lc_all, '.'); if (s) *s = 0; + + strcat(lc_all, ".UTF-8"); + + setlocale(LC_ALL, lc_all); + + if (setenv("LC_ALL", lc_all, 1) == -1) { + fprintf(stderr, "Error: Can not set locale.\n"); + return 1; + } + + free(lc_all); /* Create a Tcl interpreter. */ interpreter = Tcl_CreateInterp(); @@ -309,9 +327,6 @@ Initialize1( time_t tnow; struct tm *nowtm; char *cp, buf[100]; -#if HPUX - extern int gethostname(char *, int); /* not in a system .h file... */ -#endif /* where we try to find data/library files */ if (!(tpt_lib=getenv(TPT_LIB))) tpt_lib = DEF_TPT_LIB; @@ -330,11 +345,7 @@ Initialize1( nowtm = localtime(&tnow); strftime(buf, 100, "%a %d %b %Y, %R", nowtm); SetMappingNV(Variables, "date", buf); -#if HPUX - if (gethostname(buf, 100) < 0) strcpy(buf, "unknown-host"); -#else strcpy(buf, "unknown-host"); -#endif SetMappingNV(Variables, "host", buf); SetMappingNV(Variables, "transpec", tranfile ? tranfile : "??"); } @@ -446,13 +457,13 @@ HandleArgs( char **thisopt; int count; - while ((c=getopt(ac, av, "t:vc:s:o:huSxIl:bHVWi:D:Z")) != EOF) { + while ((c=getopt(ac, av, "t:vc:s:o:L:huSxIl:bHVWi:D:Z")) != EOF) { switch (c) { case 't': tranfile = optarg; break; case 'v': do_validate = 1; break; case 's': { - if (thisopt = sdatafile) + if ((thisopt = sdatafile)) { count = 0; while (*thisopt++) @@ -472,7 +483,7 @@ HandleArgs( } case 'c': { - if (thisopt = cmapfile) + if ((thisopt = cmapfile)) { count = 0; while (*thisopt++) @@ -498,6 +509,7 @@ HandleArgs( case 'l': tpt_lib = optarg; break; case 'i': start_id = optarg; break; case 'o': out_file = optarg; break; + case 'L': locale = optarg; break; case 'b': interactive = 1; break; case 'W': warnings = 0; break; case 'V': verbose = 1; break; @@ -541,6 +553,7 @@ static char *help_msg[] = { " -h Print document hierarchy as a tree", " -o file Write output to . Default is standard output.", " -l dir Set library directory to . (or env. variable TPT_LIB)", + " -L locale Set the current locale to ", " -I List all IDs used in the instance", " -W Do not print warning messages", " -H Print this help message", diff --git a/cde/programs/dtdspmsg/Makefile.am b/cde/programs/dtdspmsg/Makefile.am index effc68aac..eb8d5b37e 100644 --- a/cde/programs/dtdspmsg/Makefile.am +++ b/cde/programs/dtdspmsg/Makefile.am @@ -15,6 +15,6 @@ dtdspmsg_LDADD = dtdspmsg_CFLAGS = -DNO_XLIB if SOLARIS -dtdspmsg_LDADD += -ldl -lgen +dtdspmsg_LDADD += -lgen endif diff --git a/cde/programs/dtexec/osdep.h b/cde/programs/dtexec/osdep.h index 6aed26d92..767799a73 100644 --- a/cde/programs/dtexec/osdep.h +++ b/cde/programs/dtexec/osdep.h @@ -43,12 +43,8 @@ #include #include -#ifndef __hpux # include # define FD_SET_CAST(x) (x) -#else -# define FD_SET_CAST(x) ((int *)(x)) -#endif #ifndef OPEN_MAX # define OPEN_MAX 128 diff --git a/cde/programs/dtfile/ChangeDir.c b/cde/programs/dtfile/ChangeDir.c index c8d8eee15..6d4c438fd 100644 --- a/cde/programs/dtfile/ChangeDir.c +++ b/cde/programs/dtfile/ChangeDir.c @@ -62,10 +62,6 @@ #include #include -#ifdef __hpux -#include -#endif - #include #include diff --git a/cde/programs/dtfile/File.c b/cde/programs/dtfile/File.c index 87f0be00e..b740d8c13 100644 --- a/cde/programs/dtfile/File.c +++ b/cde/programs/dtfile/File.c @@ -484,24 +484,14 @@ StrcollProc GetStrcollProc(void) { int Clang = 0; -#if defined(__hpux) - struct locale_data * li; -#else char * locale; -#endif #define C_LANG "C" /* if locale is C, use the explicit case insensitive compare */ -#if defined(__hpux) - li = getlocale(LOCALE_STATUS); - if ( NULL == li->LC_COLLATE_D || strcmp(C_LANG,li->LC_COLLATE_D) == 0 ) - Clang = 1; -#else locale = setlocale(LC_COLLATE,NULL); /* put locale in buf */ if (strcmp(locale,C_LANG) == 0) Clang = 1; -#endif if (Clang) return StrCaseCmp; diff --git a/cde/programs/dtfile/FileDialog.c b/cde/programs/dtfile/FileDialog.c index 497b03415..29b0d7ba1 100644 --- a/cde/programs/dtfile/FileDialog.c +++ b/cde/programs/dtfile/FileDialog.c @@ -59,7 +59,7 @@ #include #include -#if defined(_AIX) || defined(hpux) +#if defined(_AIX) #include #else #ifndef MAXNAMLEN diff --git a/cde/programs/dtfile/FileManip.c b/cde/programs/dtfile/FileManip.c index 4500b0a99..2741cc368 100644 --- a/cde/programs/dtfile/FileManip.c +++ b/cde/programs/dtfile/FileManip.c @@ -954,7 +954,7 @@ FileManip( #else #if defined(SVR4) || defined(_AIX) ((s3.st_mode & S_IFMT) == S_IFDIR) ) /* if is a directory */ -#else /* (__hpux) */ +#else (((s3.st_mode & S_IFMT) == S_IFDIR) /* if is a directory */ || ((s3.st_mode & S_IFMT) == S_IFNWK)) ) /* or a net special */ #endif diff --git a/cde/programs/dtfile/FileOp.c b/cde/programs/dtfile/FileOp.c index 67afc0def..dce79f5c4 100644 --- a/cde/programs/dtfile/FileOp.c +++ b/cde/programs/dtfile/FileOp.c @@ -84,7 +84,7 @@ #include #endif -#if defined(_AIX)|| defined(hpux) +#if defined(_AIX) #include #else #ifndef MAXNAMLEN @@ -2287,11 +2287,7 @@ _FileMoveCopy( /* do the select */ FD_SET(fd, &select_fds); -#if defined(__hpux) && (OSMAJORVERSION <= 10) && (OSMINORVERSION < 2) - rc = select(fd + 1, (int *)&select_fds, NULL, NULL, &select_timeout); -#else rc = select(fd + 1, &select_fds, NULL, NULL, &select_timeout); -#endif if (rc < 0 && errno != EINTR) { perror("select failed in FileMoveCopy"); diff --git a/cde/programs/dtfile/Find.c b/cde/programs/dtfile/Find.c index 8688f500d..e599cfad9 100644 --- a/cde/programs/dtfile/Find.c +++ b/cde/programs/dtfile/Find.c @@ -84,9 +84,6 @@ #include -#ifdef __hpux -#include -#endif /* __hpux */ #include #include @@ -159,9 +156,9 @@ static char * PRINT_OPTION = " -print "; static char * FIND_COMMAND = "find "; static char * GREP_COMMAND = "grep -i -l "; static char * NAME_OPTION = " -name "; -#if defined(__hpux) || defined(sun) +#if defined(sun) static char * FOLLOW_OPTION = " -follow"; -#endif /* __hpux */ +#endif /* sun */ static char * REDIRECTOR = " 2>&-"; static char * TYPEDIR = " -type d"; static char * FIND_FILE = "FindFile"; @@ -368,7 +365,7 @@ Create( Widget newFM, outputSeparator; Widget headLabel, contentLabel, contentText; Widget filterText, filterLabel, listLabel, scrolledList, dirName, dirLabel; -#if defined(__hpux) || defined(sun) +#if defined(sun) Widget followLink, followLinkPD; #endif Widget putOnDT, separator; @@ -487,7 +484,7 @@ Create( XtAddCallback(contentText, XmNhelpCallback, (XtCallbackProc)HelpRequestCB, HELP_FIND_DIALOG_STR); -#if defined(__hpux) || defined(sun) +#if defined(sun) n = 0; XtSetArg (args[n], XmNmarginWidth, 1); n++; XtSetArg (args[n], XmNmarginHeight, 1); n++; @@ -543,7 +540,7 @@ Create( XtSetArg (args[n], XmNleftAttachment, XmATTACH_FORM); n++; XtSetArg (args[n], XmNrightAttachment, XmATTACH_FORM); n++; XtSetArg (args[n], XmNtopAttachment, XmATTACH_WIDGET); n++; -#if defined(__hpux) || defined(sun) +#if defined(sun) XtSetArg (args[n], XmNtopWidget, form1); n++; #else XtSetArg (args[n], XmNtopWidget, contentText); n++; @@ -797,7 +794,7 @@ Create( find_rec->form = form; find_rec->fileNameFilter = filterText; find_rec->content = contentText; -#if defined(__hpux) || defined(sun) +#if defined(sun) find_rec->followLink = followLink; #else find_rec->followLink = NULL; @@ -979,7 +976,7 @@ GetDefaultValues( void ) find_data->matches = NULL; find_data->num_matches = 0; find_data->selected_item = -1; -#if defined(__hpux) || defined(sun) +#if defined(sun) find_data->follow_links = follow_links; #endif @@ -1108,7 +1105,7 @@ SetValues( XtSetValues (find_rec->matchList, args, 1); } -#if defined(__hpux) || defined(sun) +#if defined(sun) /* Set up the Follow links option menu */ if(find_data->follow_links) XtSetArg(args[0], XmNmenuHistory, find_rec->widgArry[ON]); @@ -1295,7 +1292,7 @@ GetFindValues( } } -#if defined(__hpux) || defined(sun) +#if defined(sun) { Widget menuHistory; @@ -1883,7 +1880,7 @@ ExecuteFind( } -#if defined(__hpux) || defined(sun) +#if defined(sun) { Widget menuHistory; diff --git a/cde/programs/dtfile/Find.h b/cde/programs/dtfile/Find.h index c6b468b7e..e9cb10fda 100644 --- a/cde/programs/dtfile/Find.h +++ b/cde/programs/dtfile/Find.h @@ -57,7 +57,7 @@ typedef struct Dimension width; Dimension height; -#if defined(__hpux) || defined(sun) +#if defined(sun) Boolean follow_links; #endif String directories; diff --git a/cde/programs/dtfile/FindP.c b/cde/programs/dtfile/FindP.c index dd23bab2f..fc39634a1 100644 --- a/cde/programs/dtfile/FindP.c +++ b/cde/programs/dtfile/FindP.c @@ -197,7 +197,7 @@ ShowFindDialog( XtFree(tempStr); file_mgr_rec->findBtn_child=find_rec->shell; -#if defined(__hpux) || defined(sun) +#if defined(sun) if(file_mgr_data->toolbox) { XtSetArg (args[0], XmNmenuHistory, find_rec->widgArry[ON]); diff --git a/cde/programs/dtfile/Main.c b/cde/programs/dtfile/Main.c index e52f36c08..328ed85b9 100644 --- a/cde/programs/dtfile/Main.c +++ b/cde/programs/dtfile/Main.c @@ -263,7 +263,7 @@ typedef struct Boolean restrictMode; int desktopPlacement; Boolean freezeOnConfig; -#if defined(__hpux) || defined(sun) +#if defined(sun) Boolean follow_links; #endif char * fileMgrIcon; @@ -590,7 +590,7 @@ int checkBrokenLink; int trashWait; int desktopPlacement; Boolean freezeOnConfig; -#if defined(__hpux) || defined(sun) +#if defined(sun) Boolean follow_links; #endif int treeType; @@ -949,7 +949,7 @@ static XtResource resources[] = (XtPointer)False, }, -#if defined(__hpux) || defined(sun) +#if defined(sun) { "followLinks", "FollowLinks", XmRBoolean, sizeof(Boolean), XtOffset(ApplicationArgsPtr, follow_links), XmRImmediate, (XtPointer) False, @@ -1459,7 +1459,7 @@ _DtPerfChkpntMsgSend("Begin XtInitialize"); desktopPlacement = application_args.desktopPlacement; freezeOnConfig = application_args.freezeOnConfig; emptyTrashOnExit = application_args.emptyTrashOnExit; -#if defined(__hpux) || defined(sun) +#if defined(sun) follow_links = application_args.follow_links; #endif instanceWidth = application_args.instanceIconWidth; diff --git a/cde/programs/dtfile/Main.h b/cde/programs/dtfile/Main.h index 0fb5ed8ab..07ca2b97a 100644 --- a/cde/programs/dtfile/Main.h +++ b/cde/programs/dtfile/Main.h @@ -289,7 +289,7 @@ extern char *fileMgrTitle; extern char *fileMgrHelpVol; extern int desktopIconType; extern Boolean freezeOnConfig; -#if defined(__hpux) || defined(sun) +#if defined(sun) extern Boolean follow_links; #endif extern int maxDirectoryProcesses; diff --git a/cde/programs/dtfile/Makefile.am b/cde/programs/dtfile/Makefile.am index 1c65aadfc..15c10d81c 100644 --- a/cde/programs/dtfile/Makefile.am +++ b/cde/programs/dtfile/Makefile.am @@ -44,7 +44,7 @@ dtfile_SOURCES = ChangeDir.c ChangeDirP.c Command.c Common.c \ # Mind the quoting here... SCRIPTFLAGS = -DSHAPE -D_ILS_MACROS -DSUN_PERF \ - -DCDE_INSTALLATION_TOP="${prefix}" \ + -DCDE_INSTALLATION_TOP="$(CDE_INSTALLATION_TOP)" \ -DCDE_CONFIGURATION_TOP="$(CDE_CONFIGURATION_TOP)" \ -DKORNSHELL="$(KSH)" diff --git a/cde/programs/dtfile/MkDir.c b/cde/programs/dtfile/MkDir.c index 9299f25ae..a7fb51710 100644 --- a/cde/programs/dtfile/MkDir.c +++ b/cde/programs/dtfile/MkDir.c @@ -51,9 +51,6 @@ #include #include -#ifdef __hpux -#include -#endif #include diff --git a/cde/programs/dtfile/dtcopy/sharedFuncs.c b/cde/programs/dtfile/dtcopy/sharedFuncs.c index eea1a601c..53c9f9c02 100644 --- a/cde/programs/dtfile/dtcopy/sharedFuncs.c +++ b/cde/programs/dtfile/dtcopy/sharedFuncs.c @@ -90,41 +90,11 @@ /************************************************************************ * Bitmap Data for Default Symbol **********************************<->***********************************/ - -static unsigned char errorBits[] = { - 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x00, 0xf0, 0x3a, 0x00, 0x58, 0x55, 0x00, - 0x2c, 0xa0, 0x00, 0x56, 0x40, 0x01, 0xaa, 0x80, 0x02, 0x46, 0x81, 0x01, - 0x8a, 0x82, 0x02, 0x06, 0x85, 0x01, 0x0a, 0x8a, 0x02, 0x06, 0x94, 0x01, - 0x0a, 0xe8, 0x02, 0x14, 0x50, 0x01, 0x28, 0xb0, 0x00, 0xd0, 0x5f, 0x00, - 0xa0, 0x2a, 0x00, 0x40, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; - -static unsigned char infoBits[] = { - 0x00, 0x00, 0x78, 0x00, 0x54, 0x00, 0x2c, 0x00, 0x54, 0x00, 0x28, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7e, 0x00, 0x2a, 0x00, 0x5c, 0x00, 0x28, 0x00, - 0x58, 0x00, 0x28, 0x00, 0x58, 0x00, 0x28, 0x00, 0x58, 0x00, 0x28, 0x00, - 0x58, 0x00, 0xae, 0x01, 0x56, 0x01, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00}; - -static unsigned char questionBits[] = { - 0xf0, 0x3f, 0x00, 0x58, 0x55, 0x00, 0xac, 0xaa, 0x00, 0xd6, 0x5f, 0x01, - 0xea, 0xbf, 0x02, 0xf6, 0x7f, 0x01, 0xea, 0xba, 0x02, 0xf6, 0x7d, 0x05, - 0xea, 0xba, 0x0a, 0x56, 0x7d, 0x15, 0xaa, 0xbe, 0x1e, 0x56, 0x5f, 0x01, - 0xac, 0xaf, 0x02, 0x58, 0x57, 0x01, 0xb0, 0xaf, 0x00, 0x60, 0x55, 0x01, - 0xa0, 0xaa, 0x00, 0x60, 0x17, 0x00, 0xa0, 0x2f, 0x00, 0x60, 0x17, 0x00, - 0xb0, 0x2a, 0x00, 0x50, 0x55, 0x00}; - -static unsigned char warningBits[] = { - 0x00, 0x00, 0x18, 0x00, 0x2c, 0x00, 0x56, 0x00, 0x2a, 0x00, 0x56, 0x00, - 0x2a, 0x00, 0x56, 0x00, 0x2c, 0x00, 0x14, 0x00, 0x2c, 0x00, 0x14, 0x00, - 0x2c, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x14, 0x00, - 0x2c, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00}; - -static unsigned char workingBits[] = { - 0x00, 0x00, 0x00, 0xfe, 0xff, 0x0f, 0xaa, 0xaa, 0x0a, 0x44, 0x55, 0x06, - 0xcc, 0x2a, 0x02, 0x44, 0x55, 0x06, 0xcc, 0x2a, 0x02, 0x84, 0x15, 0x06, - 0x8c, 0x2a, 0x02, 0x04, 0x15, 0x06, 0x0c, 0x0a, 0x02, 0x04, 0x06, 0x06, - 0x0c, 0x0b, 0x02, 0x84, 0x15, 0x06, 0xcc, 0x2a, 0x02, 0x44, 0x55, 0x06, - 0xcc, 0x2a, 0x02, 0x44, 0x55, 0x06, 0xcc, 0x2a, 0x02, 0x44, 0x55, 0x06, - 0xfe, 0xff, 0x0f, 0x56, 0x55, 0x05, 0x00, 0x00, 0x00}; +#include +#include +#include +#include +#include Widget G_toplevel; int G_dialog_closed = FALSE; @@ -344,19 +314,24 @@ ImageInitialize( Display *display ) /* create and install the default images for the symbol */ - image = CreateDefaultImage (display, (char *)errorBits, 20, 20); + image = CreateDefaultImage (display, (char *)xm_error_bits, xm_error_width, + xm_error_height); XmInstallImage (image, "default_xm_error"); - image = CreateDefaultImage (display, (char *)infoBits, 11, 24); + image = CreateDefaultImage (display, (char *)xm_information_bits, + xm_information_width, xm_information_height); XmInstallImage (image, "default_xm_information"); - image = CreateDefaultImage (display, (char *)questionBits, 22, 22); + image = CreateDefaultImage (display, (char *)xm_question_bits, + xm_question_width, xm_question_height); XmInstallImage (image, "default_xm_question"); - image = CreateDefaultImage (display, (char *)warningBits, 9, 22); + image = CreateDefaultImage (display, (char *)xm_warning_bits, + xm_warning_width, xm_warning_height); XmInstallImage (image, "default_xm_warning"); - image = CreateDefaultImage (display, (char *)workingBits, 21, 23); + image = CreateDefaultImage (display, (char *)xm_working_bits, + xm_working_width, xm_working_height); XmInstallImage (image, "default_xm_working"); return ; diff --git a/cde/programs/dtfile/dtfile.msg b/cde/programs/dtfile/dtfile.msg index cac72d0c1..04edf36cb 100644 --- a/cde/programs/dtfile/dtfile.msg +++ b/cde/programs/dtfile/dtfile.msg @@ -808,11 +808,6 @@ The selected file no longer exists. 31 File or Folder Name: 32 File Contents: -$ Messages 33-35 are used on hpux systems -33 On -34 Off -35 Follow Links: - 36 Open New View 37 Put In Workspace 38 Files Found (by Contents): diff --git a/cde/programs/dtfile/fsDialog.c b/cde/programs/dtfile/fsDialog.c index 9817fd3ca..a5f78e4d9 100644 --- a/cde/programs/dtfile/fsDialog.c +++ b/cde/programs/dtfile/fsDialog.c @@ -111,10 +111,6 @@ #include #endif -#ifdef __hpux -#include -#endif - /*---------------------- * global variables *----------------------*/ @@ -259,17 +255,6 @@ static void getFSType(const String path, strncpy(fsType,"",MAXLINELENGTH); #endif /* sun */ -#ifdef __hpux -#define GETFSTYPE - struct statfs buf; - - strncpy(platform,"hpux",MAXLINELENGTH); - if (statfs(path, &buf) == 0) - sprintf(fsType,"%li",buf.f_fsid[1]); - else - strncpy(fsType,"",MAXLINELENGTH); -#endif /* __hpux */ - #ifndef GETFSTYPE strncpy(platform,"unknown",MAXLINELENGTH); strncpy(fsType, "",MAXLINELENGTH); @@ -306,7 +291,6 @@ static void getFSType(const String path, * * sample dtfs configuration file * * aix:4=afs - * hpux:8=afs * sunos:nfs=nfs * end * @@ -459,7 +443,7 @@ configFileName(void) * get the file-system identifier from the configuration file * * fptr refers to an open configuration file - * fsType and platform identify the platfrom (aix, hpux, sunos, etc) + * fsType and platform identify the platfrom (aix, sunos, etc) * and file-system type (afs, nfs, dfs, etc.) * fsID is filled by matching platform:fsType with with information in the * file and reading the id; the string comparisons are case insensitive diff --git a/cde/programs/dthello/Makefile.am b/cde/programs/dthello/Makefile.am index 4f5775685..75b484662 100644 --- a/cde/programs/dthello/Makefile.am +++ b/cde/programs/dthello/Makefile.am @@ -5,7 +5,7 @@ bin_PROGRAMS = dthello dthello_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) if SOLARIS -dthello_LDADD += -ldl -lgen +dthello_LDADD += -lgen endif if LINUX diff --git a/cde/programs/dthelp/dthelpgen/helpgen.c b/cde/programs/dthelp/dthelpgen/helpgen.c index 84ad947e8..665848ab0 100644 --- a/cde/programs/dthelp/dthelpgen/helpgen.c +++ b/cde/programs/dthelp/dthelpgen/helpgen.c @@ -1317,11 +1317,7 @@ main( * telling the user that we're building help browser * information. */ -#ifdef __hpux - childPid = vfork(); -#else childPid = fork(); -#endif /* * if this is the child, exec the dthelpgen.ds script. */ diff --git a/cde/programs/dthelp/dthelpprint/Makefile.am b/cde/programs/dthelp/dthelpprint/Makefile.am index 8dca02139..81eda923f 100644 --- a/cde/programs/dthelp/dthelpprint/Makefile.am +++ b/cde/programs/dthelp/dthelpprint/Makefile.am @@ -10,7 +10,7 @@ dthelpprint_CPPFLAGS = -I.. -I ../../../lib/DtHelp \ dthelpprint_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) if SOLARIS -dthelpprint_LDADD += -lw -ldl -lgen -lm +dthelpprint_LDADD += -lw -lgen endif dthelpprint_SOURCES = Main.c Initialize.c PrintUtil.c PrintTopics.c \ diff --git a/cde/programs/dthelp/parser/canon1/build/proto.h b/cde/programs/dthelp/parser/canon1/build/proto.h index f9a4a9091..97dbdbfc1 100644 --- a/cde/programs/dthelp/parser/canon1/build/proto.h +++ b/cde/programs/dthelp/parser/canon1/build/proto.h @@ -128,8 +128,6 @@ int gettoken(int *c, int context); TREE *gettreenode(void); -void m_initctype(void); - void initialize(void); LOGICAL litproc(int delim); diff --git a/cde/programs/dthelp/parser/canon1/eltdef/proto.h b/cde/programs/dthelp/parser/canon1/eltdef/proto.h index e22c6e53e..3dba71fab 100644 --- a/cde/programs/dthelp/parser/canon1/eltdef/proto.h +++ b/cde/programs/dthelp/parser/canon1/eltdef/proto.h @@ -90,8 +90,6 @@ void getname(int first); int gettoken(int *c, int context); -void m_initctype(void); - void initialize(void); LOGICAL m_letter(M_WCHAR c); diff --git a/cde/programs/dthelp/parser/canon1/helptag/Makefile.am b/cde/programs/dthelp/parser/canon1/helptag/Makefile.am index 80eddc1fb..97e8d07ff 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/Makefile.am +++ b/cde/programs/dthelp/parser/canon1/helptag/Makefile.am @@ -28,5 +28,5 @@ AM_CPPFLAGS = -I$(HELPPARSERSRC) -I$(HELPUTILSRC) \ # needed by parser/ noinst_LIBRARIES = libhelptag.a -libhelptag_a_SOURCES = custom.c default.c help.c make.c option.c \ +libhelptag_a_SOURCES = custom.c default.c help.c option.c \ special.c out.c xref.c global.c ../parser/delim.h diff --git a/cde/programs/dthelp/parser/canon1/helptag/calculat.c b/cde/programs/dthelp/parser/canon1/helptag/calculat.c deleted file mode 100644 index 6f7178d67..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/calculat.c +++ /dev/null @@ -1,37 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: calculat.c /main/3 1995/11/08 09:28:53 rswiston $ */ -/* - * Copyright 1989 Hewlett-Packard Co. - * - * - * procedures used by calculator elements for 1.2 release 26jul89-pj - * - * NOTE : This file is used as a Microsoft Linker overlay, so it cannot - * have functions as pointers, eg. (proc *) f(). Routines that are - * or invoke function pointers should be in tex.c. - * - */ - -/* Obsolete */ - diff --git a/cde/programs/dthelp/parser/canon1/helptag/calculat.h b/cde/programs/dthelp/parser/canon1/helptag/calculat.h deleted file mode 100644 index 86e178d08..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/calculat.h +++ /dev/null @@ -1,828 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: calculat.h /main/3 1995/11/08 09:29:08 rswiston $ */ -/* this file contains special character expansions for various characters - * in Dot Matrix (computer), Menu Label (ml), and White Menu Label (wl) - * arrays are: ccompspec[] --> computer specials - * cmenlspec[] --> menu label specials - * cwmenlspec[]--> white menu label specials - */ - -/* special computer expansions for dot matrix in calculator style */ -EXTERN char *ccompspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ 0, -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tendmb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tendmb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tendmb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tendmb\\char'064}", -/* 95: _ */ "{\\tendmb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tendmb\\char'070}", -/* 124: | */ "{\\tendmb\\char'104}", -/* 125: } */ "{\\tendmb\\char'107}", -/* 126: ~ */ "{\\tendmb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tendmc\\char'041}", -/* 162: A circumflex */ "{\\tendmc\\char'042}", -/* 163: E grave */ "{\\tendmc\\char'043}", -/* 164: E circumflex */ "{\\tendmc\\char'044}", -/* 165: E dieresis */ "{\\tendmc\\char'045}", -/* 166: I circumflex */ "{\\tendmc\\char'046}", -/* 167: I dieresis */ "{\\tendmc\\char'047}", -/* 168: acute accent */ "{\\tendma\\char'023}", -/* 169: grave accent */ "{\\tendma\\char'022}", -/* 170: circumflex */ "{\\tendma\\char'136}", -/* 171: dieresis */ "{\\tendma\\char'177}", -/* 172: tilde */ "{\\tendma\\char'176}", -/* 173: U grave */ "{\\tendmc\\char'050}", -/* 174: U circumflex */ "{\\tendmc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tendmc\\char'053}", -/* 178: y acute */ "{\\tendmc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tendma\\char'030}", -/* 181: c cedilla */ "{\\tendma\\char'030}", -/* 182: N tilde */ "{\\tendmc\\char'055}", -/* 183: n tilde */ "{\\tendmc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tendma\\char'074}", -/* 185: inverted question mark */ "{\\tendma\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tendmc\\char'063}", -/* 193: e circumflex */ "{\\tendmc\\char'064}", -/* 194: o circumflex */ "{\\tendmc\\char'065}", -/* 195: u circumflex */ "{\\tendmc\\char'066}", -/* 196: a acute */ "{\\tendmc\\char'067}", -/* 197: e acute */ "{\\tendmc\\char'070}", -/* 198: o acute */ "{\\tendmc\\char'071}", -/* 199: u acute */ "{\\tendmc\\char'072}", -/* 200: a grave */ "{\\tendmc\\char'073}", -/* 201: e grave */ "{\\tendmc\\char'074}", -/* 202: o grave */ "{\\tendmc\\char'075}", -/* 203: u grave */ "{\\tendmc\\char'076}", -/* 204: a dieresis */ "{\\tendmc\\char'077}", -/* 205: e dieresis */ "{\\tendmc\\char'100}", -/* 206: o dieresis */ "{\\tendmc\\char'101}", -/* 207: u dieresis */ "{\\tendmc\\char'102}", -/* 208: A angstrom */ "{\\tendmc\\char'103}", -/* 209: i circumflex */ "{\\tendmc\\char'104}", -/* 210: O slash */ "{\\tendma\\char'037}", -/* 211: AE ligature */ "{\\tendma\\char'035}", -/* 212: a angstrom */ "{\\tendmc\\char'105}", -/* 213: i acute */ "{\\tendmc\\char'106}", -/* 214: o slash */ "{\\tendma\\char'034}", -/* 215: ae ligature */ "{\\tendma\\char'032}", -/* 216: A dieresis */ "{\\tendmc\\char'107}", -/* 217: i grave */ "{\\tendmc\\char'110}", -/* 218: O dieresis */ "{\\tendmc\\char'111}", -/* 219: U dieresis */ "{\\tendmc\\char'112}", -/* 220: E acute */ "{\\tendmc\\char'113}", -/* 221: i dieresis */ "{\\tendmc\\char'114}", -/* 222: SS ligature */ "{\\tendma\\char'031}", -/* 223: O circumflex */ "{\\tendmc\\char'115}", -/* 224: A acute */ "{\\tendmc\\char'116}", -/* 225: A tilde */ "{\\tendmc\\char'117}", -/* 226: a tilde */ "{\\tendmc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tendmc\\char'121}", -/* 230: I grave */ "{\\tendmc\\char'122}", -/* 231: O acute */ "{\\tendmc\\char'123}", -/* 232: O grave */ "{\\tendmc\\char'124}", -/* 233: O tilde */ "{\\tendmc\\char'125}", -/* 234: o tilde */ "{\\tendmc\\char'126}", -/* 235: S caron */ "{\\tendmc\\char'127}", -/* 236: s caron */ "{\\tendmc\\char'130}", -/* 237: U acute */ "{\\tendmc\\char'131}", -/* 238: Y dieresis */ "{\\tendmc\\char'132}", -/* 239: y dieresis */ "{\\tendmc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - -/* special menu label character expansions */ -EXTERN char *cmenlspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ "{\\tenmlb\\char'146}", -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tenmlb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tenmlb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tenmlb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tenmlb\\char'064}", -/* 95: _ */ "{\\tenmlb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tenmlb\\char'070}", -/* 124: | */ "{\\tenmlb\\char'104}", -/* 125: } */ "{\\tenmlb\\char'107}", -/* 126: ~ */ "{\\tenmlb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tenmlc\\char'041}", -/* 162: A circumflex */ "{\\tenmlc\\char'042}", -/* 163: E grave */ "{\\tenmlc\\char'043}", -/* 164: E circumflex */ "{\\tenmlc\\char'044}", -/* 165: E dieresis */ "{\\tenmlc\\char'045}", -/* 166: I circumflex */ "{\\tenmlc\\char'046}", -/* 167: I dieresis */ "{\\tenmlc\\char'047}", -/* 168: acute accent */ "{\\tenmla\\char'023}", -/* 169: grave accent */ "{\\tenmla\\char'022}", -/* 170: circumflex */ "{\\tenmla\\char'136}", -/* 171: dieresis */ "{\\tenmla\\char'177}", -/* 172: tilde */ "{\\tenmla\\char'176}", -/* 173: U grave */ "{\\tenmlc\\char'050}", -/* 174: U circumflex */ "{\\tenmlc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tenmlc\\char'053}", -/* 178: y acute */ "{\\tenmlc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tenmla\\char'030}", -/* 181: c cedilla */ "{\\tenmla\\char'030}", -/* 182: N tilde */ "{\\tenmlc\\char'055}", -/* 183: n tilde */ "{\\tenmlc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tenmla\\char'074}", -/* 185: inverted question mark */ "{\\tenmla\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tenmlc\\char'063}", -/* 193: e circumflex */ "{\\tenmlc\\char'064}", -/* 194: o circumflex */ "{\\tenmlc\\char'065}", -/* 195: u circumflex */ "{\\tenmlc\\char'066}", -/* 196: a acute */ "{\\tenmlc\\char'067}", -/* 197: e acute */ "{\\tenmlc\\char'070}", -/* 198: o acute */ "{\\tenmlc\\char'071}", -/* 199: u acute */ "{\\tenmlc\\char'072}", -/* 200: a grave */ "{\\tenmlc\\char'073}", -/* 201: e grave */ "{\\tenmlc\\char'074}", -/* 202: o grave */ "{\\tenmlc\\char'075}", -/* 203: u grave */ "{\\tenmlc\\char'076}", -/* 204: a dieresis */ "{\\tenmlc\\char'077}", -/* 205: e dieresis */ "{\\tenmlc\\char'100}", -/* 206: o dieresis */ "{\\tenmlc\\char'101}", -/* 207: u dieresis */ "{\\tenmlc\\char'102}", -/* 208: A angstrom */ "{\\tenmlc\\char'103}", -/* 209: i circumflex */ "{\\tenmlc\\char'104}", -/* 210: O slash */ "{\\tenmla\\char'037}", -/* 211: AE ligature */ "{\\tenmla\\char'035}", -/* 212: a angstrom */ "{\\tenmlc\\char'105}", -/* 213: i acute */ "{\\tenmlc\\char'106}", -/* 214: o slash */ "{\\tenmla\\char'034}", -/* 215: ae ligature */ "{\\tenmla\\char'032}", -/* 216: A dieresis */ "{\\tenmlc\\char'107}", -/* 217: i grave */ "{\\tenmlc\\char'110}", -/* 218: O dieresis */ "{\\tenmlc\\char'111}", -/* 219: U dieresis */ "{\\tenmlc\\char'112}", -/* 220: E acute */ "{\\tenmlc\\char'113}", -/* 221: i dieresis */ "{\\tenmlc\\char'114}", -/* 222: SS ligature */ "{\\tenmla\\char'031}", -/* 223: O circumflex */ "{\\tenmlc\\char'115}", -/* 224: A acute */ "{\\tenmlc\\char'116}", -/* 225: A tilde */ "{\\tenmlc\\char'117}", -/* 226: a tilde */ "{\\tenmlc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tenmlc\\char'121}", -/* 230: I grave */ "{\\tenmlc\\char'122}", -/* 231: O acute */ "{\\tenmlc\\char'123}", -/* 232: O grave */ "{\\tenmlc\\char'124}", -/* 233: O tilde */ "{\\tenmlc\\char'125}", -/* 234: o tilde */ "{\\tenmlc\\char'126}", -/* 235: S caron */ "{\\tenmlc\\char'127}", -/* 236: s caron */ "{\\tenmlc\\char'130}", -/* 237: U acute */ "{\\tenmlc\\char'131}", -/* 238: Y dieresis */ "{\\tenmlc\\char'132}", -/* 239: y dieresis */ "{\\tenmlc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - -/* white menu label special character expansions */ -EXTERN char *cwmenlspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ "{\\tenwlb\\char'146}", -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tenwlb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tenwlb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tenwlb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tenwlb\\char'064}", -/* 95: _ */ "{\\tenwlb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tenwlb\\char'070}", -/* 124: | */ "{\\tenwlb\\char'104}", -/* 125: } */ "{\\tenwlb\\char'107}", -/* 126: ~ */ "{\\tenwlb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tenwlc\\char'041}", -/* 162: A circumflex */ "{\\tenwlc\\char'042}", -/* 163: E grave */ "{\\tenwlc\\char'043}", -/* 164: E circumflex */ "{\\tenwlc\\char'044}", -/* 165: E dieresis */ "{\\tenwlc\\char'045}", -/* 166: I circumflex */ "{\\tenwlc\\char'046}", -/* 167: I dieresis */ "{\\tenwlc\\char'047}", -/* 168: acute accent */ "{\\tenwla\\char'023}", -/* 169: grave accent */ "{\\tenwla\\char'022}", -/* 170: circumflex */ "{\\tenwla\\char'136}", -/* 171: dieresis */ "{\\tenwla\\char'177}", -/* 172: tilde */ "{\\tenwla\\char'176}", -/* 173: U grave */ "{\\tenwlc\\char'050}", -/* 174: U circumflex */ "{\\tenwlc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tenwlc\\char'053}", -/* 178: y acute */ "{\\tenwlc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tenwla\\char'030}", -/* 181: c cedilla */ "{\\tenwla\\char'030}", -/* 182: N tilde */ "{\\tenwlc\\char'055}", -/* 183: n tilde */ "{\\tenwlc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tenwla\\char'074}", -/* 185: inverted question mark */ "{\\tenwla\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tenwlc\\char'063}", -/* 193: e circumflex */ "{\\tenwlc\\char'064}", -/* 194: o circumflex */ "{\\tenwlc\\char'065}", -/* 195: u circumflex */ "{\\tenwlc\\char'066}", -/* 196: a acute */ "{\\tenwlc\\char'067}", -/* 197: e acute */ "{\\tenwlc\\char'070}", -/* 198: o acute */ "{\\tenwlc\\char'071}", -/* 199: u acute */ "{\\tenwlc\\char'072}", -/* 200: a grave */ "{\\tenwlc\\char'073}", -/* 201: e grave */ "{\\tenwlc\\char'074}", -/* 202: o grave */ "{\\tenwlc\\char'075}", -/* 203: u grave */ "{\\tenwlc\\char'076}", -/* 204: a dieresis */ "{\\tenwlc\\char'077}", -/* 205: e dieresis */ "{\\tenwlc\\char'100}", -/* 206: o dieresis */ "{\\tenwlc\\char'101}", -/* 207: u dieresis */ "{\\tenwlc\\char'102}", -/* 208: A angstrom */ "{\\tenwlc\\char'103}", -/* 209: i circumflex */ "{\\tenwlc\\char'104}", -/* 210: O slash */ "{\\tenwla\\char'037}", -/* 211: AE ligature */ "{\\tenwla\\char'035}", -/* 212: a angstrom */ "{\\tenwlc\\char'105}", -/* 213: i acute */ "{\\tenwlc\\char'106}", -/* 214: o slash */ "{\\tenwla\\char'034}", -/* 215: ae ligature */ "{\\tenwla\\char'032}", -/* 216: A dieresis */ "{\\tenwlc\\char'107}", -/* 217: i grave */ "{\\tenwlc\\char'110}", -/* 218: O dieresis */ "{\\tenwlc\\char'111}", -/* 219: U dieresis */ "{\\tenwlc\\char'112}", -/* 220: E acute */ "{\\tenwlc\\char'113}", -/* 221: i dieresis */ "{\\tenwlc\\char'114}", -/* 222: SS ligature */ "{\\tenwla\\char'031}", -/* 223: O circumflex */ "{\\tenwlc\\char'115}", -/* 224: A acute */ "{\\tenwlc\\char'116}", -/* 225: A tilde */ "{\\tenwlc\\char'117}", -/* 226: a tilde */ "{\\tenwlc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tenwlc\\char'121}", -/* 230: I grave */ "{\\tenwlc\\char'122}", -/* 231: O acute */ "{\\tenwlc\\char'123}", -/* 232: O grave */ "{\\tenwlc\\char'124}", -/* 233: O tilde */ "{\\tenwlc\\char'125}", -/* 234: o tilde */ "{\\tenwlc\\char'126}", -/* 235: S caron */ "{\\tenwlc\\char'127}", -/* 236: s caron */ "{\\tenwlc\\char'130}", -/* 237: U acute */ "{\\tenwlc\\char'131}", -/* 238: Y dieresis */ "{\\tenwlc\\char'132}", -/* 239: y dieresis */ "{\\tenwlc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - diff --git a/cde/programs/dthelp/parser/canon1/helptag/charconv.h b/cde/programs/dthelp/parser/canon1/helptag/charconv.h deleted file mode 100644 index 18b7422b5..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/charconv.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: charconv.h /main/3 1995/11/08 09:29:21 rswiston $ */ -EXTERN M_WCHAR pc8_to_r8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\264','\317', - '\305','\300','\314','\310','\324','\265','\301','\315','\311','\335', - '\321','\331','\330','\320','\334','\327','\323','\302','\316','\312', - '\303','\313','\357','\332','\333','\277','\273','\274','\120','\276', - '\304','\325','\306','\307','\267','\266','\371','\372','\271','\055', - '\052','\370','\367','\270','\373','\375','\374','\374','\374','\174', - '\053','\043','\053','\053','\043','\043','\174','\043','\043','\053', - '\043','\053','\053','\053','\053','\053','\055','\053','\043','\053', - '\043','\043','\043','\043','\043','\075','\043','\043','\053','\043', - '\053','\053','\043','\043','\053','\053','\043','\053','\053','\374', - '\374','\374','\374','\374','\052','\336','\052','\052','\052','\052', - '\363','\052','\052','\052','\052','\052','\052','\326','\052','\052', - '\052','\376','\052','\052','\174','\174','\057','\176','\263','\362', - '\362','\052','\052','\052','\374','\377' - } -#endif - ; - -EXTERN M_WCHAR pc8dn_to_r8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\264','\317', - '\305','\300','\314','\310','\324','\265','\301','\315','\311','\335', - '\321','\331','\330','\320','\334','\327','\323','\302','\316','\312', - '\303','\313','\357','\332','\333','\326','\273','\322','\114','\154', - '\304','\325','\306','\307','\267','\266','\352','\351','\271','\342', - '\341','\154','\156','\270','\052','\272','\374','\374','\374','\174', - '\053','\043','\053','\053','\043','\043','\174','\043','\043','\053', - '\043','\053','\053','\053','\053','\053','\055','\053','\043','\053', - '\043','\043','\043','\043','\043','\075','\043','\043','\053','\043', - '\053','\053','\043','\043','\053','\053','\043','\053','\053','\374', - '\374','\374','\374','\374','\052','\336','\052','\052','\052','\052', - '\363','\052','\052','\052','\052','\052','\052','\326','\052','\052', - '\052','\376','\052','\052','\174','\174','\057','\176','\263','\362', - '\362','\052','\052','\052','\374','\377' - } -#endif - ; - -EXTERN M_WCHAR r8_to_pc8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\200','\201', - '\202','\203','\204','\205','\206','\207','\210','\211','\212','\213', - '\214','\215','\216','\217','\220','\221','\222','\223','\224','\225', - '\226','\227','\230','\231','\232','\233','\234','\235','\236','\237', - '\040','\101','\101','\105','\105','\105','\111','\111','\047','\140', - '\136','\042','\176','\125','\125','\234','\055','\131','\171','\370', - '\200','\207','\245','\244','\255','\250','\052','\234','\235','\052', - '\237','\233','\203','\210','\223','\226','\240','\202','\242','\243', - '\205','\212','\225','\227','\204','\211','\224','\201','\217','\214', - '\117','\222','\206','\241','\355','\221','\216','\215','\231','\232', - '\220','\213','\341','\117','\101','\101','\141','\104','\144','\111', - '\111','\117','\117','\117','\157','\123','\163','\125','\131','\230', - '\052','\052','\372','\346','\052','\052','\304','\254','\253','\246', - '\247','\256','\376','\257','\361','\040' - } -#endif - ; - -EXTERN M_WCHAR r8_to_pc8dn [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\200','\201', - '\202','\203','\204','\205','\206','\207','\210','\211','\212','\213', - '\214','\215','\216','\217','\220','\221','\222','\223','\224','\225', - '\226','\227','\230','\231','\232','\233','\234','\235','\236','\237', - '\040','\101','\101','\105','\105','\105','\111','\111','\047','\140', - '\136','\042','\176','\125','\125','\234','\055','\131','\171','\370', - '\200','\207','\245','\244','\255','\250','\257','\234','\131','\052', - '\146','\143','\203','\210','\223','\226','\240','\202','\242','\243', - '\205','\212','\225','\227','\204','\211','\224','\201','\217','\214', - '\235','\222','\206','\241','\233','\221','\216','\215','\231','\232', - '\220','\213','\341','\117','\101','\252','\251','\104','\144','\111', - '\111','\117','\117','\247','\246','\123','\163','\125','\131','\230', - '\052','\052','\372','\346','\052','\052','\304','\052','\052','\052', - '\052','\074','\376','\076','\361','\040' - } -#endif - ; - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/figure.c b/cde/programs/dthelp/parser/canon1/helptag/figure.c deleted file mode 100644 index 973a83537..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/figure.c +++ /dev/null @@ -1,29 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: figure.c /main/3 1995/11/08 09:29:52 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ -/* Figure.c contains HP Tag to TeX figure processing */ - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/fproto.h b/cde/programs/dthelp/parser/canon1/helptag/fproto.h index a5970c16d..c80be7bbf 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/fproto.h +++ b/cde/programs/dthelp/parser/canon1/helptag/fproto.h @@ -150,8 +150,6 @@ void strcode(M_WCHAR *string, FILE *outfile); void mb_strcode(char *string, FILE *outfile); -char *strstr(const char *s1, const char *s2); - void svhdstring(M_WCHAR *string); void svtcstring(M_WCHAR *string); diff --git a/cde/programs/dthelp/parser/canon1/helptag/global.h b/cde/programs/dthelp/parser/canon1/helptag/global.h index 3e8ed60e6..cd62e28a9 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/global.h +++ b/cde/programs/dthelp/parser/canon1/helptag/global.h @@ -38,11 +38,9 @@ #include #include -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) #include #include #include -#endif #define MAXHEADLINES 3 #define FNAMELEN 513 @@ -170,19 +168,11 @@ struct search { EXTERN SEARCH *path INIT(NULL) ; EXTERN SEARCH **endpath INIT(&path) ; EXTERN char dirsep -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) INIT('/') -#else -****define directory separator here**** -#endif ; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) #define CSEP '/' #define SSEP "/" -#else -****define directory separator here**** -#endif /* Location in .TEX file of two \wlog messages */ EXTERN long wlog ; diff --git a/cde/programs/dthelp/parser/canon1/helptag/grphpar.h b/cde/programs/dthelp/parser/canon1/helptag/grphpar.h deleted file mode 100644 index 92c79a4f6..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/grphpar.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: grphpar.h /main/3 1995/11/08 09:30:34 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* Variable definitions for HP Tag/TeX for figures and graphics */ -/* when adding, check "global.h" for conflicts */ - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/help.c b/cde/programs/dthelp/parser/canon1/helptag/help.c index d8652b757..8e3a68628 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/help.c +++ b/cde/programs/dthelp/parser/canon1/helptag/help.c @@ -29,8 +29,6 @@ #include "userinc.h" #include "globdec.h" -void m_mberr1(char *text, const char *arg); - void assert_hometopic_exists(void) { static const char hometopic[] = "-HOMETOPIC"; @@ -349,10 +347,7 @@ m_free(string, "GetDefaultHeaderString return"); /* construct a qualified file name */ static int mb_getqualified(char *qualname, char *unqualname) { -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) - FILE *f; -#endif char fn[FNAMELEN]; char tokstr [ 20 ], *gp, *p, *pp, *fnp, curdir[FNAMELEN-1]; int roomleft = FNAMELEN - 1; @@ -374,7 +369,6 @@ else fnp = fn; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) qualname[0] = '\0'; gp = qualname + strlen(qualname); roomleft = roomleft - strlen(qualname); @@ -402,49 +396,6 @@ else strcat(qualname,SSEP); roomleft--; } -#else -/* if MS-DOS, force to upper case, then get drive spec */ -strupr ( fn ); -if ( fn[1] == ':' ) { -strncpy ( qualname, fn, 2 ); -fnp += 2; -} -else { -getcwd(qualname, roomleft); -} -qualname[2] = '\0'; -gp = qualname + strlen ( qualname ); -roomleft = roomleft - strlen ( qualname ); -/* if path is from root, tack that on, else tack on the current - directory (for the referenced drive, if MS-DOS) */ -if ( *fnp == CSEP ) { -strcat ( qualname, SSEP ); -roomleft--; -++fnp; -} -else { -/* assume current directory always !!! */ -*gp = CSEP; -getcwd(curdir, FNAMELEN-1); -if (*curdir != *qualname) { - m_err1("Relative directory %s for non-current drive, can't qualify", - unqualname); - return (-1); - } -if (strlen(curdir) > 3) { - if ((strlen(curdir+3)+1) < roomleft) { /* "1" for SSEP */ - strcpy( gp+1, curdir+3 ); - strcat ( qualname, SSEP ); - roomleft = roomleft - strlen(curdir+3) - 1; /* "1" for SSEP */ - } - else { - m_err1("Internal error. File name too long for qualifying: %s", - unqualname); - return (-1); - } - } -} -#endif strcpy(tokstr, " \r\n\t"); strcat(tokstr, SSEP); @@ -488,11 +439,6 @@ do { while (1); *strrchr(qualname, CSEP) = '\0'; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) -#else -strupr ( qualname ); -#endif - return ( 0 ); } /* end mb_getqualified */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/help.if b/cde/programs/dthelp/parser/canon1/helptag/help.if index 6c856cfb7..7241d124f 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/help.if +++ b/cde/programs/dthelp/parser/canon1/helptag/help.if @@ -144,17 +144,6 @@ -#if defined(hpux) - { - M_WCHAR *wc_1, *wc_2; - - wc_1 = MakeWideCharString("HPUX"); - wc_2 = MakeWideCharString("m-machine"); - m_piaction(wc_1, wc_2, M_SDATA) ; - m_free(wc_1,"wide character string"); - m_free(wc_2,"wide character string"); - } -#else #if defined(_AIX) { M_WCHAR *wc_1, *wc_2; @@ -165,8 +154,7 @@ m_free(wc_1,"wide character string"); m_free(wc_2,"wide character string"); } -#else -#if defined(sun) +#elif defined(sun) { M_WCHAR *wc_1, *wc_2; @@ -177,11 +165,9 @@ m_free(wc_2,"wide character string"); } #else - m_piaction("UNDEFINED MACHINE", - "m-machine", + m_piaction((M_WCHAR *) "UNDEFINED MACHINE", + (M_WCHAR *) "m-machine", M_SDATA) ; -#endif -#endif #endif diff --git a/cde/programs/dthelp/parser/canon1/helptag/make.c b/cde/programs/dthelp/parser/canon1/helptag/make.c deleted file mode 100644 index 5c6ab8ef0..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/make.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: make.c /main/3 1995/11/08 09:31:30 rswiston $ */ -/* Copyright (c) 1986, 1987, 1988, 1989 Hewlett-Packard Co. */ -/* Functions for pseudo-make features of HP Tag/TeX translator, i.e., - for testing which generated files are current and which must be - recreated. */ -/* - NOTE : This file is used as a Microsoft Linker overlay, so it cannot - have functions as pointers, eg. (proc *) f(). Routines that are - or invoke function pointers should be in tex.c. -*/ - -#if defined(hpux) || defined(_AIX) || defined(sun) -#include -#include -#endif - -#include - -#if defined(hpux) || defined(_AIX) || defined(sun) -#undef M_PI /* M_PI is used by markup, we don't need the math PI */ -#endif - -#include "userinc.h" -#include "globdec.h" - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/need.c b/cde/programs/dthelp/parser/canon1/helptag/need.c deleted file mode 100644 index 57bc22b6f..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/need.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: need.c /main/3 1995/11/08 09:31:41 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/helptag/option.c b/cde/programs/dthelp/parser/canon1/helptag/option.c index f3c49192b..a0382d66a 100644 --- a/cde/programs/dthelp/parser/canon1/helptag/option.c +++ b/cde/programs/dthelp/parser/canon1/helptag/option.c @@ -26,7 +26,7 @@ #include "userinc.h" #include "globdec.h" -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) /* get definition of getenv(3c) for getting of environment variables */ #include #endif @@ -37,8 +37,6 @@ #define TAGDOTOPT "helptag.opt" #define DOTOPT ".opt" -void m_mberr1(char *text, const char *arg); - void options(LOGICAL filelenonly) { int i; @@ -59,7 +57,7 @@ if (optfile = fopen(nameofoptfile, "r")) } m_free(nameofoptfile, "installation helptag.opt"); -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) { char *opts; @@ -76,7 +74,7 @@ if (opts) } } } -#endif /* hpux or _AIX or sun */ +#endif /* _AIX or sun */ /* Check helptag.opt in input directory */ if (indir) diff --git a/cde/programs/dthelp/parser/canon1/helptag/table.c b/cde/programs/dthelp/parser/canon1/helptag/table.c deleted file mode 100644 index 3367aa752..000000000 --- a/cde/programs/dthelp/parser/canon1/helptag/table.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: table.c /main/3 1995/11/08 09:32:57 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/parser/addinput.c b/cde/programs/dthelp/parser/canon1/parser/addinput.c deleted file mode 100644 index 81a8296f7..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/addinput.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: addinput.c /main/3 1995/11/08 09:34:10 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/canon1/parser/delfree.c b/cde/programs/dthelp/parser/canon1/parser/delfree.c deleted file mode 100644 index e7b6fd86d..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/delfree.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: delfree.c /main/3 1995/11/08 09:35:18 rswiston $ */ -/* Copyright (c) 1988 Hewlett-Packard Co. */ - -/* Versions of m_free and m_malloc for debugging. */ - -/**/ -#include -#include -#include "basic.h" -#include "trie.h" -#include "dtd.h" -#include "parser.h" - -m_free(block, msg) - char *block ; - char *msg ; - { - free(block) ; - fprintf(m_outfile, "%5u:%5u- Freed %s\n", - (unsigned int) ((unsigned long) block >> 16), - (unsigned int) block, msg) ; - } - -char *m_mallocx(size, msg) - int size ; - char *msg ; - { - char *p ; - - if (! size) return(NULL) ; - p = malloc(size) ; - if (! p) { - m_err1("Unable to allocate space for %s", msg) ; - exit(TRUE) ; - } - fprintf(m_outfile, "%5u:%5u- Allocated %s\n", - (unsigned int) ((unsigned long) p >> 16), (unsigned int) p, msg) ; - return(p) ; - } diff --git a/cde/programs/dthelp/parser/canon1/parser/dmpline.c b/cde/programs/dthelp/parser/canon1/parser/dmpline.c deleted file mode 100644 index a8a3a9c6b..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/dmpline.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: dmpline.c /main/3 1995/11/08 09:35:33 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write input file and line number for an error message */ -void m_dumpline(file, line) -M_WCHAR *file ; -int line ; -{ -char buffer[10] ; - -m_errline("Line ") ; -sprintf(buffer, "%d", line) ; -m_errline(buffer) ; -if (file) - { - char mb_file; - - m_errline(" of File ") ; - mb_file = MakeMByteString(file); - m_errline(mb_file) ; - m_free(mb_file,"multi-byte string"); - } -} diff --git a/cde/programs/dthelp/parser/canon1/parser/eprefix.c b/cde/programs/dthelp/parser/canon1/parser/eprefix.c deleted file mode 100644 index c1257c0f9..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/eprefix.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: eprefix.c /main/3 1995/11/08 09:36:12 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message prefix */ -void m_eprefix(void) - { - m_errline("\n*****\n") ; - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/errline.c b/cde/programs/dthelp/parser/canon1/parser/errline.c deleted file mode 100644 index 80ad19c88..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/errline.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: errline.c /main/3 1995/11/08 09:36:25 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Process error message text */ -void m_errline(p) -M_WCHAR *p ; -{ -char mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_errfile) ; -fputs(mb_p, stderr) ; -m_free(mb_p,"multi-byte string"); -} - diff --git a/cde/programs/dthelp/parser/canon1/parser/esuffix.c b/cde/programs/dthelp/parser/canon1/parser/esuffix.c deleted file mode 100644 index 31b12d8a1..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/esuffix.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: esuffix.c /main/3 1995/11/08 09:36:52 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message suffix */ -void m_esuffix(void) - { - m_errline("\n") ; - m_dumpline(m_thisfile(), m_thisline()) ; - m_errline(":\n") ; - m_lastchars() ; - if (++m_errcnt == m_errlim) { - m_error("Too many errors, processing stopped") ; - m_exit(TRUE) ; - } - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/findpar.c b/cde/programs/dthelp/parser/canon1/parser/findpar.c deleted file mode 100644 index d74048fe5..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/findpar.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: findpar.c /main/3 1995/11/08 09:37:18 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns index in parameter - list of a specified parameter for an element (i.e., 1 for first parameter - specified in the DTD, 2 for second, etc.). First parameter, elt, is - the name of the element. Second parameter is the name of the parameter - or NULL. Third parameter is used only if second parameter is NULL. In - the latter case, function returns first keyword parameter, if any, for - which the specified value is a legal value and otherwise first - Returns 0 if elt is not a valid element name, if param is specified - but is not a valid parameter name, or if param is NULL and value is - not a valid value of any of elt's parameters. */ -int m_findpar( const char *elt , const char *param , const M_WCHAR *value ) -{ -M_ELEMENT eltid ; -int par ; -int i ; -M_WCHAR *wc_elt; - -wc_elt = MakeWideCharString(elt); -if (! (eltid = m_packedlook(m_entree, wc_elt))) - { - m_free(wc_elt,"wide character string"); - return(M_NULLVAL) ; - } -m_free(wc_elt,"wide character string"); - -/* A parameter name specified */ -if (param) - { - for (par = m_element[eltid - 1].parptr, i = 1 ; - - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (!m_wcmbupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - return(i) ; - return(M_NULLVAL) ; - } - -/* No parameter name specified */ - -/* First check is it a valid keyword? */ -for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) -if (m_parameter[par - 1].type == M_KEYWORD) -if (m_partype(par, value)) return(i) ; - -/* It wasn't a keyword. Check for valid value for some other parameter.*/ -for (par = m_element[eltid - 1].parptr, i = 1 ; -i <= m_element[eltid - 1].parcount ; -par++, i++) - { - if (m_parameter[par - 1].type == M_KEYWORD) continue ; - if (m_partype(par, value)) return(i) ; - } - -/* Not a valid value for any parameter */ -return(M_NULLVAL) ; -} - diff --git a/cde/programs/dthelp/parser/canon1/parser/getc.c b/cde/programs/dthelp/parser/canon1/parser/getc.c deleted file mode 100644 index 148529a45..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/getc.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: getc.c /main/3 1995/11/08 09:37:33 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default get-char procedure */ - -#include "userinc.h" -#include "globdec.h" - -int m_getc(m_ptr) - void *m_ptr ; - { - return(getc((FILE*) m_ptr)) ; - } diff --git a/cde/programs/dthelp/parser/canon1/parser/ifdata.c b/cde/programs/dthelp/parser/canon1/parser/ifdata.c deleted file mode 100644 index e81317bd0..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/ifdata.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: ifdata.c /main/3 1995/11/08 09:38:00 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Ifdata.c contains functions used by the interface to access the - single item of interface-determined data stored on the parse stack. */ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Retrieve the interface data stored with the current element's nth parent */ -void *m_getdata(n, flag) - int n ; - LOGICAL *flag ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - *flag = TRUE ; - return(stackptr->ifdata) ; - } - } - *flag = FALSE ; - return(NULL) ; - } - -/* Store interface data for the current element's nth parent */ -LOGICAL m_putdata(data, n) - void *data ; - int n ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - stackptr->ifdata = data ; - return(TRUE) ; - } - } - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/openfrst.c b/cde/programs/dthelp/parser/canon1/parser/openfrst.c deleted file mode 100644 index 0ec9fb4b2..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/openfrst.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: openfrst.c /main/3 1995/11/08 09:39:20 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default open SYSTEM entity procedure */ - -#include "userinc.h" -#include "globdec.h" - -void *m_openfirst(void) - { - return((void *) stdin) ; - } - - diff --git a/cde/programs/dthelp/parser/canon1/parser/parcount.c b/cde/programs/dthelp/parser/canon1/parser/parcount.c deleted file mode 100644 index dc18117a8..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/parcount.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parcount.c /main/3 1995/11/08 09:40:02 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns number of parameters - of specified element (-1 indicates error). */ -int m_parcount(elt) - M_WCHAR *elt ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(-1) ; - return(m_element[eltid - 1].parcount) ; - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/pardef.c b/cde/programs/dthelp/parser/canon1/parser/pardef.c deleted file mode 100644 index a1b7de380..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/pardef.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: pardef.c /main/3 1995/11/08 09:40:15 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns pointer to default - value of a parameter of an element. Type is set to indicate type of - default. Error indication is type is 0 and function returns NULL. */ -M_WCHAR *m_pardefault(elt, param, type) - M_WCHAR *elt ; - M_WCHAR *param ; - unsigned char *type ; - { - M_ELEMENT eltid ; - int par ; - int i ; - - *type = M_NULLVAL ; - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - - for (par = m_element[eltid - 1].parptr, i = 0 ; - i < m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) { - *type = (unsigned char) m_parameter[par - 1].deftype ; - if (*type == M_REQUIRED || *type == M_NULLDEF) return(NULL) ; - return(m_parameter[par -1].defval) ; - } - - /* Can't find the parameter */ - return(NULL) ; - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/parname.c b/cde/programs/dthelp/parser/canon1/parser/parname.c deleted file mode 100644 index 9d2ccb8bf..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/parname.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parname.c /main/3 1995/11/08 09:40:42 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns name of nth parameter - of specified element (NULL indicates error). */ -M_WCHAR *m_parname(elt, n) - M_WCHAR *elt ; - int n ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - if (n < 1 || n > m_element[eltid - 1].parcount) return(NULL) ; - return(&m_pname[m_parameter[(n - 1) + m_element[eltid - 1].parptr - 1]. - paramname]) ; - } - -M_WCHAR *m_mbparname(elt, n) -char *elt ; -int n ; -{ -M_WCHAR *wc_elt, *retval; - -wc_elt = MakeWideCharString(elt); -retval = m_parname(wc_elt, n); -m_free(wc_elt,"wide character string"); -} - diff --git a/cde/programs/dthelp/parser/canon1/parser/parser.c b/cde/programs/dthelp/parser/canon1/parser/parser.c index 130716661..0bd301160 100644 --- a/cde/programs/dthelp/parser/canon1/parser/parser.c +++ b/cde/programs/dthelp/parser/canon1/parser/parser.c @@ -90,7 +90,7 @@ static char sopt[] = static char name[] = "m_name = '%s'\n" ; static char literal[] = "m_literal = '%s'\n" ; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) +#if defined(_AIX) || defined(sun) || defined(__linux__) char buffer[M_LITLEN + 80] ; #else #define max4(a,b,c,d) (a>b&&a>c&&a>d) ? a : ((b>c&&b>d) ? b : (c>d ? c : d)) diff --git a/cde/programs/dthelp/parser/canon1/parser/parvalok.c b/cde/programs/dthelp/parser/canon1/parser/parvalok.c deleted file mode 100644 index 776b7ef8e..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/parvalok.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parvalok.c /main/3 1995/11/08 09:41:38 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns TRUE if specified value - is a legal value for the indicated parameter of the given element, - FALSE otherwise. */ -LOGICAL m_parvalok( M_WCHAR *elt , M_WCHAR *param , const M_WCHAR *value ) - { - M_ELEMENT eltid ; - int par ; - int i ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(FALSE) ; - for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - if (m_partype(par, value)) return(TRUE) ; - else return(FALSE) ; - - /* No such parameter */ - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/canon1/parser/procscmp.c b/cde/programs/dthelp/parser/canon1/parser/procscmp.c deleted file mode 100644 index a9509b329..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/procscmp.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: procscmp.c /main/3 1995/11/08 09:42:07 rswiston $ */ -/* - Copyright 1986 Tandem Computers Incorporated. -This product and information is proprietary of Tandem Computers Incorporated. - Copyright 1986, 1987, 1988, 1989 Hewlett-Packard Co. -*/ - -/* Procscmp.c prefixes the interface's procs.c file with appropriate - declarations so it can be compiled. */ - -#include "userinc.h" -#include "globdec.h" - -/* Include any procedures specified by the interface designer */ -#include "procs.c" - - diff --git a/cde/programs/dthelp/parser/canon1/parser/proto.h b/cde/programs/dthelp/parser/canon1/parser/proto.h index b7e86e1e6..9f2900e2c 100644 --- a/cde/programs/dthelp/parser/canon1/parser/proto.h +++ b/cde/programs/dthelp/parser/canon1/parser/proto.h @@ -21,6 +21,8 @@ * Floor, Boston, MA 02110-1301 USA */ /* $XConsortium: proto.h /main/3 1995/11/08 09:42:21 rswiston $ */ +void chksnb(void); + int m_actgetc(void); void m_adjuststate(void); @@ -31,6 +33,8 @@ void m_attval(M_WCHAR *string); LOGICAL m_attvonly(M_WCHAR *string); +void m_mberr1(const char *text, const char *arg); + int m_checkstart(M_ELEMENT val); LOGICAL m_ckend(M_ELEMENT val, LOGICAL neednet); @@ -153,8 +157,6 @@ void m_holdproc(void); void m_inctest(int *count, int limit, char *message); -void m_initctype(void); - void m_initialize(void); void m_lastchars(void); diff --git a/cde/programs/dthelp/parser/canon1/parser/scan.c b/cde/programs/dthelp/parser/canon1/parser/scan.c index 7c08595f8..19c988d51 100644 --- a/cde/programs/dthelp/parser/canon1/parser/scan.c +++ b/cde/programs/dthelp/parser/canon1/parser/scan.c @@ -47,8 +47,6 @@ This product and information is proprietary of Tandem Computers Incorporated. #include "entity2.h" #include "sref.h" -void m_mberr1(char *text, const char *arg); - /* Actually read a character from an input stream */ int m_actgetc(void) { diff --git a/cde/programs/dthelp/parser/canon1/parser/setopt.c b/cde/programs/dthelp/parser/canon1/parser/setopt.c deleted file mode 100644 index b984d67d6..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/setopt.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: setopt.c /main/3 1995/11/08 09:42:58 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - - -/* Set program options */ -void m_setoptions(void) - { - if (m_argc > 1) m_optstring(m_argv[1]) ; - } diff --git a/cde/programs/dthelp/parser/canon1/parser/signmsg.c b/cde/programs/dthelp/parser/canon1/parser/signmsg.c deleted file mode 100644 index b23cb0a63..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/signmsg.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: signmsg.c /main/3 1995/11/08 09:43:25 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Process signon message text */ -void m_signmsg(p) -M_WCHAR *p ; -{ -char mb_p; - -mb_p = MakeMByteString(p); -m_errline(mb_p) ; -m_free(mb_p,"multi-byte string"); -} diff --git a/cde/programs/dthelp/parser/canon1/parser/startdoc.c b/cde/programs/dthelp/parser/canon1/parser/startdoc.c deleted file mode 100644 index 7e7c98bfe..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/startdoc.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: startdoc.c /main/3 1995/11/08 09:43:53 rswiston $ */ -/* -Copyright 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Default function called at start of document instance. Allows interface - control after all entity declarations have been processed. Not needed - in valid documents (when it is called just prior to global start-code), - but may be useful in some applications nevertheless. */ -void m_startdoc(void) - { - } - - diff --git a/cde/programs/dthelp/parser/canon1/parser/trace.c b/cde/programs/dthelp/parser/canon1/parser/trace.c deleted file mode 100644 index a4318ca28..000000000 --- a/cde/programs/dthelp/parser/canon1/parser/trace.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: trace.c /main/3 1995/11/08 09:45:23 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write debugging trace information */ -void m_wctrace(p) -M_WCHAR *p ; -{ -char *mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_outfile) ; -m_free(mb_p,"multi-byte string"); -} - -void m_trace(p) -char *p ; -{ -fputs(p, m_outfile); -} diff --git a/cde/programs/dthelp/parser/canon1/util/emptyfil.c b/cde/programs/dthelp/parser/canon1/util/emptyfil.c deleted file mode 100644 index 033096b4a..000000000 --- a/cde/programs/dthelp/parser/canon1/util/emptyfil.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: emptyfil.c /main/3 1995/11/08 09:49:33 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* Creates a file with nothing in it */ -#include -#include "basic.h" - -void main(int argc, char **argv); - -void main(int argc, char **argv) - { - if (argc != 2) { - fprintf(stderr, "Usage: emptyfil filename\n") ; - exit(1) ; - } - if (! fopen(argv[1], "w")) - fprintf(stderr, "Unable to open %s\n", argv[1]) ; - return 0; - } diff --git a/cde/programs/dthelp/parser/canon1/util/fclndir.c b/cde/programs/dthelp/parser/canon1/util/fclndir.c deleted file mode 100644 index b69046c8a..000000000 --- a/cde/programs/dthelp/parser/canon1/util/fclndir.c +++ /dev/null @@ -1,160 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: fclndir.c /main/3 1995/11/08 09:51:14 rswiston $ */ -/* Copyright (c) 1987-1990 Hewlett-Packard Co. - -Fclndir.c compares two files, ignoring C line directives that appear -within them as well as blank lines, and leading white space. It exits -with an error code of 0 if the files are the same, 1 if they differ, and -2 if the program was called incorrectly. -*/ - -/* Feb. 11, 1991, CED: Added v2 fixes to v3 version of fclndir. - Thus, both versions now copy the source file to the target if - the files differ. -*/ - -#include -#include -#include -#include "basic.h" -#define SAME 0 -/* different defined to be 0 as of 12-1-89, because fclndir now does -the file-copy if the files are different, or if the second file -doesn't exist. (different used to be 1.) --ced */ -#define DIFFERENT 0 -#define ERROR 2 - -struct data { - int c ; - LOGICAL linestart ; - char *p ; - char *q ; - } data1, data2 ; - -char linedir[] = "#line" ; -char *p = linedir, *q = linedir + 1 ; - -void main(int argc, char **argv); - -void copyfile(char *pfile1, char *pfile2); - -int nextchar(FILE *file, struct data *data); - -void main(int argc, char **argv) - { - FILE *one, *two ; - int c1, c2 ; - - if (argc != 3) { - fputs("Usage: fclndir file1 (=source) file2 (=target)\n", stderr) ; - exit(ERROR) ; - } - if (! (one = fopen(argv[1], "r"))) { - fprintf(stderr, "ERROR: source file unavailable: %s\n", argv[1]) ; - exit(ERROR) ; - } - if (! (two = fopen(argv[2], "r"))) { - fprintf(stderr, "No target file %s; copying source file...\n", argv[2]) ; - /* call to copyfile entered by ced, 12-29-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - data1.linestart = data2.linestart = TRUE ; - data1.p = data2.p = linedir ; - data1.q = data2.q = linedir + 1 ; - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - while (c1 != EOF && c2 != EOF) { - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - } - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - fprintf(stderr, "%s and %s are the same\n", argv[1], argv[2]) ; - exit(SAME) ; - } - -/* copyfile inserted by ced, 12-1-89. */ -void copyfile(char *pfile1, char *pfile2) -{ - int ret; - char *pcmd; - int slen; - -/* malloc space for the system command: two filenames, plus a command, - spaces, and the terminating null */ - slen = strlen(pfile1) + strlen(pfile2) + 8; - pcmd = (char *) malloc(slen); - ret = snprintf(pcmd, slen, "cp %s %s",pfile1,pfile2); - ret = system(pcmd); - ret = snprintf(pcmd, slen, "touch %s",pfile2); - ret = system(pcmd); - free(pcmd); -} - -int nextchar(FILE *file, struct data *data) - { - while (data->linestart) { - data->linestart = FALSE ; - for (data->p = linedir ; *data->p; data->p++) - if ((data->c = getc(file)) != (int) *data->p) break ; - /* Found a line directive, skip remainder of line */ - if (! *data->p) { - data->c = getc(file) ; - while (data->c != '\n' && data->c != EOF) - data->c = getc(file) ; - data->linestart = TRUE ; - continue ; - } - /* Check for leading blanks */ - else if (data->p == linedir) { - while (data->c == ' ' || data->c == '\t') data->c = getc(file) ; - if (data->c == '\n') { - data->linestart = TRUE ; - continue ; - } - return(data->c) ; - } - /* Line began with a prefix of #line */ - data->q = linedir ; - } - - if (data->q < data->p) return(*data->q++) ; - else if (data->q++ != data->p) data->c = getc(file) ; - if (data->c == '\n') data->linestart = TRUE ; - return(data->c) ; - } - diff --git a/cde/programs/dthelp/parser/canon1/util/initct.c b/cde/programs/dthelp/parser/canon1/util/initct.c deleted file mode 100644 index 9f03df46d..000000000 --- a/cde/programs/dthelp/parser/canon1/util/initct.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: initct.c /main/3 1995/11/08 09:51:46 rswiston $ */ -/* Copyright (c) 1987, 1988 Hewlett-Packard Co. */ -/* M_initctype initializes the array used to indicate which ASCII - characters can appear within SGML names */ - -#include "basic.h" -#include "common.h" -extern char m_chartype[M_CHARSETLEN] ; - -void m_initctype(void) - { - int i ; - -/* ****************************** NOTE: ********************************** - If the set of name characters is ever modified, make appropriate changes - in ELTDEF's scanner for testing for valid C identifiers as parameter - names */ - for (i = 0 ; i < M_CHARSETLEN ; i++) m_chartype[i] = M_NONNAME ; - for (i = 'A' ; i <= 'Z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = 'a' ; i <= 'z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = '0' ; i <= '9' ; i++) m_chartype[i] = M_DIGIT ; - m_chartype['.'] = m_chartype['-'] = M_NAMECHAR ; - } diff --git a/cde/programs/dthelp/parser/canon1/util/malloc.c b/cde/programs/dthelp/parser/canon1/util/malloc.c index 32ef2dbf1..f3e5766e1 100644 --- a/cde/programs/dthelp/parser/canon1/util/malloc.c +++ b/cde/programs/dthelp/parser/canon1/util/malloc.c @@ -55,7 +55,7 @@ void m_free(void *block, char *msg) free(block) ; if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) block >> 16), (unsigned int) block) ; @@ -84,7 +84,7 @@ void *m_malloc(int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else @@ -116,7 +116,7 @@ void *m_realloc(void *ptr, int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else diff --git a/cde/programs/dthelp/parser/canon1/util/strstr.c b/cde/programs/dthelp/parser/canon1/util/strstr.c deleted file mode 100644 index 020b91df5..000000000 --- a/cde/programs/dthelp/parser/canon1/util/strstr.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: strstr.c /main/3 1995/11/08 09:54:55 rswiston $ */ -char *strstr (char *s1, char *s2) -{ - - int x, y ; - - y = strlen ( s2 ) ; - x = strlen ( s1 ) - y ; - - if ( x < 0 ) return ( ( char * ) 0L ) ; - do { - if ( strncmp ( s1 + x, s2, y ) == 0 ) return ( s1 + x ) ; - } - while ( --x >= 0 ) ; - - return ( ( char * ) 0L ) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/build/proto.h b/cde/programs/dthelp/parser/pass1/build/proto.h index e5396c6b9..07ebb0e6e 100644 --- a/cde/programs/dthelp/parser/pass1/build/proto.h +++ b/cde/programs/dthelp/parser/pass1/build/proto.h @@ -128,8 +128,6 @@ int gettoken(int *c, int context); TREE *gettreenode(void); -void m_initctype(void); - void initialize(void); LOGICAL litproc(int delim); diff --git a/cde/programs/dthelp/parser/pass1/eltdef/proto.h b/cde/programs/dthelp/parser/pass1/eltdef/proto.h index fb7810839..e2eb9b340 100644 --- a/cde/programs/dthelp/parser/pass1/eltdef/proto.h +++ b/cde/programs/dthelp/parser/pass1/eltdef/proto.h @@ -90,8 +90,6 @@ void getname(int first); int gettoken(int *c, int context); -void m_initctype(void); - void initialize(void); LOGICAL m_letter(M_WCHAR c); diff --git a/cde/programs/dthelp/parser/pass1/helptag/Makefile.am b/cde/programs/dthelp/parser/pass1/helptag/Makefile.am index 125baf747..aa9a1eeab 100644 --- a/cde/programs/dthelp/parser/pass1/helptag/Makefile.am +++ b/cde/programs/dthelp/parser/pass1/helptag/Makefile.am @@ -28,5 +28,5 @@ AM_CPPFLAGS = -I. -I$(HELPPARSERSRC) -I$(HELPUTILSRC) \ # needed by parser/ noinst_LIBRARIES = libhelptag.a -libhelptag_a_SOURCES = custom.c default.c help.c make.c option.c \ +libhelptag_a_SOURCES = custom.c default.c help.c option.c \ special.c out.c xref.c global.c ../parser/delim.h diff --git a/cde/programs/dthelp/parser/pass1/helptag/calculat.c b/cde/programs/dthelp/parser/pass1/helptag/calculat.c deleted file mode 100644 index 567167cc9..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/calculat.c +++ /dev/null @@ -1,37 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: calculat.c /main/3 1995/11/08 10:06:50 rswiston $ */ -/* - * Copyright 1989 Hewlett-Packard Co. - * - * - * procedures used by calculator elements for 1.2 release 26jul89-pj - * - * NOTE : This file is used as a Microsoft Linker overlay, so it cannot - * have functions as pointers, eg. (proc *) f(). Routines that are - * or invoke function pointers should be in tex.c. - * - */ - -/* Obsolete */ - diff --git a/cde/programs/dthelp/parser/pass1/helptag/calculat.h b/cde/programs/dthelp/parser/pass1/helptag/calculat.h deleted file mode 100644 index e8f848256..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/calculat.h +++ /dev/null @@ -1,828 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: calculat.h /main/3 1995/11/08 10:07:11 rswiston $ */ -/* this file contains special character expansions for various characters - * in Dot Matrix (computer), Menu Label (ml), and White Menu Label (wl) - * arrays are: ccompspec[] --> computer specials - * cmenlspec[] --> menu label specials - * cwmenlspec[]--> white menu label specials - */ - -/* special computer expansions for dot matrix in calculator style */ -EXTERN char *ccompspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ 0, -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tendmb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tendmb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tendmb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tendmb\\char'064}", -/* 95: _ */ "{\\tendmb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tendmb\\char'070}", -/* 124: | */ "{\\tendmb\\char'104}", -/* 125: } */ "{\\tendmb\\char'107}", -/* 126: ~ */ "{\\tendmb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tendmc\\char'041}", -/* 162: A circumflex */ "{\\tendmc\\char'042}", -/* 163: E grave */ "{\\tendmc\\char'043}", -/* 164: E circumflex */ "{\\tendmc\\char'044}", -/* 165: E dieresis */ "{\\tendmc\\char'045}", -/* 166: I circumflex */ "{\\tendmc\\char'046}", -/* 167: I dieresis */ "{\\tendmc\\char'047}", -/* 168: acute accent */ "{\\tendma\\char'023}", -/* 169: grave accent */ "{\\tendma\\char'022}", -/* 170: circumflex */ "{\\tendma\\char'136}", -/* 171: dieresis */ "{\\tendma\\char'177}", -/* 172: tilde */ "{\\tendma\\char'176}", -/* 173: U grave */ "{\\tendmc\\char'050}", -/* 174: U circumflex */ "{\\tendmc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tendmc\\char'053}", -/* 178: y acute */ "{\\tendmc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tendma\\char'030}", -/* 181: c cedilla */ "{\\tendma\\char'030}", -/* 182: N tilde */ "{\\tendmc\\char'055}", -/* 183: n tilde */ "{\\tendmc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tendma\\char'074}", -/* 185: inverted question mark */ "{\\tendma\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tendmc\\char'063}", -/* 193: e circumflex */ "{\\tendmc\\char'064}", -/* 194: o circumflex */ "{\\tendmc\\char'065}", -/* 195: u circumflex */ "{\\tendmc\\char'066}", -/* 196: a acute */ "{\\tendmc\\char'067}", -/* 197: e acute */ "{\\tendmc\\char'070}", -/* 198: o acute */ "{\\tendmc\\char'071}", -/* 199: u acute */ "{\\tendmc\\char'072}", -/* 200: a grave */ "{\\tendmc\\char'073}", -/* 201: e grave */ "{\\tendmc\\char'074}", -/* 202: o grave */ "{\\tendmc\\char'075}", -/* 203: u grave */ "{\\tendmc\\char'076}", -/* 204: a dieresis */ "{\\tendmc\\char'077}", -/* 205: e dieresis */ "{\\tendmc\\char'100}", -/* 206: o dieresis */ "{\\tendmc\\char'101}", -/* 207: u dieresis */ "{\\tendmc\\char'102}", -/* 208: A angstrom */ "{\\tendmc\\char'103}", -/* 209: i circumflex */ "{\\tendmc\\char'104}", -/* 210: O slash */ "{\\tendma\\char'037}", -/* 211: AE ligature */ "{\\tendma\\char'035}", -/* 212: a angstrom */ "{\\tendmc\\char'105}", -/* 213: i acute */ "{\\tendmc\\char'106}", -/* 214: o slash */ "{\\tendma\\char'034}", -/* 215: ae ligature */ "{\\tendma\\char'032}", -/* 216: A dieresis */ "{\\tendmc\\char'107}", -/* 217: i grave */ "{\\tendmc\\char'110}", -/* 218: O dieresis */ "{\\tendmc\\char'111}", -/* 219: U dieresis */ "{\\tendmc\\char'112}", -/* 220: E acute */ "{\\tendmc\\char'113}", -/* 221: i dieresis */ "{\\tendmc\\char'114}", -/* 222: SS ligature */ "{\\tendma\\char'031}", -/* 223: O circumflex */ "{\\tendmc\\char'115}", -/* 224: A acute */ "{\\tendmc\\char'116}", -/* 225: A tilde */ "{\\tendmc\\char'117}", -/* 226: a tilde */ "{\\tendmc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tendmc\\char'121}", -/* 230: I grave */ "{\\tendmc\\char'122}", -/* 231: O acute */ "{\\tendmc\\char'123}", -/* 232: O grave */ "{\\tendmc\\char'124}", -/* 233: O tilde */ "{\\tendmc\\char'125}", -/* 234: o tilde */ "{\\tendmc\\char'126}", -/* 235: S caron */ "{\\tendmc\\char'127}", -/* 236: s caron */ "{\\tendmc\\char'130}", -/* 237: U acute */ "{\\tendmc\\char'131}", -/* 238: Y dieresis */ "{\\tendmc\\char'132}", -/* 239: y dieresis */ "{\\tendmc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - -/* special menu label character expansions */ -EXTERN char *cmenlspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ "{\\tenmlb\\char'146}", -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tenmlb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tenmlb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tenmlb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tenmlb\\char'064}", -/* 95: _ */ "{\\tenmlb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tenmlb\\char'070}", -/* 124: | */ "{\\tenmlb\\char'104}", -/* 125: } */ "{\\tenmlb\\char'107}", -/* 126: ~ */ "{\\tenmlb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tenmlc\\char'041}", -/* 162: A circumflex */ "{\\tenmlc\\char'042}", -/* 163: E grave */ "{\\tenmlc\\char'043}", -/* 164: E circumflex */ "{\\tenmlc\\char'044}", -/* 165: E dieresis */ "{\\tenmlc\\char'045}", -/* 166: I circumflex */ "{\\tenmlc\\char'046}", -/* 167: I dieresis */ "{\\tenmlc\\char'047}", -/* 168: acute accent */ "{\\tenmla\\char'023}", -/* 169: grave accent */ "{\\tenmla\\char'022}", -/* 170: circumflex */ "{\\tenmla\\char'136}", -/* 171: dieresis */ "{\\tenmla\\char'177}", -/* 172: tilde */ "{\\tenmla\\char'176}", -/* 173: U grave */ "{\\tenmlc\\char'050}", -/* 174: U circumflex */ "{\\tenmlc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tenmlc\\char'053}", -/* 178: y acute */ "{\\tenmlc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tenmla\\char'030}", -/* 181: c cedilla */ "{\\tenmla\\char'030}", -/* 182: N tilde */ "{\\tenmlc\\char'055}", -/* 183: n tilde */ "{\\tenmlc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tenmla\\char'074}", -/* 185: inverted question mark */ "{\\tenmla\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tenmlc\\char'063}", -/* 193: e circumflex */ "{\\tenmlc\\char'064}", -/* 194: o circumflex */ "{\\tenmlc\\char'065}", -/* 195: u circumflex */ "{\\tenmlc\\char'066}", -/* 196: a acute */ "{\\tenmlc\\char'067}", -/* 197: e acute */ "{\\tenmlc\\char'070}", -/* 198: o acute */ "{\\tenmlc\\char'071}", -/* 199: u acute */ "{\\tenmlc\\char'072}", -/* 200: a grave */ "{\\tenmlc\\char'073}", -/* 201: e grave */ "{\\tenmlc\\char'074}", -/* 202: o grave */ "{\\tenmlc\\char'075}", -/* 203: u grave */ "{\\tenmlc\\char'076}", -/* 204: a dieresis */ "{\\tenmlc\\char'077}", -/* 205: e dieresis */ "{\\tenmlc\\char'100}", -/* 206: o dieresis */ "{\\tenmlc\\char'101}", -/* 207: u dieresis */ "{\\tenmlc\\char'102}", -/* 208: A angstrom */ "{\\tenmlc\\char'103}", -/* 209: i circumflex */ "{\\tenmlc\\char'104}", -/* 210: O slash */ "{\\tenmla\\char'037}", -/* 211: AE ligature */ "{\\tenmla\\char'035}", -/* 212: a angstrom */ "{\\tenmlc\\char'105}", -/* 213: i acute */ "{\\tenmlc\\char'106}", -/* 214: o slash */ "{\\tenmla\\char'034}", -/* 215: ae ligature */ "{\\tenmla\\char'032}", -/* 216: A dieresis */ "{\\tenmlc\\char'107}", -/* 217: i grave */ "{\\tenmlc\\char'110}", -/* 218: O dieresis */ "{\\tenmlc\\char'111}", -/* 219: U dieresis */ "{\\tenmlc\\char'112}", -/* 220: E acute */ "{\\tenmlc\\char'113}", -/* 221: i dieresis */ "{\\tenmlc\\char'114}", -/* 222: SS ligature */ "{\\tenmla\\char'031}", -/* 223: O circumflex */ "{\\tenmlc\\char'115}", -/* 224: A acute */ "{\\tenmlc\\char'116}", -/* 225: A tilde */ "{\\tenmlc\\char'117}", -/* 226: a tilde */ "{\\tenmlc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tenmlc\\char'121}", -/* 230: I grave */ "{\\tenmlc\\char'122}", -/* 231: O acute */ "{\\tenmlc\\char'123}", -/* 232: O grave */ "{\\tenmlc\\char'124}", -/* 233: O tilde */ "{\\tenmlc\\char'125}", -/* 234: o tilde */ "{\\tenmlc\\char'126}", -/* 235: S caron */ "{\\tenmlc\\char'127}", -/* 236: s caron */ "{\\tenmlc\\char'130}", -/* 237: U acute */ "{\\tenmlc\\char'131}", -/* 238: Y dieresis */ "{\\tenmlc\\char'132}", -/* 239: y dieresis */ "{\\tenmlc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - -/* white menu label special character expansions */ -EXTERN char *cwmenlspec[256] -#if defined(DEFINE) -= { -/* Char Name TeX Expansion */ -/* */ -/* 0: ^@ NUL */ 0, -/* 1: ^A SOH */ 0, -/* 2: ^B STX */ 0, -/* 3: ^C ETX */ 0, -/* 4: ^D EOT */ 0, -/* 5: ^E ENQ */ 0, -/* 6: ^F ACK */ 0, -/* 7: ^G BEL */ 0, -/* 8: ^H BS */ 0, -/* 9: ^I HT */ 0, -/* 10: ^J LF */ 0, -/* 11: ^K VT */ 0, -/* 12: ^L FF */ 0, -/* 13: ^M CR */ 0, -/* 14: ^N SO */ 0, -/* 15: ^O SI */ 0, -/* 16: ^P DLE */ 0, -/* 17: ^Q DC1 */ 0, -/* 18: ^R DC2 */ 0, -/* 19: ^S DC3 */ 0, -/* 20: ^T DC4 */ 0, -/* 21: ^U NAK */ 0, -/* 22: ^V SYN */ 0, -/* 23: ^W ETB */ 0, -/* 24: ^X CAN */ 0, -/* 25: ^Y EM */ 0, -/* 26: ^Z SUB */ 0, -/* 27: ^[ ESC */ 0, -/* 28: ^\ FS */ 0, -/* 29: ^] GS */ 0, -/* 30: ^^ RS */ 0, -/* 31: ^_ US */ 0, -/* 32: SP */ "{\\tenwlb\\char'146}", -/* 33: ! */ 0, -/* 34: " */ 0, -/* 35: # */ "\\#", -/* 36: $ */ "{\\dollar}", -/* 37: % */ "\\%", -/* 38: & */ "\\&", -/* 39: ' */ "{'}", -/* 40: ( */ 0, -/* 41: ) */ 0, -/* 42: * */ 0, -/* 43: + */ 0, -/* 44: , */ 0, -/* 45: - */ "{-}", -/* 46: . */ 0, -/* 47: / */ 0, -/* 48: 0 */ 0, -/* 49: 1 */ 0, -/* 50: 2 */ 0, -/* 51: 3 */ 0, -/* 52: 4 */ 0, -/* 53: 5 */ 0, -/* 54: 6 */ 0, -/* 55: 7 */ 0, -/* 56: 8 */ 0, -/* 57: 9 */ 0, -/* 58: : */ 0, -/* 59: ; */ 0, -/* 60: < */ "{\\tenwlb\\char'045}", -/* 61: = */ 0, -/* 62: > */ "{\\tenwlb\\char'046}", -/* 63: ? */ 0, -/* 64: @ */ 0, -/* 65: A */ 0, -/* 66: B */ 0, -/* 67: C */ 0, -/* 68: D */ 0, -/* 69: E */ 0, -/* 70: F */ 0, -/* 71: G */ 0, -/* 72: H */ 0, -/* 73: I */ 0, -/* 74: J */ 0, -/* 75: K */ 0, -/* 76: L */ 0, -/* 77: M */ 0, -/* 78: N */ 0, -/* 79: O */ 0, -/* 80: P */ 0, -/* 81: Q */ 0, -/* 82: R */ 0, -/* 83: S */ 0, -/* 84: T */ 0, -/* 85: U */ 0, -/* 86: V */ 0, -/* 87: W */ 0, -/* 88: X */ 0, -/* 89: Y */ 0, -/* 90: Z */ 0, -/* 91: [ */ 0, -/* 92: \\ */ "{\\tenwlb\\char'047}", -/* 93: ] */ 0, -/* 94: ^ */ "{\\tenwlb\\char'064}", -/* 95: _ */ "{\\tenwlb\\char'066}", -/* 96: ` */ "{`}", -/* 97: a */ 0, -/* 98: b */ 0, -/* 99: c */ 0, -/* 100: d */ 0, -/* 101: e */ 0, -/* 102: f */ 0, -/* 103: g */ 0, -/* 104: h */ 0, -/* 105: i */ 0, -/* 106: j */ 0, -/* 107: k */ 0, -/* 108: l */ 0, -/* 109: m */ 0, -/* 110: n */ 0, -/* 111: o */ 0, -/* 112: p */ 0, -/* 113: q */ 0, -/* 114: r */ 0, -/* 115: s */ 0, -/* 116: t */ 0, -/* 117: u */ 0, -/* 118: v */ 0, -/* 119: w */ 0, -/* 120: x */ 0, -/* 121: y */ 0, -/* 122: z */ 0, -/* 123: { */ "{\\tenwlb\\char'070}", -/* 124: | */ "{\\tenwlb\\char'104}", -/* 125: } */ "{\\tenwlb\\char'107}", -/* 126: ~ */ "{\\tenwlb\\char'116}", -/* 127: DEL */ 0, -/* 128: undefined */ 0, -/* 129: undefined */ 0, -/* 130: undefined */ 0, -/* 131: undefined */ 0, -/* 132: undefined */ 0, -/* 133: undefined */ 0, -/* 134: undefined */ 0, -/* 135: undefined */ 0, -/* 136: undefined */ 0, -/* 137: undefined */ 0, -/* 138: undefined */ 0, -/* 139: undefined */ 0, -/* 140: undefined */ 0, -/* 141: undefined */ 0, -/* 142: undefined */ 0, -/* 143: undefined */ 0, -/* 144: undefined */ 0, -/* 145: undefined */ 0, -/* 146: undefined */ 0, -/* 147: undefined */ 0, -/* 148: undefined */ 0, -/* 149: undefined */ 0, -/* 150: undefined */ 0, -/* 151: undefined */ 0, -/* 152: undefined */ 0, -/* 153: undefined */ 0, -/* 154: undefined */ 0, -/* 155: undefined */ 0, -/* 156: undefined */ 0, -/* 157: undefined */ 0, -/* 158: undefined */ 0, -/* 159: undefined */ 0, -/* 160: undefined */ 0, -/* 161: A grave */ "{\\tenwlc\\char'041}", -/* 162: A circumflex */ "{\\tenwlc\\char'042}", -/* 163: E grave */ "{\\tenwlc\\char'043}", -/* 164: E circumflex */ "{\\tenwlc\\char'044}", -/* 165: E dieresis */ "{\\tenwlc\\char'045}", -/* 166: I circumflex */ "{\\tenwlc\\char'046}", -/* 167: I dieresis */ "{\\tenwlc\\char'047}", -/* 168: acute accent */ "{\\tenwla\\char'023}", -/* 169: grave accent */ "{\\tenwla\\char'022}", -/* 170: circumflex */ "{\\tenwla\\char'136}", -/* 171: dieresis */ "{\\tenwla\\char'177}", -/* 172: tilde */ "{\\tenwla\\char'176}", -/* 173: U grave */ "{\\tenwlc\\char'050}", -/* 174: U circumflex */ "{\\tenwlc\\char'051}", -/* 175: Italian Lira */ 0, -/* 176: overbar */ 0, -/* 177: Y acute */ "{\\tenwlc\\char'053}", -/* 178: y acute */ "{\\tenwlc\\char'054}", -/* 179: degree */ 0, -/* 180: C cedilla */ "{\\tenwla\\char'030}", -/* 181: c cedilla */ "{\\tenwla\\char'030}", -/* 182: N tilde */ "{\\tenwlc\\char'055}", -/* 183: n tilde */ "{\\tenwlc\\char'056}", -/* 184: inverted exclamation mark */ "{\\tenwla\\char'074}", -/* 185: inverted question mark */ "{\\tenwla\\char'076}", -/* 186: currency sign */ 0, -/* 187: pound sterling */ 0, -/* 188: Yen */ 0, -/* 189: Section sign */ 0, -/* 190: florin */ 0, -/* 191: Cent sign */ 0, -/* 192: a circumflex */ "{\\tenwlc\\char'063}", -/* 193: e circumflex */ "{\\tenwlc\\char'064}", -/* 194: o circumflex */ "{\\tenwlc\\char'065}", -/* 195: u circumflex */ "{\\tenwlc\\char'066}", -/* 196: a acute */ "{\\tenwlc\\char'067}", -/* 197: e acute */ "{\\tenwlc\\char'070}", -/* 198: o acute */ "{\\tenwlc\\char'071}", -/* 199: u acute */ "{\\tenwlc\\char'072}", -/* 200: a grave */ "{\\tenwlc\\char'073}", -/* 201: e grave */ "{\\tenwlc\\char'074}", -/* 202: o grave */ "{\\tenwlc\\char'075}", -/* 203: u grave */ "{\\tenwlc\\char'076}", -/* 204: a dieresis */ "{\\tenwlc\\char'077}", -/* 205: e dieresis */ "{\\tenwlc\\char'100}", -/* 206: o dieresis */ "{\\tenwlc\\char'101}", -/* 207: u dieresis */ "{\\tenwlc\\char'102}", -/* 208: A angstrom */ "{\\tenwlc\\char'103}", -/* 209: i circumflex */ "{\\tenwlc\\char'104}", -/* 210: O slash */ "{\\tenwla\\char'037}", -/* 211: AE ligature */ "{\\tenwla\\char'035}", -/* 212: a angstrom */ "{\\tenwlc\\char'105}", -/* 213: i acute */ "{\\tenwlc\\char'106}", -/* 214: o slash */ "{\\tenwla\\char'034}", -/* 215: ae ligature */ "{\\tenwla\\char'032}", -/* 216: A dieresis */ "{\\tenwlc\\char'107}", -/* 217: i grave */ "{\\tenwlc\\char'110}", -/* 218: O dieresis */ "{\\tenwlc\\char'111}", -/* 219: U dieresis */ "{\\tenwlc\\char'112}", -/* 220: E acute */ "{\\tenwlc\\char'113}", -/* 221: i dieresis */ "{\\tenwlc\\char'114}", -/* 222: SS ligature */ "{\\tenwla\\char'031}", -/* 223: O circumflex */ "{\\tenwlc\\char'115}", -/* 224: A acute */ "{\\tenwlc\\char'116}", -/* 225: A tilde */ "{\\tenwlc\\char'117}", -/* 226: a tilde */ "{\\tenwlc\\char'120}", -/* 227: Eth */ 0, -/* 228: eth */ 0, -/* 229: I acute */ "{\\tenwlc\\char'121}", -/* 230: I grave */ "{\\tenwlc\\char'122}", -/* 231: O acute */ "{\\tenwlc\\char'123}", -/* 232: O grave */ "{\\tenwlc\\char'124}", -/* 233: O tilde */ "{\\tenwlc\\char'125}", -/* 234: o tilde */ "{\\tenwlc\\char'126}", -/* 235: S caron */ "{\\tenwlc\\char'127}", -/* 236: s caron */ "{\\tenwlc\\char'130}", -/* 237: U acute */ "{\\tenwlc\\char'131}", -/* 238: Y dieresis */ "{\\tenwlc\\char'132}", -/* 239: y dieresis */ "{\\tenwlc\\char'133}", -/* 240: Thorn */ 0, -/* 241: thorn */ 0, -/* 242: undefined */ 0, -/* 243: mu */ 0, -/* 244: paragraph sign */ 0, -/* 245: fraction 3/4 */ 0, -/* 246: long dash */ 0, -/* 247: fraction 1/4 */ 0, -/* 248: fraction 1/2 */ 0, -/* 249: Female ordinal */ 0, -/* 250: Male ordinal */ 0, -/* 251: French double open quote */ 0, -/* 252: Solid square */ 0, -/* 253: French double close quote */ 0, -/* 254: Plus over minus sign */ 0, -/* 255: undefined */ 0 -} -#endif -; - diff --git a/cde/programs/dthelp/parser/pass1/helptag/charconv.h b/cde/programs/dthelp/parser/pass1/helptag/charconv.h deleted file mode 100644 index 3a7c97daf..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/charconv.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: charconv.h /main/3 1995/11/08 10:07:32 rswiston $ */ -EXTERN M_WCHAR pc8_to_r8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\264','\317', - '\305','\300','\314','\310','\324','\265','\301','\315','\311','\335', - '\321','\331','\330','\320','\334','\327','\323','\302','\316','\312', - '\303','\313','\357','\332','\333','\277','\273','\274','\120','\276', - '\304','\325','\306','\307','\267','\266','\371','\372','\271','\055', - '\052','\370','\367','\270','\373','\375','\374','\374','\374','\174', - '\053','\043','\053','\053','\043','\043','\174','\043','\043','\053', - '\043','\053','\053','\053','\053','\053','\055','\053','\043','\053', - '\043','\043','\043','\043','\043','\075','\043','\043','\053','\043', - '\053','\053','\043','\043','\053','\053','\043','\053','\053','\374', - '\374','\374','\374','\374','\052','\336','\052','\052','\052','\052', - '\363','\052','\052','\052','\052','\052','\052','\326','\052','\052', - '\052','\376','\052','\052','\174','\174','\057','\176','\263','\362', - '\362','\052','\052','\052','\374','\377' - } -#endif - ; - -EXTERN M_WCHAR pc8dn_to_r8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\264','\317', - '\305','\300','\314','\310','\324','\265','\301','\315','\311','\335', - '\321','\331','\330','\320','\334','\327','\323','\302','\316','\312', - '\303','\313','\357','\332','\333','\326','\273','\322','\114','\154', - '\304','\325','\306','\307','\267','\266','\352','\351','\271','\342', - '\341','\154','\156','\270','\052','\272','\374','\374','\374','\174', - '\053','\043','\053','\053','\043','\043','\174','\043','\043','\053', - '\043','\053','\053','\053','\053','\053','\055','\053','\043','\053', - '\043','\043','\043','\043','\043','\075','\043','\043','\053','\043', - '\053','\053','\043','\043','\053','\053','\043','\053','\053','\374', - '\374','\374','\374','\374','\052','\336','\052','\052','\052','\052', - '\363','\052','\052','\052','\052','\052','\052','\326','\052','\052', - '\052','\376','\052','\052','\174','\174','\057','\176','\263','\362', - '\362','\052','\052','\052','\374','\377' - } -#endif - ; - -EXTERN M_WCHAR r8_to_pc8 [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\200','\201', - '\202','\203','\204','\205','\206','\207','\210','\211','\212','\213', - '\214','\215','\216','\217','\220','\221','\222','\223','\224','\225', - '\226','\227','\230','\231','\232','\233','\234','\235','\236','\237', - '\040','\101','\101','\105','\105','\105','\111','\111','\047','\140', - '\136','\042','\176','\125','\125','\234','\055','\131','\171','\370', - '\200','\207','\245','\244','\255','\250','\052','\234','\235','\052', - '\237','\233','\203','\210','\223','\226','\240','\202','\242','\243', - '\205','\212','\225','\227','\204','\211','\224','\201','\217','\214', - '\117','\222','\206','\241','\355','\221','\216','\215','\231','\232', - '\220','\213','\341','\117','\101','\101','\141','\104','\144','\111', - '\111','\117','\117','\117','\157','\123','\163','\125','\131','\230', - '\052','\052','\372','\346','\052','\052','\304','\254','\253','\246', - '\247','\256','\376','\257','\361','\040' - } -#endif - ; - -EXTERN M_WCHAR r8_to_pc8dn [256] -#if defined(DEFINE) -= { - '\000','\001','\002','\003','\004','\005','\006','\007','\010','\011', - '\012','\013','\014','\015','\016','\017','\020','\021','\022','\023', - '\024','\025','\026','\027','\030','\031','\032','\033','\034','\035', - '\036','\037','\040','\041','\042','\043','\044','\045','\046','\047', - '\050','\051','\052','\053','\054','\055','\056','\057','\060','\061', - '\062','\063','\064','\065','\066','\067','\070','\071','\072','\073', - '\074','\075','\076','\077','\100','\101','\102','\103','\104','\105', - '\106','\107','\110','\111','\112','\113','\114','\115','\116','\117', - '\120','\121','\122','\123','\124','\125','\126','\127','\130','\131', - '\132','\133','\134','\135','\136','\137','\140','\141','\142','\143', - '\144','\145','\146','\147','\150','\151','\152','\153','\154','\155', - '\156','\157','\160','\161','\162','\163','\164','\165','\166','\167', - '\170','\171','\172','\173','\174','\175','\176','\177','\200','\201', - '\202','\203','\204','\205','\206','\207','\210','\211','\212','\213', - '\214','\215','\216','\217','\220','\221','\222','\223','\224','\225', - '\226','\227','\230','\231','\232','\233','\234','\235','\236','\237', - '\040','\101','\101','\105','\105','\105','\111','\111','\047','\140', - '\136','\042','\176','\125','\125','\234','\055','\131','\171','\370', - '\200','\207','\245','\244','\255','\250','\257','\234','\131','\052', - '\146','\143','\203','\210','\223','\226','\240','\202','\242','\243', - '\205','\212','\225','\227','\204','\211','\224','\201','\217','\214', - '\235','\222','\206','\241','\233','\221','\216','\215','\231','\232', - '\220','\213','\341','\117','\101','\252','\251','\104','\144','\111', - '\111','\117','\117','\247','\246','\123','\163','\125','\131','\230', - '\052','\052','\372','\346','\052','\052','\304','\052','\052','\052', - '\052','\074','\376','\076','\361','\040' - } -#endif - ; - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/figure.c b/cde/programs/dthelp/parser/pass1/helptag/figure.c deleted file mode 100644 index 0e791e6ad..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/figure.c +++ /dev/null @@ -1,29 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: figure.c /main/3 1995/11/08 10:08:13 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ -/* Figure.c contains HP Tag to TeX figure processing */ - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/fproto.h b/cde/programs/dthelp/parser/pass1/helptag/fproto.h index 8b35a5660..b71946c01 100644 --- a/cde/programs/dthelp/parser/pass1/helptag/fproto.h +++ b/cde/programs/dthelp/parser/pass1/helptag/fproto.h @@ -149,8 +149,6 @@ void strcode(M_WCHAR *string, FILE *outfile); void mb_strcode(char *string, FILE *outfile); -char *strstr(const char *s1, const char *s2); - void svhdstring(M_WCHAR *string); void svtcstring(M_WCHAR *string); diff --git a/cde/programs/dthelp/parser/pass1/helptag/grphpar.c b/cde/programs/dthelp/parser/pass1/helptag/grphpar.c deleted file mode 100644 index b7f5780c9..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/grphpar.c +++ /dev/null @@ -1,29 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: grphpar.c /main/3 1995/11/08 10:08:53 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* HP Tag/TeX figure aspect ratio calculations */ - -#define GRAPHDEF - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/grphpar.h b/cde/programs/dthelp/parser/pass1/helptag/grphpar.h deleted file mode 100644 index 19f847ca6..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/grphpar.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: grphpar.h /main/3 1995/11/08 10:09:08 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* Variable definitions for HP Tag/TeX for figures and graphics */ -/* when adding, check "global.h" for conflicts */ - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/help.c b/cde/programs/dthelp/parser/pass1/helptag/help.c index 8b31d1cea..6af835d4c 100644 --- a/cde/programs/dthelp/parser/pass1/helptag/help.c +++ b/cde/programs/dthelp/parser/pass1/helptag/help.c @@ -30,8 +30,6 @@ #include "globdec.h" #include "proto.h" -void m_mberr1(char *text, const char *arg); - void assert_hometopic_exists(void) { static const char hometopic[] = "-HOMETOPIC"; @@ -350,9 +348,7 @@ m_free(string, "GetDefaultHeaderString return"); /* construct a qualified file name */ static int mb_getqualified(char *qualname, char *unqualname) { -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) FILE *f; -#endif char fn[FNAMELEN]; char tokstr [ 20 ], *gp, *p, *pp, *fnp, curdir[FNAMELEN-1]; int roomleft = FNAMELEN - 1; @@ -374,7 +370,6 @@ else fnp = fn; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) qualname[0] = '\0'; gp = qualname + strlen(qualname); roomleft = roomleft - strlen(qualname); @@ -402,49 +397,6 @@ else strcat(qualname,SSEP); roomleft--; } -#else -/* if MS-DOS, force to upper case, then get drive spec */ -strupr ( fn ); -if ( fn[1] == ':' ) { -strncpy ( qualname, fn, 2 ); -fnp += 2; -} -else { -getcwd(qualname, roomleft); -} -qualname[2] = '\0'; -gp = qualname + strlen ( qualname ); -roomleft = roomleft - strlen ( qualname ); -/* if path is from root, tack that on, else tack on the current - directory (for the referenced drive, if MS-DOS) */ -if ( *fnp == CSEP ) { -strcat ( qualname, SSEP ); -roomleft--; -++fnp; -} -else { -/* assume current directory always !!! */ -*gp = CSEP; -getcwd(curdir, FNAMELEN-1); -if (*curdir != *qualname) { - m_err1("Relative directory %s for non-current drive, can't qualify", - unqualname); - return (-1); - } -if (strlen(curdir) > 3) { - if ((strlen(curdir+3)+1) < roomleft) { /* "1" for SSEP */ - strcpy( gp+1, curdir+3 ); - strcat ( qualname, SSEP ); - roomleft = roomleft - strlen(curdir+3) - 1; /* "1" for SSEP */ - } - else { - m_err1("Internal error. File name too long for qualifying: %s", - unqualname); - return (-1); - } - } -} -#endif strcpy(tokstr, " \r\n\t"); strcat(tokstr, SSEP); @@ -488,11 +440,6 @@ do { while (1); *strrchr(qualname, CSEP) = '\0'; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) -#else -strupr ( qualname ); -#endif - return ( 0 ); } /* end mb_getqualified */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/help.if b/cde/programs/dthelp/parser/pass1/helptag/help.if index aa43e0ccb..b48523096 100644 --- a/cde/programs/dthelp/parser/pass1/helptag/help.if +++ b/cde/programs/dthelp/parser/pass1/helptag/help.if @@ -133,17 +133,6 @@ <\CODE> -#if defined(hpux) - { - M_WCHAR *wc_1, *wc_2; - - wc_1 = MakeWideCharString("HPUX"); - wc_2 = MakeWideCharString("m-machine"); - m_piaction(wc_1, wc_2, M_SDATA) ; - m_free(wc_1,"wide character string"); - m_free(wc_2,"wide character string"); - } -#else #if defined(_AIX) { M_WCHAR *wc_1, *wc_2; @@ -154,8 +143,7 @@ m_free(wc_1,"wide character string"); m_free(wc_2,"wide character string"); } -#else -#if defined(sun) +#elif defined(sun) { M_WCHAR *wc_1, *wc_2; @@ -166,11 +154,9 @@ m_free(wc_2,"wide character string"); } #else - m_piaction("UNDEFINED MACHINE", - "m-machine", + m_piaction((M_WCHAR *) "UNDEFINED MACHINE", + (M_WCHAR *) "m-machine", M_SDATA) ; -#endif -#endif #endif <\CODE> diff --git a/cde/programs/dthelp/parser/pass1/helptag/make.c b/cde/programs/dthelp/parser/pass1/helptag/make.c deleted file mode 100644 index 7dfe88931..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/make.c +++ /dev/null @@ -1,48 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: make.c /main/3 1995/11/08 10:10:53 rswiston $ */ -/* Copyright (c) 1986, 1987, 1988, 1989 Hewlett-Packard Co. */ -/* Functions for pseudo-make features of HP Tag/TeX translator, i.e., - for testing which generated files are current and which must be - recreated. */ -/* - NOTE : This file is used as a Microsoft Linker overlay, so it cannot - have functions as pointers, eg. (proc *) f(). Routines that are - or invoke function pointers should be in tex.c. -*/ - -#if defined(hpux) || defined(_AIX) || defined(sun) -#include -#include -#endif - -#include - -#if defined(hpux) || defined(_AIX) || defined(sun) -#undef M_PI /* M_PI is used by markup, we don't need the math PI */ -#endif - -#include "userinc.h" -#include "globdec.h" - -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/need.c b/cde/programs/dthelp/parser/pass1/helptag/need.c deleted file mode 100644 index c5c20d69c..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/need.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: need.c /main/3 1995/11/08 10:11:13 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/helptag/option.c b/cde/programs/dthelp/parser/pass1/helptag/option.c index 32ade5beb..260c29409 100644 --- a/cde/programs/dthelp/parser/pass1/helptag/option.c +++ b/cde/programs/dthelp/parser/pass1/helptag/option.c @@ -26,9 +26,7 @@ #include "userinc.h" #include "globdec.h" -void m_mberr1(char *text, const char *arg); - -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) /* get definition of getenv(3c) for getting of environment variables */ #include #endif @@ -59,7 +57,7 @@ if (optfile = fopen(nameofoptfile, "r")) } m_free(nameofoptfile, "installation helptag.opt"); -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) { char *opts; @@ -76,7 +74,7 @@ if (opts) } } } -#endif /* hpux or _AIX or sun */ +#endif /* _AIX or sun */ /* Check helptag.opt in input directory */ if (indir) diff --git a/cde/programs/dthelp/parser/pass1/helptag/table.c b/cde/programs/dthelp/parser/pass1/helptag/table.c deleted file mode 100644 index b72b8bdb3..000000000 --- a/cde/programs/dthelp/parser/pass1/helptag/table.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: table.c /main/3 1995/11/08 10:13:13 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/parser/addinput.c b/cde/programs/dthelp/parser/pass1/parser/addinput.c deleted file mode 100644 index a482bdd05..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/addinput.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: addinput.c /main/3 1995/11/08 10:14:54 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass1/parser/delfree.c b/cde/programs/dthelp/parser/pass1/parser/delfree.c deleted file mode 100644 index 2527dfa7b..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/delfree.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: delfree.c /main/3 1995/11/08 10:16:24 rswiston $ */ -/* Copyright (c) 1988 Hewlett-Packard Co. */ - -/* Versions of m_free and m_malloc for debugging. */ - -/**/ -#include -#include -#include "basic.h" -#include "trie.h" -#include "dtd.h" -#include "parser.h" - -m_free(block, msg) - char *block ; - char *msg ; - { - free(block) ; - fprintf(m_outfile, "%5u:%5u- Freed %s\n", - (unsigned int) ((unsigned long) block >> 16), - (unsigned int) block, msg) ; - } - -char *m_mallocx(size, msg) - int size ; - char *msg ; - { - char *p ; - - if (! size) return(NULL) ; - p = malloc(size) ; - if (! p) { - m_err1("Unable to allocate space for %s", msg) ; - exit(TRUE) ; - } - fprintf(m_outfile, "%5u:%5u- Allocated %s\n", - (unsigned int) ((unsigned long) p >> 16), (unsigned int) p, msg) ; - return(p) ; - } diff --git a/cde/programs/dthelp/parser/pass1/parser/dmpline.c b/cde/programs/dthelp/parser/pass1/parser/dmpline.c deleted file mode 100644 index 113492109..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/dmpline.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: dmpline.c /main/3 1995/11/08 10:16:42 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write input file and line number for an error message */ -void m_dumpline(file, line) -M_WCHAR *file ; -int line ; -{ -char buffer[10] ; - -m_errline("Line ") ; -sprintf(buffer, "%d", line) ; -m_errline(buffer) ; -if (file) - { - char mb_file; - - m_errline(" of File ") ; - mb_file = MakeMByteString(file); - m_errline(mb_file) ; - m_free(mb_file,"multi-byte string"); - } -} diff --git a/cde/programs/dthelp/parser/pass1/parser/eprefix.c b/cde/programs/dthelp/parser/pass1/parser/eprefix.c deleted file mode 100644 index 0dd277983..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/eprefix.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: eprefix.c /main/3 1995/11/08 10:17:31 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message prefix */ -void m_eprefix(void) - { - m_errline("\n*****\n") ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/errline.c b/cde/programs/dthelp/parser/pass1/parser/errline.c deleted file mode 100644 index c12c947bb..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/errline.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: errline.c /main/3 1995/11/08 10:17:47 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Process error message text */ -void m_errline(p) -M_WCHAR *p ; -{ -char mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_errfile) ; -fputs(mb_p, stderr) ; -m_free(mb_p,"multi-byte string"); -} - diff --git a/cde/programs/dthelp/parser/pass1/parser/esuffix.c b/cde/programs/dthelp/parser/pass1/parser/esuffix.c deleted file mode 100644 index b56151199..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/esuffix.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: esuffix.c /main/3 1995/11/08 10:18:24 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message suffix */ -void m_esuffix(void) - { - m_errline("\n") ; - m_dumpline(m_thisfile(), m_thisline()) ; - m_errline(":\n") ; - m_lastchars() ; - if (++m_errcnt == m_errlim) { - m_error("Too many errors, processing stopped") ; - m_exit(TRUE) ; - } - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/findpar.c b/cde/programs/dthelp/parser/pass1/parser/findpar.c deleted file mode 100644 index 7aa28f8b5..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/findpar.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: findpar.c /main/3 1995/11/08 10:18:57 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns index in parameter - list of a specified parameter for an element (i.e., 1 for first parameter - specified in the DTD, 2 for second, etc.). First parameter, elt, is - the name of the element. Second parameter is the name of the parameter - or NULL. Third parameter is used only if second parameter is NULL. In - the latter case, function returns first keyword parameter, if any, for - which the specified value is a legal value and otherwise first - Returns 0 if elt is not a valid element name, if param is specified - but is not a valid parameter name, or if param is NULL and value is - not a valid value of any of elt's parameters. */ -int m_findpar( const char *elt , const char *param , const M_WCHAR *value ) -{ -M_ELEMENT eltid ; -int par ; -int i ; -M_WCHAR *wc_elt; - -wc_elt = MakeWideCharString(elt); -if (! (eltid = m_packedlook(m_entree, wc_elt))) - { - m_free(wc_elt,"wide character string"); - return(M_NULLVAL) ; - } -m_free(wc_elt,"wide character string"); - -/* A parameter name specified */ -if (param) - { - for (par = m_element[eltid - 1].parptr, i = 1 ; - - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (!m_wcmbupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - return(i) ; - return(M_NULLVAL) ; - } - -/* No parameter name specified */ - -/* First check is it a valid keyword? */ -for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) -if (m_parameter[par - 1].type == M_KEYWORD) -if (m_partype(par, value)) return(i) ; - -/* It wasn't a keyword. Check for valid value for some other parameter.*/ -for (par = m_element[eltid - 1].parptr, i = 1 ; -i <= m_element[eltid - 1].parcount ; -par++, i++) - { - if (m_parameter[par - 1].type == M_KEYWORD) continue ; - if (m_partype(par, value)) return(i) ; - } - -/* Not a valid value for any parameter */ -return(M_NULLVAL) ; -} - diff --git a/cde/programs/dthelp/parser/pass1/parser/getc.c b/cde/programs/dthelp/parser/pass1/parser/getc.c deleted file mode 100644 index b66fb60f7..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/getc.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: getc.c /main/3 1995/11/08 10:19:11 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default get-char procedure */ - -#include "userinc.h" -#include "globdec.h" - -int m_getc(m_ptr) - void *m_ptr ; - { - return(getc((FILE*) m_ptr)) ; - } diff --git a/cde/programs/dthelp/parser/pass1/parser/ifdata.c b/cde/programs/dthelp/parser/pass1/parser/ifdata.c deleted file mode 100644 index 3073f023c..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/ifdata.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: ifdata.c /main/3 1995/11/08 10:19:44 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Ifdata.c contains functions used by the interface to access the - single item of interface-determined data stored on the parse stack. */ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Retrieve the interface data stored with the current element's nth parent */ -void *m_getdata(n, flag) - int n ; - LOGICAL *flag ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - *flag = TRUE ; - return(stackptr->ifdata) ; - } - } - *flag = FALSE ; - return(NULL) ; - } - -/* Store interface data for the current element's nth parent */ -LOGICAL m_putdata(data, n) - void *data ; - int n ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - stackptr->ifdata = data ; - return(TRUE) ; - } - } - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/openent.c b/cde/programs/dthelp/parser/pass1/parser/openent.c deleted file mode 100644 index 94ec6098b..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/openent.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: openent.c /main/3 1995/11/08 10:21:06 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default open SYSTEM entity procedure */ - -#include "userinc.h" -#include "globdec.h" - -void *m_openent(entcontent) - M_WCHAR *entcontent ; - { - return((void *) fopen(entcontent, "r")) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/openfrst.c b/cde/programs/dthelp/parser/pass1/parser/openfrst.c deleted file mode 100644 index 9a58dea2c..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/openfrst.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: openfrst.c /main/3 1995/11/08 10:21:22 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default open SYSTEM entity procedure */ - -#include "userinc.h" -#include "globdec.h" - -void *m_openfirst(void) - { - return((void *) stdin) ; - } - - diff --git a/cde/programs/dthelp/parser/pass1/parser/parcount.c b/cde/programs/dthelp/parser/pass1/parser/parcount.c deleted file mode 100644 index 282251276..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/parcount.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parcount.c /main/3 1995/11/08 10:22:26 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns number of parameters - of specified element (-1 indicates error). */ -int m_parcount(elt) - M_WCHAR *elt ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(-1) ; - return(m_element[eltid - 1].parcount) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/pardef.c b/cde/programs/dthelp/parser/pass1/parser/pardef.c deleted file mode 100644 index c43f01dcc..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/pardef.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: pardef.c /main/3 1995/11/08 10:22:42 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns pointer to default - value of a parameter of an element. Type is set to indicate type of - default. Error indication is type is 0 and function returns NULL. */ -M_WCHAR *m_pardefault(elt, param, type) - M_WCHAR *elt ; - M_WCHAR *param ; - unsigned char *type ; - { - M_ELEMENT eltid ; - int par ; - int i ; - - *type = M_NULLVAL ; - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - - for (par = m_element[eltid - 1].parptr, i = 0 ; - i < m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) { - *type = (unsigned char) m_parameter[par - 1].deftype ; - if (*type == M_REQUIRED || *type == M_NULLDEF) return(NULL) ; - return(m_parameter[par -1].defval) ; - } - - /* Can't find the parameter */ - return(NULL) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/parname.c b/cde/programs/dthelp/parser/pass1/parser/parname.c deleted file mode 100644 index e2af62fd1..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/parname.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parname.c /main/3 1995/11/08 10:23:17 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns name of nth parameter - of specified element (NULL indicates error). */ -M_WCHAR *m_parname(elt, n) - M_WCHAR *elt ; - int n ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - if (n < 1 || n > m_element[eltid - 1].parcount) return(NULL) ; - return(&m_pname[m_parameter[(n - 1) + m_element[eltid - 1].parptr - 1]. - paramname]) ; - } - -M_WCHAR *m_mbparname(elt, n) -char *elt ; -int n ; -{ -M_WCHAR *wc_elt, *retval; - -wc_elt = MakeWideCharString(elt); -retval = m_parname(wc_elt, n); -m_free(wc_elt,"wide character string"); -} - diff --git a/cde/programs/dthelp/parser/pass1/parser/parser.c b/cde/programs/dthelp/parser/pass1/parser/parser.c index 1a28b615f..65eef4d8d 100644 --- a/cde/programs/dthelp/parser/pass1/parser/parser.c +++ b/cde/programs/dthelp/parser/pass1/parser/parser.c @@ -43,7 +43,7 @@ int main(int argc, char **argv) "prevcon=%d,token=%d,curcon=%d,scanval='%c'(%d),line=%d,netlevel=%d\n" ; static char name[] = "m_name = '%s'\n" ; static char literal[] = "m_literal = '%s'\n" ; -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) +#if defined(_AIX) || defined(sun) || defined(__linux__) char buffer[M_LITLEN + 80] ; #else #define max4(a,b,c,d) (a>b&&a>c&&a>d) ? a : ((b>c&&b>d) ? b : (c>d ? c : d)) diff --git a/cde/programs/dthelp/parser/pass1/parser/parvalok.c b/cde/programs/dthelp/parser/pass1/parser/parvalok.c deleted file mode 100644 index a9aa78455..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/parvalok.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parvalok.c /main/3 1995/11/08 10:24:04 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns TRUE if specified value - is a legal value for the indicated parameter of the given element, - FALSE otherwise. */ -LOGICAL m_parvalok( M_WCHAR *elt , M_WCHAR *param , const M_WCHAR *value ) - { - M_ELEMENT eltid ; - int par ; - int i ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(FALSE) ; - for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - if (m_partype(par, value)) return(TRUE) ; - else return(FALSE) ; - - /* No such parameter */ - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/parser/procscmp.c b/cde/programs/dthelp/parser/pass1/parser/procscmp.c deleted file mode 100644 index 3aa5b2b62..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/procscmp.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: procscmp.c /main/3 1995/11/08 10:24:29 rswiston $ */ -/* - Copyright 1986 Tandem Computers Incorporated. -This product and information is proprietary of Tandem Computers Incorporated. - Copyright 1986, 1987, 1988, 1989 Hewlett-Packard Co. -*/ - -/* Procscmp.c prefixes the interface's procs.c file with appropriate - declarations so it can be compiled. */ - -#include "userinc.h" -#include "globdec.h" - -/* Include any procedures specified by the interface designer */ -#include "procs.c" - - diff --git a/cde/programs/dthelp/parser/pass1/parser/proto.h b/cde/programs/dthelp/parser/pass1/parser/proto.h index 8ad1f618a..3d6908859 100644 --- a/cde/programs/dthelp/parser/pass1/parser/proto.h +++ b/cde/programs/dthelp/parser/pass1/parser/proto.h @@ -21,6 +21,8 @@ * Floor, Boston, MA 02110-1301 USA */ /* $XConsortium: proto.h /main/3 1995/11/08 10:24:42 rswiston $ */ +void chksnb(void); + int m_actgetc(void); void m_adjuststate(void); @@ -153,8 +155,6 @@ void m_holdproc(void); void m_inctest(int *count, int limit, char *message); -void m_initctype(void); - void m_initialize(void); void m_lastchars(void); @@ -174,6 +174,8 @@ int main(int argc, char **argv); void *m_malloc(int size, char *msg); +void m_mberr1(const char *text, const char *arg); + void m_missingtagc(int c, M_HOLDTYPE dchar, LOGICAL start); LOGICAL m_nextand(M_OPENFSA *thisfsa, M_ELEMENT label); diff --git a/cde/programs/dthelp/parser/pass1/parser/scan.c b/cde/programs/dthelp/parser/pass1/parser/scan.c index 5cb04e6b4..bc20a3b73 100644 --- a/cde/programs/dthelp/parser/pass1/parser/scan.c +++ b/cde/programs/dthelp/parser/pass1/parser/scan.c @@ -47,8 +47,6 @@ This product and information is proprietary of Tandem Computers Incorporated. #include "entity2.h" #include "sref.h" -void m_mberr1(char *text, const char *arg); - /* Actually read a character from an input stream */ int m_actgetc(void) { diff --git a/cde/programs/dthelp/parser/pass1/parser/setopt.c b/cde/programs/dthelp/parser/pass1/parser/setopt.c deleted file mode 100644 index 45e886429..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/setopt.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: setopt.c /main/3 1995/11/08 10:25:07 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - - -/* Set program options */ -void m_setoptions(void) - { - if (m_argc > 1) m_optstring(m_argv[1]) ; - } diff --git a/cde/programs/dthelp/parser/pass1/parser/startdoc.c b/cde/programs/dthelp/parser/pass1/parser/startdoc.c deleted file mode 100644 index cbd952c62..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/startdoc.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: startdoc.c /main/3 1995/11/08 10:25:53 rswiston $ */ -/* -Copyright 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Default function called at start of document instance. Allows interface - control after all entity declarations have been processed. Not needed - in valid documents (when it is called just prior to global start-code), - but may be useful in some applications nevertheless. */ -void m_startdoc(void) - { - } - - diff --git a/cde/programs/dthelp/parser/pass1/parser/trace.c b/cde/programs/dthelp/parser/pass1/parser/trace.c deleted file mode 100644 index 29e767cdd..000000000 --- a/cde/programs/dthelp/parser/pass1/parser/trace.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: trace.c /main/3 1995/11/08 10:26:46 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write debugging trace information */ -void m_wctrace(p) -M_WCHAR *p ; -{ -char *mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_outfile) ; -m_free(mb_p,"multi-byte string"); -} - -void m_trace(p) -char *p ; -{ -fputs(p, m_outfile); -} diff --git a/cde/programs/dthelp/parser/pass1/util/emptyfil.c b/cde/programs/dthelp/parser/pass1/util/emptyfil.c deleted file mode 100644 index 5569cbe30..000000000 --- a/cde/programs/dthelp/parser/pass1/util/emptyfil.c +++ /dev/null @@ -1,38 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: emptyfil.c /main/3 1995/11/08 10:30:15 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* Creates a file with nothing in it */ -#include -#include "basic.h" - -int main(int argc, char **argv) - { - if (argc != 2) { - fprintf(stderr, "Usage: emptyfil filename\n") ; - exit(1) ; - } - if (! fopen(argv[1], "w")) - fprintf(stderr, "Unable to open %s\n", argv[1]) ; - return 0; - } diff --git a/cde/programs/dthelp/parser/pass1/util/fclndir.c b/cde/programs/dthelp/parser/pass1/util/fclndir.c deleted file mode 100644 index eb0dcebf0..000000000 --- a/cde/programs/dthelp/parser/pass1/util/fclndir.c +++ /dev/null @@ -1,160 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: fclndir.c /main/3 1995/11/08 10:32:12 rswiston $ */ -/* Copyright (c) 1987-1990 Hewlett-Packard Co. - -Fclndir.c compares two files, ignoring C line directives that appear -within them as well as blank lines, and leading white space. It exits -with an error code of 0 if the files are the same, 1 if they differ, and -2 if the program was called incorrectly. -*/ - -/* Feb. 11, 1991, CED: Added v2 fixes to v3 version of fclndir. - Thus, both versions now copy the source file to the target if - the files differ. -*/ - -#include -#include -#include -#include "basic.h" -#define SAME 0 -/* different defined to be 0 as of 12-1-89, because fclndir now does -the file-copy if the files are different, or if the second file -doesn't exist. (different used to be 1.) --ced */ -#define DIFFERENT 0 -#define ERROR 2 - -struct data { - int c ; - LOGICAL linestart ; - char *p ; - char *q ; - } data1, data2 ; - -char linedir[] = "#line" ; -char *p = linedir, *q = linedir + 1 ; - -int main(int argc, char **argv); - -void copyfile(char *pfile1, char *pfile2); - -int nextchar(FILE *file, struct data *data); - -int main(int argc, char **argv) - { - FILE *one, *two ; - int c1, c2 ; - - if (argc != 3) { - fputs("Usage: fclndir file1 (=source) file2 (=target)\n", stderr) ; - exit(ERROR) ; - } - if (! (one = fopen(argv[1], "r"))) { - fprintf(stderr, "ERROR: source file unavailable: %s\n", argv[1]) ; - exit(ERROR) ; - } - if (! (two = fopen(argv[2], "r"))) { - fprintf(stderr, "No target file %s; copying source file...\n", argv[2]) ; - /* call to copyfile entered by ced, 12-29-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - data1.linestart = data2.linestart = TRUE ; - data1.p = data2.p = linedir ; - data1.q = data2.q = linedir + 1 ; - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - while (c1 != EOF && c2 != EOF) { - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - } - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - fprintf(stderr, "%s and %s are the same\n", argv[1], argv[2]) ; - exit(SAME) ; - } - -/* copyfile inserted by ced, 12-1-89. */ -void copyfile(char *pfile1, char *pfile2) -{ - int ret; - char *pcmd; - int slen; - -/* malloc space for the system command: two filenames, plus a command, - spaces, and the terminating null */ - slen = strlen(pfile1) + strlen(pfile2) + 8; - pcmd = (char *) malloc(slen); - ret = snprintf(pcmd, slen, "cp %s %s",pfile1,pfile2); - ret = system(pcmd); - ret = snprintf(pcmd, slen, "touch %s",pfile2); - ret = system(pcmd); - free(pcmd); -} - -int nextchar(FILE *file, struct data *data) - { - while (data->linestart) { - data->linestart = FALSE ; - for (data->p = linedir ; *data->p; data->p++) - if ((data->c = getc(file)) != (int) *data->p) break ; - /* Found a line directive, skip remainder of line */ - if (! *data->p) { - data->c = getc(file) ; - while (data->c != '\n' && data->c != EOF) - data->c = getc(file) ; - data->linestart = TRUE ; - continue ; - } - /* Check for leading blanks */ - else if (data->p == linedir) { - while (data->c == ' ' || data->c == '\t') data->c = getc(file) ; - if (data->c == '\n') { - data->linestart = TRUE ; - continue ; - } - return(data->c) ; - } - /* Line began with a prefix of #line */ - data->q = linedir ; - } - - if (data->q < data->p) return(*data->q++) ; - else if (data->q++ != data->p) data->c = getc(file) ; - if (data->c == '\n') data->linestart = TRUE ; - return(data->c) ; - } - diff --git a/cde/programs/dthelp/parser/pass1/util/initct.c b/cde/programs/dthelp/parser/pass1/util/initct.c deleted file mode 100644 index 237bdea84..000000000 --- a/cde/programs/dthelp/parser/pass1/util/initct.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: initct.c /main/3 1995/11/08 10:32:53 rswiston $ */ -/* Copyright (c) 1987, 1988 Hewlett-Packard Co. */ -/* M_initctype initializes the array used to indicate which ASCII - characters can appear within SGML names */ - -#include "basic.h" -#include "common.h" -extern char m_chartype[M_CHARSETLEN] ; - -void m_initctype(void) - { - int i ; - -/* ****************************** NOTE: ********************************** - If the set of name characters is ever modified, make appropriate changes - in ELTDEF's scanner for testing for valid C identifiers as parameter - names */ - for (i = 0 ; i < M_CHARSETLEN ; i++) m_chartype[i] = M_NONNAME ; - for (i = 'A' ; i <= 'Z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = 'a' ; i <= 'z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = '0' ; i <= '9' ; i++) m_chartype[i] = M_DIGIT ; - m_chartype['.'] = m_chartype['-'] = M_NAMECHAR ; - } diff --git a/cde/programs/dthelp/parser/pass1/util/malloc.c b/cde/programs/dthelp/parser/pass1/util/malloc.c index b574fafd7..42a15e231 100644 --- a/cde/programs/dthelp/parser/pass1/util/malloc.c +++ b/cde/programs/dthelp/parser/pass1/util/malloc.c @@ -54,7 +54,7 @@ void m_free(void *block, char *msg) char buffer[32] ; if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) block >> 16), (unsigned int) block) ; @@ -84,7 +84,7 @@ void *m_malloc(int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else @@ -116,7 +116,7 @@ void *m_realloc(void *ptr, int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else diff --git a/cde/programs/dthelp/parser/pass1/util/strstr.c b/cde/programs/dthelp/parser/pass1/util/strstr.c deleted file mode 100644 index 181211869..000000000 --- a/cde/programs/dthelp/parser/pass1/util/strstr.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: strstr.c /main/3 1995/11/08 10:36:55 rswiston $ */ -char *strstr ( s1, s2 ) -char *s1, *s2 ; { - - int x, y ; - - y = strlen ( s2 ) ; - x = strlen ( s1 ) - y ; - - if ( x < 0 ) return ( ( char * ) 0L ) ; - do { - if ( strncmp ( s1 + x, s2, y ) == 0 ) return ( s1 + x ) ; - } - while ( --x >= 0 ) ; - - return ( ( char * ) 0L ) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/build/proto.h b/cde/programs/dthelp/parser/pass2/build/proto.h index 152e69828..4f9a6d30f 100644 --- a/cde/programs/dthelp/parser/pass2/build/proto.h +++ b/cde/programs/dthelp/parser/pass2/build/proto.h @@ -128,8 +128,6 @@ int gettoken(int *c, int context); TREE *gettreenode(void); -void m_initctype(void); - void initialize(void); LOGICAL litproc(int delim); diff --git a/cde/programs/dthelp/parser/pass2/eltdef/proto.h b/cde/programs/dthelp/parser/pass2/eltdef/proto.h index fb74b475a..2540a85dd 100644 --- a/cde/programs/dthelp/parser/pass2/eltdef/proto.h +++ b/cde/programs/dthelp/parser/pass2/eltdef/proto.h @@ -90,8 +90,6 @@ void getname(int first); int gettoken(int *c, int context); -void m_initctype(void); - void initialize(void); LOGICAL m_letter(M_WCHAR c); diff --git a/cde/programs/dthelp/parser/pass2/htag2/fproto.h b/cde/programs/dthelp/parser/pass2/htag2/fproto.h index 8633db31b..63994de82 100644 --- a/cde/programs/dthelp/parser/pass2/htag2/fproto.h +++ b/cde/programs/dthelp/parser/pass2/htag2/fproto.h @@ -54,7 +54,7 @@ void OpenTag(LOGICAL hasAttributes, void CloseTag(LOGICAL newlineOK); -void ImpliedlAttribute(char *name, +void ImpliedAttribute(char *name, M_WCHAR *value); void RequiredAttribute(char *name, diff --git a/cde/programs/dthelp/parser/pass2/htag2/global.h b/cde/programs/dthelp/parser/pass2/htag2/global.h index b12441cd9..b61a16547 100644 --- a/cde/programs/dthelp/parser/pass2/htag2/global.h +++ b/cde/programs/dthelp/parser/pass2/htag2/global.h @@ -38,11 +38,9 @@ #include #include -#if defined(hpux) || defined(_AIX) || defined(sun) || defined(__linux__) || defined(CSRG_BASED) #include #include #include -#endif #ifndef MB_MAX_LEN #define MB_MAX_LEN 4 diff --git a/cde/programs/dthelp/parser/pass2/htag2/option.c b/cde/programs/dthelp/parser/pass2/htag2/option.c index 1f882be20..b47be68bc 100644 --- a/cde/programs/dthelp/parser/pass2/htag2/option.c +++ b/cde/programs/dthelp/parser/pass2/htag2/option.c @@ -26,14 +26,11 @@ #include "userinc.h" #include "globdec.h" -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) /* get definition of getenv(3c) for getting of environment variables */ #include #endif -void m_mberr1(char *text, const char *arg); - - /* Interpret options from command line and specified files */ #define OPTLEN 512 /* If OPTLEN changes, change fscanf call below */ #define TAGDOTOPT "helptag.opt" @@ -59,7 +56,7 @@ if (optfile = fopen(nameofoptfile, "r")) } m_free(nameofoptfile, "installation helptag.opt"); -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) { char *opts; @@ -76,7 +73,7 @@ if (opts) } } } -#endif /* hpux or _AIX or sun */ +#endif /* _AIX or sun */ /* Check helptag.opt in input directory */ if (indir) diff --git a/cde/programs/dthelp/parser/pass2/parser/addinput.c b/cde/programs/dthelp/parser/pass2/parser/addinput.c deleted file mode 100644 index f2c4d4029..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/addinput.c +++ /dev/null @@ -1,24 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: addinput.c /main/3 1995/11/08 10:48:50 rswiston $ */ -/* Obsolete */ diff --git a/cde/programs/dthelp/parser/pass2/parser/delfree.c b/cde/programs/dthelp/parser/pass2/parser/delfree.c deleted file mode 100644 index fd9e1ad5b..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/delfree.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: delfree.c /main/3 1995/11/08 10:50:16 rswiston $ */ -/* Copyright (c) 1988 Hewlett-Packard Co. */ - -/* Versions of m_free and m_malloc for debugging. */ - -/**/ -#include -#include -#include "basic.h" -#include "trie.h" -#include "dtd.h" -#include "parser.h" - -m_free(block, msg) - char *block ; - char *msg ; - { - free(block) ; - fprintf(m_outfile, "%5u:%5u- Freed %s\n", - (unsigned int) ((unsigned long) block >> 16), - (unsigned int) block, msg) ; - } - -char *m_mallocx(size, msg) - int size ; - char *msg ; - { - char *p ; - - if (! size) return(NULL) ; - p = malloc(size) ; - if (! p) { - m_err1("Unable to allocate space for %s", msg) ; - exit(TRUE) ; - } - fprintf(m_outfile, "%5u:%5u- Allocated %s\n", - (unsigned int) ((unsigned long) p >> 16), (unsigned int) p, msg) ; - return(p) ; - } diff --git a/cde/programs/dthelp/parser/pass2/parser/dmpline.c b/cde/programs/dthelp/parser/pass2/parser/dmpline.c deleted file mode 100644 index 677accaf8..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/dmpline.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: dmpline.c /main/3 1995/11/08 10:50:31 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write input file and line number for an error message */ -void m_dumpline(file, line) -M_WCHAR *file ; -int line ; -{ -char buffer[10] ; - -m_errline("Line ") ; -sprintf(buffer, "%d", line) ; -m_errline(buffer) ; -if (file) - { - char mb_file; - - m_errline(" of File ") ; - mb_file = MakeMByteString(file); - m_errline(mb_file) ; - m_free(mb_file,"multi-byte string"); - } -} diff --git a/cde/programs/dthelp/parser/pass2/parser/eprefix.c b/cde/programs/dthelp/parser/pass2/parser/eprefix.c deleted file mode 100644 index 7383b2c46..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/eprefix.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: eprefix.c /main/3 1995/11/08 10:51:14 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message prefix */ -void m_eprefix(void) - { - m_errline("\n*****\n") ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/errline.c b/cde/programs/dthelp/parser/pass2/parser/errline.c deleted file mode 100644 index ba548debf..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/errline.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: errline.c /main/3 1995/11/08 10:51:28 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Process error message text */ -void m_errline(p) -M_WCHAR *p ; -{ -char mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_errfile) ; -fputs(mb_p, stderr) ; -m_free(mb_p,"multi-byte string"); -} - diff --git a/cde/programs/dthelp/parser/pass2/parser/esuffix.c b/cde/programs/dthelp/parser/pass2/parser/esuffix.c deleted file mode 100644 index 9b71a516e..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/esuffix.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: esuffix.c /main/3 1995/11/08 10:52:01 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write error message suffix */ -void m_esuffix(void) - { - m_errline("\n") ; - m_dumpline(m_thisfile(), m_thisline()) ; - m_errline(":\n") ; - m_lastchars() ; - if (++m_errcnt == m_errlim) { - m_error("Too many errors, processing stopped") ; - m_exit(TRUE) ; - } - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/findpar.c b/cde/programs/dthelp/parser/pass2/parser/findpar.c deleted file mode 100644 index 59dd954d0..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/findpar.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: findpar.c /main/3 1995/11/08 10:52:30 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns index in parameter - list of a specified parameter for an element (i.e., 1 for first parameter - specified in the DTD, 2 for second, etc.). First parameter, elt, is - the name of the element. Second parameter is the name of the parameter - or NULL. Third parameter is used only if second parameter is NULL. In - the latter case, function returns first keyword parameter, if any, for - which the specified value is a legal value and otherwise first - Returns 0 if elt is not a valid element name, if param is specified - but is not a valid parameter name, or if param is NULL and value is - not a valid value of any of elt's parameters. */ -int m_findpar( const char *elt , const char *param , const M_WCHAR *value ) -{ -M_ELEMENT eltid ; -int par ; -int i ; -M_WCHAR *wc_elt; - -wc_elt = MakeWideCharString(elt); -if (! (eltid = m_packedlook(m_entree, wc_elt))) - { - m_free(wc_elt,"wide character string"); - return(M_NULLVAL) ; - } -m_free(wc_elt,"wide character string"); - -/* A parameter name specified */ -if (param) - { - for (par = m_element[eltid - 1].parptr, i = 1 ; - - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (!m_wcmbupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - return(i) ; - return(M_NULLVAL) ; - } - -/* No parameter name specified */ - -/* First check is it a valid keyword? */ -for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) -if (m_parameter[par - 1].type == M_KEYWORD) -if (m_partype(par, value)) return(i) ; - -/* It wasn't a keyword. Check for valid value for some other parameter.*/ -for (par = m_element[eltid - 1].parptr, i = 1 ; -i <= m_element[eltid - 1].parcount ; -par++, i++) - { - if (m_parameter[par - 1].type == M_KEYWORD) continue ; - if (m_partype(par, value)) return(i) ; - } - -/* Not a valid value for any parameter */ -return(M_NULLVAL) ; -} - diff --git a/cde/programs/dthelp/parser/pass2/parser/getc.c b/cde/programs/dthelp/parser/pass2/parser/getc.c deleted file mode 100644 index 940bfd973..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/getc.c +++ /dev/null @@ -1,35 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: getc.c /main/3 1995/11/08 10:52:46 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default get-char procedure */ - -#include "userinc.h" -#include "globdec.h" - -int m_getc(m_ptr) - void *m_ptr ; - { - return(getc((FILE*) m_ptr)) ; - } diff --git a/cde/programs/dthelp/parser/pass2/parser/ifdata.c b/cde/programs/dthelp/parser/pass2/parser/ifdata.c deleted file mode 100644 index 01081a214..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/ifdata.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: ifdata.c /main/3 1995/11/08 10:53:18 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Ifdata.c contains functions used by the interface to access the - single item of interface-determined data stored on the parse stack. */ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Retrieve the interface data stored with the current element's nth parent */ -void *m_getdata(n, flag) - int n ; - LOGICAL *flag ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - *flag = TRUE ; - return(stackptr->ifdata) ; - } - } - *flag = FALSE ; - return(NULL) ; - } - -/* Store interface data for the current element's nth parent */ -LOGICAL m_putdata(data, n) - void *data ; - int n ; - { - M_PARSE *stackptr ; - - for (stackptr = m_stacktop ; - stackptr->oldtop && n >= 0 ; - stackptr = stackptr->oldtop, n--) { - if (! n) { - stackptr->ifdata = data ; - return(TRUE) ; - } - } - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/openent.c b/cde/programs/dthelp/parser/pass2/parser/openent.c deleted file mode 100644 index 1149c754f..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/openent.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: openent.c /main/3 1995/11/08 10:54:37 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default open SYSTEM entity procedure */ - -#include "userinc.h" -#include "globdec.h" - -void *m_openent(entcontent) - M_WCHAR *entcontent ; - { - return((void *) fopen(entcontent, "r")) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/openfrst.c b/cde/programs/dthelp/parser/pass2/parser/openfrst.c deleted file mode 100644 index 3bd2331bd..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/openfrst.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: openfrst.c /main/3 1995/11/08 10:54:51 rswiston $ */ -/* Copyright 1988, 1989 Hewlett-Packard Co. */ - -/* Default open SYSTEM entity procedure */ - -#include "userinc.h" -#include "globdec.h" - -void *m_openfirst(void) - { - return((void *) stdin) ; - } - - diff --git a/cde/programs/dthelp/parser/pass2/parser/parcount.c b/cde/programs/dthelp/parser/pass2/parser/parcount.c deleted file mode 100644 index d976b22c3..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/parcount.c +++ /dev/null @@ -1,44 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parcount.c /main/3 1995/11/08 10:55:34 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns number of parameters - of specified element (-1 indicates error). */ -int m_parcount(elt) - M_WCHAR *elt ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(-1) ; - return(m_element[eltid - 1].parcount) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/pardef.c b/cde/programs/dthelp/parser/pass2/parser/pardef.c deleted file mode 100644 index be8004730..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/pardef.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: pardef.c /main/3 1995/11/08 10:55:48 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns pointer to default - value of a parameter of an element. Type is set to indicate type of - default. Error indication is type is 0 and function returns NULL. */ -M_WCHAR *m_pardefault(elt, param, type) - M_WCHAR *elt ; - M_WCHAR *param ; - unsigned char *type ; - { - M_ELEMENT eltid ; - int par ; - int i ; - - *type = M_NULLVAL ; - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - - for (par = m_element[eltid - 1].parptr, i = 0 ; - i < m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) { - *type = (unsigned char) m_parameter[par - 1].deftype ; - if (*type == M_REQUIRED || *type == M_NULLDEF) return(NULL) ; - return(m_parameter[par -1].defval) ; - } - - /* Can't find the parameter */ - return(NULL) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/parname.c b/cde/programs/dthelp/parser/pass2/parser/parname.c deleted file mode 100644 index ba7906f56..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/parname.c +++ /dev/null @@ -1,58 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parname.c /main/3 1995/11/08 10:56:15 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns name of nth parameter - of specified element (NULL indicates error). */ -M_WCHAR *m_parname(elt, n) - M_WCHAR *elt ; - int n ; - { - M_ELEMENT eltid ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(NULL) ; - if (n < 1 || n > m_element[eltid - 1].parcount) return(NULL) ; - return(&m_pname[m_parameter[(n - 1) + m_element[eltid - 1].parptr - 1]. - paramname]) ; - } - -M_WCHAR *m_mbparname(elt, n) -char *elt ; -int n ; -{ -M_WCHAR *wc_elt, *retval; - -wc_elt = MakeWideCharString(elt); -retval = m_parname(wc_elt, n); -m_free(wc_elt,"wide character string"); -} - diff --git a/cde/programs/dthelp/parser/pass2/parser/parser.c b/cde/programs/dthelp/parser/pass2/parser/parser.c index 0c915da22..dce00f751 100644 --- a/cde/programs/dthelp/parser/pass2/parser/parser.c +++ b/cde/programs/dthelp/parser/pass2/parser/parser.c @@ -43,7 +43,7 @@ void main(int argc, char **argv) "prevcon=%d,token=%d,curcon=%d,scanval='%c'(%d),line=%d,netlevel=%d\n" ; static char name[] = "m_name = '%s'\n" ; static char literal[] = "m_literal = '%s'\n" ; -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) char buffer[M_LITLEN + 80] ; #else #define max4(a,b,c,d) (a>b&&a>c&&a>d) ? a : ((b>c&&b>d) ? b : (c>d ? c : d)) @@ -72,8 +72,8 @@ void main(int argc, char **argv) if (! m_curcon) { if (m_token != M_ENDFILE) { m_error("Parsing table error") ; - sprintf(buffer, parserr, m_token, m_prevcon, m_scanval) ; - m_errline(buffer) ; + sprintf((char *) buffer, parserr, m_token, m_prevcon, m_scanval) ; + m_errline((char *) buffer) ; } else { m_error("Unexpected end of document") ; @@ -92,17 +92,17 @@ void main(int argc, char **argv) m_aftereod = TRUE ; } if (m_scantrace) { - sprintf(buffer, sopt, + sprintf((char *) buffer, sopt, m_prevcon, m_token, m_curcon, m_scanval ? m_scanval : ' ', m_scanval, m_line[m_sysecnt], m_netlevel) ; - m_trace(buffer) ; + m_trace((char *) buffer) ; if (m_token == M_NAME) { - sprintf(buffer, name, m_name) ; - m_trace(buffer) ; + sprintf((char *) buffer, name, m_name) ; + m_trace((char *) buffer) ; } if (m_token == M_LITERAL) { - sprintf(buffer, literal, m_literal) ; - m_trace(buffer) ; + sprintf((char *) buffer, literal, m_literal) ; + m_trace((char *) buffer) ; } } #include "case.c" diff --git a/cde/programs/dthelp/parser/pass2/parser/parvalok.c b/cde/programs/dthelp/parser/pass2/parser/parvalok.c deleted file mode 100644 index 6789594c0..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/parvalok.c +++ /dev/null @@ -1,54 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: parvalok.c /main/3 1995/11/08 10:57:12 rswiston $ */ -/* - Copyright 1989 Hewlett-Packard Co. -*/ - -#include -#include "basic.h" -#include "trie.h" -#include "dtdext.h" -#include "parser.h" - -/* Function callable by interface designers. Returns TRUE if specified value - is a legal value for the indicated parameter of the given element, - FALSE otherwise. */ -LOGICAL m_parvalok( M_WCHAR *elt , M_WCHAR *param , const M_WCHAR *value ) - { - M_ELEMENT eltid ; - int par ; - int i ; - - if (! (eltid = m_packedlook(m_entree, elt))) return(FALSE) ; - for (par = m_element[eltid - 1].parptr, i = 1 ; - i <= m_element[eltid - 1].parcount ; - par++, i++) - if (! m_wcupstrcmp(&m_pname[m_parameter[par - 1].paramname], param)) - if (m_partype(par, value)) return(TRUE) ; - else return(FALSE) ; - - /* No such parameter */ - return(FALSE) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/parser/procscmp.c b/cde/programs/dthelp/parser/pass2/parser/procscmp.c deleted file mode 100644 index e974f3d32..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/procscmp.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: procscmp.c /main/3 1995/11/08 10:57:41 rswiston $ */ -/* - Copyright 1986 Tandem Computers Incorporated. -This product and information is proprietary of Tandem Computers Incorporated. - Copyright 1986, 1987, 1988, 1989 Hewlett-Packard Co. -*/ - -/* Procscmp.c prefixes the interface's procs.c file with appropriate - declarations so it can be compiled. */ - -#include "userinc.h" -#include "globdec.h" - -/* Include any procedures specified by the interface designer */ -#include "procs.c" - - diff --git a/cde/programs/dthelp/parser/pass2/parser/proto.h b/cde/programs/dthelp/parser/pass2/parser/proto.h index f907af1ce..3755b762b 100644 --- a/cde/programs/dthelp/parser/pass2/parser/proto.h +++ b/cde/programs/dthelp/parser/pass2/parser/proto.h @@ -153,8 +153,6 @@ void m_holdproc(void); void m_inctest(int *count, int limit, char *message); -void m_initctype(void); - void m_initialize(void); void m_lastchars(void); @@ -174,6 +172,8 @@ void main(int argc, char **argv); void *m_malloc(int size, char *msg); +void m_mberr1(const char *text, const char *arg); + void m_missingtagc(int c, M_HOLDTYPE dchar, LOGICAL start); LOGICAL m_nextand(M_OPENFSA *thisfsa, M_ELEMENT label); diff --git a/cde/programs/dthelp/parser/pass2/parser/scan.c b/cde/programs/dthelp/parser/pass2/parser/scan.c index add43bde2..3bc16ced8 100644 --- a/cde/programs/dthelp/parser/pass2/parser/scan.c +++ b/cde/programs/dthelp/parser/pass2/parser/scan.c @@ -47,8 +47,6 @@ This product and information is proprietary of Tandem Computers Incorporated. #include "entity2.h" #include "sref.h" -void m_mberr1(char *text, const char *arg); - /* Actually read a character from an input stream */ int m_actgetc(void) { diff --git a/cde/programs/dthelp/parser/pass2/parser/setopt.c b/cde/programs/dthelp/parser/pass2/parser/setopt.c deleted file mode 100644 index 6d161306a..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/setopt.c +++ /dev/null @@ -1,36 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: setopt.c /main/3 1995/11/08 10:58:30 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - - -/* Set program options */ -void m_setoptions(void) - { - if (m_argc > 1) m_optstring(m_argv[1]) ; - } diff --git a/cde/programs/dthelp/parser/pass2/parser/signmsg.c b/cde/programs/dthelp/parser/pass2/parser/signmsg.c deleted file mode 100644 index 18ea9abe5..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/signmsg.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: signmsg.c /main/3 1995/11/08 10:58:59 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Process signon message text */ -void m_signmsg(p) -M_WCHAR *p ; -{ -char mb_p; - -mb_p = MakeMByteString(p); -m_errline(mb_p) ; -m_free(mb_p,"multi-byte string"); -} diff --git a/cde/programs/dthelp/parser/pass2/parser/startdoc.c b/cde/programs/dthelp/parser/pass2/parser/startdoc.c deleted file mode 100644 index c4e35ab17..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/startdoc.c +++ /dev/null @@ -1,39 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: startdoc.c /main/3 1995/11/08 10:59:27 rswiston $ */ -/* -Copyright 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Default function called at start of document instance. Allows interface - control after all entity declarations have been processed. Not needed - in valid documents (when it is called just prior to global start-code), - but may be useful in some applications nevertheless. */ -void m_startdoc(void) - { - } - - diff --git a/cde/programs/dthelp/parser/pass2/parser/trace.c b/cde/programs/dthelp/parser/pass2/parser/trace.c deleted file mode 100644 index 87e5b02e0..000000000 --- a/cde/programs/dthelp/parser/pass2/parser/trace.c +++ /dev/null @@ -1,46 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: trace.c /main/3 1995/11/08 11:00:43 rswiston $ */ -/* -Copyright 1988, 1989 Hewlett-Packard Co. -*/ - -#include "userinc.h" -#include "globdec.h" - -/* Write debugging trace information */ -void m_wctrace(p) -M_WCHAR *p ; -{ -char *mb_p; - -mb_p = MakeMByteString(p); -fputs(mb_p, m_outfile) ; -m_free(mb_p,"multi-byte string"); -} - -void m_trace(p) -char *p ; -{ -fputs(p, m_outfile); -} diff --git a/cde/programs/dthelp/parser/pass2/util/emptyfil.c b/cde/programs/dthelp/parser/pass2/util/emptyfil.c deleted file mode 100644 index a373d097f..000000000 --- a/cde/programs/dthelp/parser/pass2/util/emptyfil.c +++ /dev/null @@ -1,42 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: emptyfil.c /main/3 1995/11/08 11:04:00 rswiston $ */ -/* Copyright (c) 1988, 1989 Hewlett-Packard Co. */ -/* Creates a file with nothing in it */ -#include -#include "basic.h" - -void main(int argc, char **argv); - -void main(argc, argv) - int argc ; - char **argv ; - { - if (argc != 2) { - fprintf(stderr, "Usage: emptyfil filename\n") ; - exit(1) ; - } - if (! fopen(argv[1], "w")) - fprintf(stderr, "Unable to open %s\n", argv[1]) ; - return 0; - } diff --git a/cde/programs/dthelp/parser/pass2/util/fclndir.c b/cde/programs/dthelp/parser/pass2/util/fclndir.c deleted file mode 100644 index 1c1eb501c..000000000 --- a/cde/programs/dthelp/parser/pass2/util/fclndir.c +++ /dev/null @@ -1,160 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: fclndir.c /main/3 1995/11/08 11:05:25 rswiston $ */ -/* Copyright (c) 1987-1990 Hewlett-Packard Co. - -Fclndir.c compares two files, ignoring C line directives that appear -within them as well as blank lines, and leading white space. It exits -with an error code of 0 if the files are the same, 1 if they differ, and -2 if the program was called incorrectly. -*/ - -/* Feb. 11, 1991, CED: Added v2 fixes to v3 version of fclndir. - Thus, both versions now copy the source file to the target if - the files differ. -*/ - -#include -#include -#include -#include "basic.h" -#define SAME 0 -/* different defined to be 0 as of 12-1-89, because fclndir now does -the file-copy if the files are different, or if the second file -doesn't exist. (different used to be 1.) --ced */ -#define DIFFERENT 0 -#define ERROR 2 - -struct data { - int c ; - LOGICAL linestart ; - char *p ; - char *q ; - } data1, data2 ; - -char linedir[] = "#line" ; -char *p = linedir, *q = linedir + 1 ; - -void main(int argc, char **argv); - -void copyfile(char *pfile1, char *pfile2); - -int nextchar(FILE *file, struct data *data); - -void main(int argc, char **argv) - { - FILE *one, *two ; - int c1, c2 ; - - if (argc != 3) { - fputs("Usage: fclndir file1 (=source) file2 (=target)\n", stderr) ; - exit(ERROR) ; - } - if (! (one = fopen(argv[1], "r"))) { - fprintf(stderr, "ERROR: source file unavailable: %s\n", argv[1]) ; - exit(ERROR) ; - } - if (! (two = fopen(argv[2], "r"))) { - fprintf(stderr, "No target file %s; copying source file...\n", argv[2]) ; - /* call to copyfile entered by ced, 12-29-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - data1.linestart = data2.linestart = TRUE ; - data1.p = data2.p = linedir ; - data1.q = data2.q = linedir + 1 ; - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - while (c1 != EOF && c2 != EOF) { - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - c1 = nextchar(one, &data1) ; - c2 = nextchar(two, &data2) ; - } - if (c1 != c2) { - fprintf(stderr, "%s and %s are different; copying source...\n", - argv[1], argv[2]) ; -/* call to copyfile entered by ced, 12-1-89. */ - copyfile(argv[1],argv[2]); - exit(DIFFERENT) ; - } - fprintf(stderr, "%s and %s are the same\n", argv[1], argv[2]) ; - exit(SAME) ; - } - -/* copyfile inserted by ced, 12-1-89. */ -void copyfile(char *pfile1, char *pfile2) -{ - int ret; - char *pcmd; - int slen; - -/* malloc space for the system command: two filenames, plus a command, - spaces, and the terminating null */ - slen = strlen(pfile1) + strlen(pfile2) + 8; - pcmd = (char *) malloc(slen); - ret = snprintf(pcmd, slen, "cp %s %s",pfile1,pfile2); - ret = system(pcmd); - ret = snprintf(pcmd, slen, "touch %s",pfile2); - ret = system(pcmd); - free(pcmd); -} - -int nextchar(FILE *file, struct data *data) - { - while (data->linestart) { - data->linestart = FALSE ; - for (data->p = linedir ; *data->p; data->p++) - if ((data->c = getc(file)) != (int) *data->p) break ; - /* Found a line directive, skip remainder of line */ - if (! *data->p) { - data->c = getc(file) ; - while (data->c != '\n' && data->c != EOF) - data->c = getc(file) ; - data->linestart = TRUE ; - continue ; - } - /* Check for leading blanks */ - else if (data->p == linedir) { - while (data->c == ' ' || data->c == '\t') data->c = getc(file) ; - if (data->c == '\n') { - data->linestart = TRUE ; - continue ; - } - return(data->c) ; - } - /* Line began with a prefix of #line */ - data->q = linedir ; - } - - if (data->q < data->p) return(*data->q++) ; - else if (data->q++ != data->p) data->c = getc(file) ; - if (data->c == '\n') data->linestart = TRUE ; - return(data->c) ; - } - diff --git a/cde/programs/dthelp/parser/pass2/util/initct.c b/cde/programs/dthelp/parser/pass2/util/initct.c deleted file mode 100644 index 9be8dde03..000000000 --- a/cde/programs/dthelp/parser/pass2/util/initct.c +++ /dev/null @@ -1,47 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: initct.c /main/3 1995/11/08 11:05:54 rswiston $ */ -/* Copyright (c) 1987, 1988 Hewlett-Packard Co. */ -/* M_initctype initializes the array used to indicate which ASCII - characters can appear within SGML names */ - -#include "basic.h" -#include "common.h" -extern char m_chartype[M_CHARSETLEN] ; - -void m_initctype(void); - -void m_initctype(void) - { - int i ; - -/* ****************************** NOTE: ********************************** - If the set of name characters is ever modified, make appropriate changes - in ELTDEF's scanner for testing for valid C identifiers as parameter - names */ - for (i = 0 ; i < M_CHARSETLEN ; i++) m_chartype[i] = M_NONNAME ; - for (i = 'A' ; i <= 'Z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = 'a' ; i <= 'z' ; i++) m_chartype[i] = M_NMSTART ; - for (i = '0' ; i <= '9' ; i++) m_chartype[i] = M_DIGIT ; - m_chartype['.'] = m_chartype['-'] = M_NAMECHAR ; - } diff --git a/cde/programs/dthelp/parser/pass2/util/malloc.c b/cde/programs/dthelp/parser/pass2/util/malloc.c index ff63f1348..dfb98d84f 100644 --- a/cde/programs/dthelp/parser/pass2/util/malloc.c +++ b/cde/programs/dthelp/parser/pass2/util/malloc.c @@ -54,7 +54,7 @@ void m_free(void *block, char *msg) char buffer[32] ; if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) block >> 16), (unsigned int) block) ; @@ -84,7 +84,7 @@ void *m_malloc(int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else @@ -116,7 +116,7 @@ void *m_realloc(void *ptr, int size, char *msg) m_exit(TRUE) ; } if (m_malftrace) { -#if defined(hpux) || defined(_AIX) || defined(sun) +#if defined(_AIX) || defined(sun) snprintf(buffer, 32, "%5x:%5x", (unsigned int) ((unsigned long) p >> 16), (unsigned int) p) ; #else diff --git a/cde/programs/dthelp/parser/pass2/util/strstr.c b/cde/programs/dthelp/parser/pass2/util/strstr.c deleted file mode 100644 index 14b2ce2de..000000000 --- a/cde/programs/dthelp/parser/pass2/util/strstr.c +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDE - Common Desktop Environment - * - * Copyright (c) 1993-2012, The Open Group. All rights reserved. - * - * These libraries and programs are free software; you can - * redistribute them and/or modify them under the terms of the GNU - * Lesser General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) - * any later version. - * - * These libraries and programs are distributed in the hope that - * they will be useful, but WITHOUT ANY WARRANTY; without even the - * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with these libraries and programs; if not, write - * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth - * Floor, Boston, MA 02110-1301 USA - */ -/* $XConsortium: strstr.c /main/3 1995/11/08 11:07:59 rswiston $ */ -char *strstr ( s1, s2 ) -char *s1, *s2 ; { - - int x, y ; - - y = strlen ( s2 ) ; - x = strlen ( s1 ) - y ; - - if ( x < 0 ) return ( ( char * ) 0L ) ; - do { - if ( strncmp ( s1 + x, s2, y ) == 0 ) return ( s1 + x ) ; - } - while ( --x >= 0 ) ; - - return ( ( char * ) 0L ) ; - } - diff --git a/cde/programs/dticon/Makefile.am b/cde/programs/dticon/Makefile.am index 7d4356444..2781d2781 100644 --- a/cde/programs/dticon/Makefile.am +++ b/cde/programs/dticon/Makefile.am @@ -6,10 +6,6 @@ dticon_CFLAGS = -D__TOOLTALK dticon_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB) -if SOLARIS -dticon_LDADD += -ldl -endif - dticon_SOURCES = dtIconShell.c event.c event.h fileIO.c fileIO.h \ fileIODialog.c globals.c graphics.c graphics.h \ help.c image.c image.h main.c newIconDialog.c \ diff --git a/cde/programs/dticon/utils.c b/cde/programs/dticon/utils.c index d5a9aa19e..b27ce920c 100644 --- a/cde/programs/dticon/utils.c +++ b/cde/programs/dticon/utils.c @@ -2321,6 +2321,7 @@ SaveSession( void ) sprintf(bufr, "*iconic: True\n"); else sprintf(bufr, "*iconic: False\n"); + write (fd, bufr, strlen(bufr)); /*** Get and write out the geometry info for our Window ***/ @@ -2337,12 +2338,18 @@ SaveSession( void ) x -= vendorExt->vendor.xOffset; y -= vendorExt->vendor.yOffset; - snprintf(bufr, sizeof(bufr), "%s*x: %d\n", bufr, x); - snprintf(bufr, sizeof(bufr), "%s*y: %d\n", bufr, y); - snprintf(bufr, sizeof(bufr), "%s*width: %d\n", bufr, width); - snprintf(bufr, sizeof(bufr), "%s*height: %d\n", bufr, height); + snprintf(bufr, sizeof(bufr), "*x: %d\n", x); + write (fd, bufr, strlen(bufr)); + snprintf(bufr, sizeof(bufr), "*y: %d\n", y); + write (fd, bufr, strlen(bufr)); + snprintf(bufr, sizeof(bufr), "*width: %d\n", width); + write (fd, bufr, strlen(bufr)); + snprintf(bufr, sizeof(bufr), "*height: %d\n", height); if (last_fname[0] != '\0') - snprintf(bufr, sizeof(bufr), "%s*file: %s\n", bufr, last_fname); + { + write (fd, bufr, strlen(bufr)); + snprintf(bufr, sizeof(bufr), "*file: %s\n", last_fname); + } if(-1 == write (fd, bufr, strlen(bufr))) { fprintf(stderr, "write() to session failed\n"); diff --git a/cde/programs/dtimsstart/env.c b/cde/programs/dtimsstart/env.c index c7358c27f..4063017f3 100644 --- a/cde/programs/dtimsstart/env.c +++ b/cde/programs/dtimsstart/env.c @@ -51,14 +51,6 @@ int set_cmd_env(void) if ((ret = read_cmd_conf()) != NoError) return ret; -# ifdef old_hpux - p = get_real_locale(uenv->locale, &aliases); - if (p) { - uenv->real_locale = NEWSTR(p); - uenv->locale_aliases = aliases; - } -# endif /* old_hpux */ - expand_cmd_conf(); return ret; @@ -170,11 +162,6 @@ int expand_string(char *in_str, char *out_str, int out_len, ImsConf *ims) case 'A': ep = conf->userAltDir; break; case 'C': ep = conf->dt->confDir; break; case 'U': ep = conf->dt->userDir; break; -# ifdef old_hpux - case 'V': ep = conf->vue->confDir; break; - case 'X': ep = conf->vue->userDir; break; -# endif /* old_hpux */ - case 'L': if (ep = uenv->real_locale) break; case 'l': ep = uenv->locale; break; case 'H': ep = uenv->homedir; break; @@ -264,13 +251,8 @@ int make_new_environ(OutEnv *oenv, UserSelection *sel) ims = sel->ent->ims; xmod = ENV_XMODIFIERS; xmod_done = False; -# ifdef old_hpux - xinput = xhp_xinput_name(NULL); - xinput_done = (xinput) ? False : True; -# else xinput = NULL; xinput_done = True; -# endif /* old_hpux */ proto = renv ? renv->proto : default_protocol(ims); setp = unsetp = 0; @@ -295,20 +277,6 @@ int make_new_environ(OutEnv *oenv, UserSelection *sel) ep++; xmod_done = True; } -# ifdef old_hpux - if (!xinput_done && (proto == Proto_Xhp)) { -#ifdef DEBUG - if (!ims->servername) { - DPR(("make_new_environ(): '%s' servername not defined\n", - sel->name)); - } -#endif - ep->name = NEWSTR(xinput); - ep->value = NEWSTR(ims->servername); - ep++; - xinput_done = True; - } -# endif /* old_hpux */ if (ep == oenv->set) { FREE(oenv->set); oenv->set = (EnvEnt *)0; } else @@ -324,13 +292,6 @@ int make_new_environ(OutEnv *oenv, UserSelection *sel) ep++; xmod_done = True; } -# ifdef old_hpux - if (!xinput_done) { - ep->name = NEWSTR(xinput); - ep++; - xinput_done = True; - } -# endif /* old_hpux */ for (i = 0; i < num && (p = unsetp[i]); i++) { if (strcmp(p, xmod) == 0 || (xinput && (strcmp(p, xinput) == 0))) continue; @@ -470,87 +431,3 @@ int set_remote_env(char *ptr, char *env_pass) Conf.remote->passEnv, env_pass, ptr)); return bp - ptr; } - -# ifdef old_hpux -char *xhp_xinput_name(char *locale) -{ - char *xinput_name = "X@INPUT"; - char **pp, *p; - int i, len; - XhpLocale *xhp = Conf.xhp; - char **ls; - char typ = 0; - - if (!xhp) return NULL; - if (!locale) locale = userEnv.locale; - - for (i = 0; !typ && i < XHP_LANG_NUM; i++) { - if (!(ls = parse_strlist(xhp[i].locales, ' '))) continue; - for (pp = ls; *pp; pp++) { - if (locale[0] != (*pp)[0]) continue; - len = strlen(p = *pp); - if ((p[len - 1] == '*' && strncmp(locale, p, len - 1) == 0) - || strcmp(locale, p) == 0) { - typ = xhp[i].type; - break; - } - } - FREE_LIST(ls); - } - if (!typ) { - DPR2(("xhp_xinput_name(%s): unknown locale\n", locale)); - return NULL; - } - - xinput_name[1] = typ; - return NEWSTR(xinput_name); -} - - -char *get_real_locale(char *locale, char ***aliases) -{ - int i; - int match_idx = -1; - LocaleAlias **alias = Conf.alias, *ap; - char **ls, **pp; - char *real_locale = NULL; - - if (!locale || !alias) return NULL; - - for (i = 0; match_idx < 0 && (ap = alias[i]); i++) { - if (strcmp(ap->name, locale) == 0) { - match_idx = i; - if (aliases) - ls = parse_strlist(ap->aliases, ' '); - break; - } - if (ls = parse_strlist(ap->aliases, ' ')) { - for (pp = ls; *pp; pp++) - if (strcmp(locale, *pp) == 0) { - match_idx = i; - break; - } - FREE_LIST(ls); - ls = (char **)NULL; - } - } - - if (match_idx >= 0) { - real_locale = alias[match_idx]->name; - if (aliases) { - *aliases = ls; - ls = (char **)NULL; - } - } else { - real_locale = NULL; - if (aliases) *aliases = (char **) NULL; - } - if (ls) FREE_LIST(ls); - - DPR(("get_real_locale(%s): real_locale=%s aliases=%s\n", - locale, real_locale, aliases ? *aliases : NULL)); - - return real_locale; -} - -# endif /* old_hpux */ diff --git a/cde/programs/dtimsstart/file.c b/cde/programs/dtimsstart/file.c index cd19ba8d7..8147c8a17 100644 --- a/cde/programs/dtimsstart/file.c +++ b/cde/programs/dtimsstart/file.c @@ -153,11 +153,6 @@ int read_cmd_conf(void) DtEnv *dt = NULL; RemoteEnv *remote; FILE *fp; -# ifdef old_hpux - VueEnv *vue; - LocaleAlias *tmp_alias[MAXIMSENT], *ap; -# endif /* old_hpux */ - conf_dir = DTIMS_CONFDIR; if (!(path = Opt.ConfPath) || !*path) { if (!(path = getenv("DTIMS_STARTCONF")) || !*path) { @@ -235,10 +230,6 @@ int read_cmd_conf(void) RENEWSTR(conf->xmod[Proto_Ximp], valp); } else if (strncmp(p, "Xsi", 3) == 0) { RENEWSTR(conf->xmod[Proto_Xsi], valp); -# ifdef old_hpux - } else if (strncmp(p, "Xhp", 3) == 0) { - RENEWSTR(conf->xmod[Proto_Xhp], valp); -# endif /* old_hpux */ } else if (strncmp(p, "None", 3) == 0) { RENEWSTR(conf->xmod[Proto_None], valp); } else @@ -251,10 +242,6 @@ int read_cmd_conf(void) RENEWSTR(conf->atom[Proto_Ximp], valp); } else if (strncmp(p, "Xsi", 3) == 0) { RENEWSTR(conf->atom[Proto_Xsi], valp); -# ifdef old_hpux - } else if (strncmp(p, "Xhp", 3) == 0) { - RENEWSTR(conf->atom[Proto_Xhp], valp); -# endif /* old_hpux */ } else if (strncmp(p, "None", 3) == 0) { RENEWSTR(conf->atom[Proto_None], valp); } else @@ -281,47 +268,6 @@ int read_cmd_conf(void) RENEWSTR(remote->passEnv, valp); } else goto _inv; -# ifdef old_hpux - } else if (strncmp(lp, "Vue", 3) == 0) { - p = lp + 3; - if (!conf->vue) vue = conf->vue = ALLOC(1, VueEnv); - if (strncmp(p, "ConfigDir", 4) == 0) { - RENEWSTR(vue->confDir, valp); - } else if (strncmp(p, "UserDir", 5) == 0) { - RENEWSTR(vue->userDir, valp); - } else if (strncmp(p, "UseLiteFile", 5) == 0) { - RENEWSTR(vue->uselite, valp); - } else if (strncmp(p, "LiteResourcePath", 5) == 0) { - RENEWSTR(vue->litePath, valp); - } else if (strncmp(p, "ResourcePath", 5) == 0) { - RENEWSTR(vue->resPath, valp); - } else - goto _inv; - } else if (strncmp(lp, "LocaleAlias", 6) == 0) { - ap = ALLOC(1, LocaleAlias); - p = valp; cut_field(valp); - ap->name = NEWSTR(p); - ap->aliases = NEWSTR(valp); - tmp_alias[num_alias++] = ap; - } else if (strncmp(lp, "XhpLocales", 3) == 0) { - int idx = 0; - p = strrchr(lp, '.'); - if (!p) continue; /* invalid */ - switch (p[1]) { - case 'J': idx = XHP_JPN; break; - case 'K': idx = XHP_KOR; break; - case 'C': idx = XHP_CHS; break; - case 'T': idx = XHP_CHT; break; - default: goto _inv; - } - if (!conf->xhp) - conf->xhp = ALLOC(XHP_LANG_NUM, XhpLocale); - else if (conf->xhp[idx].locales) { - FREE(conf->xhp[idx].locales); - } - conf->xhp[idx].type = p[1]; - conf->xhp[idx].locales = NEWSTR(valp); -# endif /* old_hpux */ } else { _inv: DPR(("\t[line=%d] invalid entry '%s'\n", line_num, lp)); @@ -329,15 +275,6 @@ int read_cmd_conf(void) } fclose(fp); -# ifdef old_hpux - if (num_alias > 0) { - conf->alias = ALLOC(num_alias + 1, LocaleAlias *); - memcpy((void *)conf->alias, (void *)tmp_alias, - num_alias*sizeof(LocaleAlias *)); - conf->alias[num_alias] = (LocaleAlias *)0; - } -# endif /* old_hpux */ - /* if (remote->disabled) FREE(remote->passEnv); */ _default: @@ -353,11 +290,6 @@ _default: if (!conf->dt) conf->dt = ALLOC(1, DtEnv); if (!conf->dt->confDir) conf->dt->confDir = NEWSTR(DT_CONFDIR); if (!conf->dt->userDir) conf->dt->userDir = NEWSTR(DT_USERDIR); -# ifdef old_hpux - if (!conf->vue) conf->vue = ALLOC(1, VueEnv); - if (!conf->vue->confDir) conf->vue->confDir = NEWSTR(VUE_CONFDIR); - if (!conf->vue->userDir) conf->vue->userDir = NEWSTR(VUE_USERDIR); -# endif /* old_hpux */ if (!conf->xmod[Proto_XIM]) conf->xmod[Proto_XIM] = NEWSTR(IM_XMOD_XIM); if (!conf->xmod[Proto_Ximp]) conf->xmod[Proto_Ximp] = NEWSTR(IM_XMOD_XIMP); if (!conf->xmod[Proto_Xsi]) conf->xmod[Proto_Xsi] = NEWSTR(IM_XMOD_XSI); @@ -401,15 +333,6 @@ int expand_cmd_conf(void) CHK_ADD(conf->dt->userDir) CHK_ADD(conf->dt->resPath) } -# ifdef old_hpux - if (conf->vue) { - CHK_ADD(conf->vue->confDir) - CHK_ADD(conf->vue->userDir) - CHK_ADD(conf->vue->uselite) - CHK_ADD(conf->vue->resPath) - CHK_ADD(conf->vue->litePath) - } -# endif /* old_hpux */ /* xmod[] & atom[] must not be expanded, since no ims selected */ /* remote->* should be expanded at preparation of remote exec */ @@ -498,10 +421,6 @@ int read_imsconf(ImsConf *conf, char *ims_name, char *ims_fname) SET_FLAG(F_NO_REMOTE); else if (strcmp(lp, "no_option") == 0) SET_FLAG(F_NO_OPTION); -# ifdef old_hpux - else if (strcmp(lp, "try_connect") == 0) - SET_FLAG(F_TRY_CONNECT); -# endif /* old_hpux */ else if (strcmp(lp, "has_window") == 0) SET_FLAG(F_HAS_WINDOW); #undef SET_FLAG @@ -1046,48 +965,6 @@ static int user_selection_fname(char *buf, int buf_len, int dpy_specific) } len = expand_string(dpy_specific ? "%S/%d/" : "%S/", buf, buf_len, 0); -# ifdef old_hpux - if (!real_done && uenv->real_locale) { - real_done = True; - strcpy(buf + len, uenv->real_locale); - if (!is_readable(buf, True)) { - bool rename_done = False; - char buf2[MAXPATHLEN], *bp; - - strncpy(buf2, buf, len); - bp = buf2 + len; *bp = 0; - if (strcmp(uenv->locale, uenv->real_locale)) { - strcpy(bp, uenv->locale); - if (is_readable(buf2, False)) { - rename_done = rename(buf2, buf) == 0; - DPR(("user_selection_fname(): rename(%s, %s) %s\n", - uenv->locale, uenv->real_locale, - rename_done ? "OK" : "Failed")); - } - } - - if (uenv->locale_aliases) { - char **ap; - for (ap = uenv->locale_aliases; *ap; ap++) { - strcpy(bp, *ap); - if (!is_readable(buf2, False)) continue; - if (rename_done) { - (void) unlink(buf2); - DPR(("user_selection_fname(): unlink(%s) %s\n", - *ap)); - } else { - rename_done = rename(buf2, buf) == 0; - DPR(("user_selection_fname(): rename(%s, %s) %s\n", - *ap, uenv->real_locale, - rename_done ? "OK" : "Failed")); - } - } - } - /* real_done = rename_done; */ - } - } -# endif /* old_hpux */ - /* Add the CDE-generic locale name */ strcpy(buf + len, real_done ? uenv->real_locale : uenv->CDE_locale); buf[buf_len-1] = 0; @@ -1104,9 +981,6 @@ int parse_protolist(char *valp) if (strstr(valp, "XIM")) proto_bits |= ProtoBit(Proto_XIM); if (strstr(valp, "Ximp")) proto_bits |= ProtoBit(Proto_Ximp); if (strstr(valp, "Xsi")) proto_bits |= ProtoBit(Proto_Xsi); -# ifdef old_hpux - if (strstr(valp, "Xhp")) proto_bits |= ProtoBit(Proto_Xhp); -# endif /* old_hpux */ if (strstr(valp, "None")) proto_bits |= ProtoBit(Proto_None); return proto_bits; } @@ -1116,9 +990,6 @@ int default_protocol(ImsConf *conf) if (conf->protocols & ProtoBit(Proto_XIM)) return Proto_XIM; else if (conf->protocols & ProtoBit(Proto_Ximp)) return Proto_Ximp; else if (conf->protocols & ProtoBit(Proto_Xsi)) return Proto_Xsi; -# ifdef old_hpux - else if (conf->protocols & ProtoBit(Proto_Xhp)) return Proto_Xhp; -# endif /* old_hpux */ else return Proto_None; } diff --git a/cde/programs/dtimsstart/main.c b/cde/programs/dtimsstart/main.c index 8756e2183..4a3b3b60c 100644 --- a/cde/programs/dtimsstart/main.c +++ b/cde/programs/dtimsstart/main.c @@ -845,12 +845,6 @@ static int parse_options(int argc, char **argv) SET_FLAG(FLAG_CONNECT); } else if (optname_match("dt", opt, 2)) { SET_FLAG(FLAG_DT); -# ifdef old_hpux - CLR_FLAG(FLAG_VUE); - } else if (optname_match("vue", opt, 2)) { - SET_FLAG(FLAG_VUE); - CLR_FLAG(FLAG_DT); -# endif /* old_hpux */ } else if (optname_match("window", opt, 2)) { SET_FLAG(FLAG_WINDOW); } else if (optname_match("nowindow", opt, 4)) { @@ -1062,10 +1056,6 @@ static OptDesc opts_internal[] = { { "-notimeout", "do not timeout" }, { "-noremote", "disable remote execution" }, { "-notify", "print error code to stderr" }, -# ifdef old_hpux - { "-vue", "in VUE environment" }, - { "-connect", "enable try_connect" }, -# endif /* old_hpux */ #ifdef SelectMode_ONCE { "-once", "auto-selection once selected" }, #endif /* SelectMode_ONCE */ diff --git a/cde/programs/dtimsstart/start.c b/cde/programs/dtimsstart/start.c index afd145616..d509e7545 100644 --- a/cde/programs/dtimsstart/start.c +++ b/cde/programs/dtimsstart/start.c @@ -45,12 +45,6 @@ static void on_sig_chld(/* sig */); static bool is_ims_running(/* renv, ims */); static int settle_ims(/* sel */); static Window property_owner(/* prop_atom, prop_str */); -# ifdef old_hpux -static void catch_alarm(/* sig */); -static int try_connection(/* sel */); -static int create_dummy_ic(/* xim */); -# endif /* old_hpux */ - void ximsStart(void) { @@ -185,12 +179,6 @@ void ximsWaitDone(void) case ErrImsWaitDone: sel->status = NoError; -# ifdef old_hpux - if ((OpFlag & FLAG_CONNECT) - || (sel->ent->ims->flags & F_TRY_CONNECT)) { - sel->status = try_connection(sel); - } -# endif /* old_hpux */ break; case ErrImsConnecting: @@ -360,11 +348,6 @@ int load_resources(void) if (isDT()) { sess_res = find_session_resfile(RES_TYPE_DT); } -# ifdef old_hpux - else if (isVUE()) { - sess_res = find_session_resfile(RES_TYPE_VUE); - } -# endif /* old_hpux */ if (sess_res && !is_readable(sess_res, False)) { FREE(sess_res); sess_res = NULL; @@ -407,17 +390,6 @@ static char *find_session_resfile(int res_type) if (res_type == RES_TYPE_DT) { /* DT */ res = Conf.dt ? (Conf.dt)->resPath : NULL; } -# ifdef old_hpux - else if (res_type == RES_TYPE_VUE && Conf.vue) { /* VUE */ - VueEnv *vue = Conf.vue; - res = vue->resPath; - if (vue->uselite) { - expand_string(vue->uselite, path, MAXPATHLEN, (ImsConf *)0); - if (access(path, R_OK) == 0) - res = vue->litePath; - } - } -# endif /* old_hpux */ if (!res) return NULL; if (ls = parse_strlist(res, ':')) { @@ -490,12 +462,6 @@ static int build_run_env(UserSelection *sel) renv->atom_name = NEWSTR(buf); } else { /* copy im_mod, instead */ renv->atom_name = NEWSTR(renv->im_mod); -# ifdef old_hpux - if ((p = renv->atom_name) && strchr(p, '#')) { - while (p = strchr(p, '#')) /* replace '#' with '@' */ - *p++ = '@'; - } -# endif /* old_hpux */ } /* others */ @@ -768,177 +734,3 @@ static Window property_owner(Atom *prop_atom, char *prop_str) } return XGetSelectionOwner(Dpy, property); } - - -# ifdef old_hpux - /* ***** try_connection ***** */ - -#define MAX_RETRY 5 - -static jmp_buf jmp_env; -static Window dmy_win = 0; /* temporary window used for XCreateIC() */ - -static void catch_alarm(int sig) -{ - signal(SIGALRM, SIG_IGN); - alarm(0); - longjmp(jmp_env, 1); -} - -static int try_connection(UserSelection *sel) -{ - RunEnv *renv = sel->renv; - ImsConf *ims = sel->ent->ims; - char envbuf[BUFSIZ], *bp; - XIM xim; - int ic_ok, retry_cnt; - static char *saved_xmod = NULL; -#ifdef DEBUG - time_t last_time; -#endif - - DPR(("try_connection(%s):\n", sel->name)); - - if (sel->status != NoError || !renv->im_mod) - return sel->status; - - renv->status = ErrImsConnecting; - set_sig_chld(True); - - /* set XMODIFIERS */ - saved_xmod = NULL; - bp = strcpyx(envbuf, ENV_MOD_IM); - bp = strcpyx(bp, renv->im_mod); - saved_xmod = XSetLocaleModifiers(envbuf); - DPR(("\tXSetLocaleModifiers(%s)\n", envbuf)); - - ic_ok = False; - if (setjmp(jmp_env) == 0) { - signal(SIGALRM, catch_alarm); - alarm(Opt.Timeout); - - for (retry_cnt = 0; !ic_ok && retry_cnt <= MAX_RETRY; retry_cnt++) { - if (retry_cnt) sleep(retry_cnt * retry_cnt); - -#ifdef DEBUG - last_time = time((time_t)0); -#endif - xim = XOpenIM(Dpy, (XrmDatabase)0, ims->servername, ims->classname); - if (xim) { - DPR(("try_connection(%d): XOpenIM() OK [%d sec.]", - retry_cnt, time((time_t)0) - last_time)); -#ifdef DEBUG - last_time = time((time_t)0); -#endif - ic_ok = create_dummy_ic(xim); - DPR(("\tXCreateIC() %s [%d sec.]\n", - ic_ok ? "OK" : "Failed", time((time_t)0) - last_time)); - XCloseIM(xim); xim = 0; - } else { - DPR(("try_connection(%d): XOpenIM() failed.\n", retry_cnt)); - ic_ok = False; - } - } - } else { /* long_jmp() by alarm [timeout] */ - alarm(0); signal(SIGALRM, SIG_IGN); - DPR(("try_connection(): XOpenIM() & XCreateIC() timed-out.\n")); - if (dmy_win) { - XDestroyWindow(Dpy, dmy_win); dmy_win = 0; - } - /* neither XDestroyIC() nor XCloseIM() should be called */ - xim = 0; - ic_ok = False; - } - alarm(0); signal(SIGALRM, SIG_IGN); - - /* restore XMODIFIERS */ - if (saved_xmod) { - DPR2(("\tXSetLocaleModifiers(save='%s')\n", saved_xmod)); - XSetLocaleModifiers(saved_xmod); - } - - set_sig_chld(False); - renv->status = ErrImsConnectDone; - - return ic_ok ? NoError : ErrImsTimeout; /* ErrImsConnect; */ -} - -static int create_dummy_ic(XIM xim) -{ - int scr; - XFontSet fset; - XIMStyles *im_styles; - XIMStyle style; - XIC ic; - unsigned long fg, bg; - XRectangle area; - XVaNestedList status_attr; - - scr = DefaultScreen(Dpy); - fg = BlackPixel(Dpy, scr); - bg = WhitePixel(Dpy, scr); - dmy_win = XCreateSimpleWindow(Dpy, RootWindow(Dpy, scr), - 0, 0, 1, 1, 0, bg, fg); - - /* search (PreeditNothing | StatusNothing [or StatusArea]) style */ - ic = 0; - style = (XIMStyle) 0; - im_styles = (XIMStyles *) 0; - if (XGetIMValues(xim, XNQueryInputStyle, &im_styles, NULL)) { - DPR(("create_dummy_ic(): XGetIMValues(XNQueryInutStyle) failed.\n")); - goto _err; - } - if (!im_styles || !im_styles->count_styles) { - DPR(("create_dummy_ic(): No input styles supported on IMS.\n")); - if (im_styles) XFree(im_styles); - goto _err; - } - if ((int)im_styles->count_styles > 0) { - int i, alt; - for (i = 0, alt = -1; i < (int)im_styles->count_styles; i++) - if (im_styles->supported_styles[i] & XIMPreeditNothing) { - if (im_styles->supported_styles[i] & XIMStatusNothing) { - style = im_styles->supported_styles[i]; - break; - } else if (im_styles->supported_styles[i] & XIMStatusArea) { - alt = i; - } - } - if (!style && alt >= 0) style = im_styles->supported_styles[alt]; - XFree(im_styles); - } - if (!style) { - DPR(("create_dummy_ic(): 'PreeditNothing' styles not supported.\n")); - goto _err; - /* style = XIMPreeditNothing | XIMStatusNothing; */ - } - - fset = 0; - status_attr = (XVaNestedList) 0; - if (style & XIMStatusArea) { - area.x = area.y = 0; area.width = area.height = 1; - status_attr = XVaCreateNestedList(NULL, - XNArea, &area, - XNForeground, fg, - XNBackground, bg, - XNFontSet, fset, - NULL ); - } - - ic = XCreateIC(xim, XNInputStyle, style, - XNClientWindow, dmy_win, - XNStatusAttributes, status_attr, - XNFocusWindow, dmy_win, - NULL ); - - /* if (fset) XFreeFontSet(Dpy, fset); */ - if (ic) XDestroyIC(ic); - -_err: - if (dmy_win) XDestroyWindow(Dpy, dmy_win); - dmy_win = 0; - - return ic ? True : False; -} - -# endif /* old_hpux */ diff --git a/cde/programs/dtimsstart/util.c b/cde/programs/dtimsstart/util.c index e359c319d..a7dabd674 100644 --- a/cde/programs/dtimsstart/util.c +++ b/cde/programs/dtimsstart/util.c @@ -700,28 +700,6 @@ void clear_CmdConf(void) FREE(conf->dt->resPath); FREE(conf->dt); } -# ifdef old_hpux - if (conf->vue) { - FREE(conf->vue->confDir); - FREE(conf->vue->userDir); - FREE(conf->vue->uselite); - FREE(conf->vue->resPath); - FREE(conf->vue->litePath); - FREE(conf->vue); - } - if (conf->alias) { - for (ap = conf->alias; *ap; ap++) { - FREE((*ap)->name); - FREE((*ap)->aliases); - } - FREE(conf->alias); - } - if (conf->xhp) { - for (i = 0; i < XHP_LANG_NUM; i++) - FREE(conf->xhp[i].locales); - FREE(conf->xhp); - } -# endif /* old_hpux */ } CLR(&Conf, CmdConf); cmdconf_initialized = False; @@ -803,11 +781,7 @@ void pr_ImsConf(ImsConf *conf, char *ims_name) (conf->protocols & ProtoBit(Proto_XIM)) ? "XIM," : NULL, (conf->protocols & ProtoBit(Proto_Ximp)) ? "Ximp," : NULL, (conf->protocols & ProtoBit(Proto_Xsi)) ? "Xsi," : NULL, -# ifdef old_hpux - (conf->protocols & ProtoBit(Proto_Xhp)) ? "Xhp," : NULL, -# else NULL, -# endif /* old_hpux */ (conf->protocols & ProtoBit(Proto_None)) ? "None," : NULL); fprintf(LogFp, "\tproperty=%s servername=%s (%s) class=%s\n", conf->property, conf->servername, @@ -903,9 +877,6 @@ void pr_CmdConf(void) { int i; CmdConf *conf = &Conf; -# ifdef old_hpux - LocaleAlias **ap; -# endif /* old_hpux */ char **p; fprintf(LogFp, "CmdConf:\n"); @@ -918,21 +889,12 @@ void pr_CmdConf(void) fprintf(LogFp, "\tuserTmpDir=%s\n", conf->userTmpDir); fprintf(LogFp, "\tuserAltDir=%s\n", conf->userAltDir); -# ifdef old_hpux - fprintf(LogFp, "\tImXmod:\tXIM=%s Ximp=%s Xsi=%s Xhp=%s None=%s\n", - conf->xmod[Proto_XIM], conf->xmod[Proto_Ximp], - conf->xmod[Proto_Xsi], conf->xmod[Proto_Xhp], conf->atom[Proto_None]); - fprintf(LogFp, "\tImAtom:\tXIM=%s Ximp=%s Xsi=%s Xhp=%s None=%s\n", - conf->atom[Proto_XIM], conf->atom[Proto_Ximp], - conf->atom[Proto_Xsi], conf->atom[Proto_Xhp], conf->atom[Proto_None]); -# else fprintf(LogFp, "\tImXmod:\tXIM=%s Ximp=%s Xsi=%s None=%s\n", conf->xmod[Proto_XIM], conf->xmod[Proto_Ximp], conf->xmod[Proto_Xsi], conf->atom[Proto_None]); fprintf(LogFp, "\tImAtom:\tXIM=%s Ximp=%s Xsi=%s None=%s\n", conf->atom[Proto_XIM], conf->atom[Proto_Ximp], conf->atom[Proto_Xsi], conf->atom[Proto_None]); -# endif /* old_hpux */ fprintf(LogFp, "\tAction[%d]:\t{ ", NUM_ACTIONS); for (i = 0; i < NUM_ACTIONS; i++) @@ -952,29 +914,6 @@ void pr_CmdConf(void) } else fprintf(LogFp, "\tDtEnv:\t\n"); -# ifdef old_hpux - if (conf->vue) { - fprintf(LogFp, "\tVueEnv:\tConfDir=%s UserDir=%s\n", - conf->vue->confDir, conf->vue->userDir); - fprintf(LogFp, "\t uselite=%s\n", conf->vue->uselite); - fprintf(LogFp, "\t resPath=\"%s\"\n", conf->vue->resPath); - fprintf(LogFp, "\t litePath=\"%s\"\n", conf->vue->litePath); - } else - fprintf(LogFp, "\tVueEnv:\t\n"); - - fprintf(LogFp, "\tlocaleAlias:\t%s\n", conf->alias ? NULL : "None"); - if (conf->alias) { - for (ap = conf->alias; *ap; ap++) - fprintf(LogFp, "\t [%s]\t%s\n", (*ap)->name, (*ap)->aliases); - } - - fprintf(LogFp, "\txhp:\t%s\n", conf->xhp ? NULL : "None"); - if (conf->xhp) { - for (i = 0; i < XHP_LANG_NUM; i++) - fprintf(LogFp, "\t [%c]\t%s\n", - conf->xhp[i].type, conf->xhp[i].locales); - } -# endif /* old_hpux */ } void pr_CmdOpt(void) @@ -1018,9 +957,6 @@ void pr_OpModeFlag(void) if (OpFlag & FLAG_REMOTERUN) fputs("RemoteRun, ", LogFp); if (OpFlag & FLAG_WINDOW) fputs("Window, ", LogFp); if (OpFlag & FLAG_DT) fputs("Dt, ", LogFp); -# ifdef old_hpux - if (OpFlag & FLAG_VUE) fputs("Vue, ", LogFp); -# endif /* old_hpux */ } putc('\n', LogFp); } @@ -1132,11 +1068,7 @@ char *error_name(ximsError error) static char *_proto_names[NUM_PROTOCOLS] = -# ifdef old_hpux - { "None", "XIM", "Ximp", "Xsi", "Xhp" }; -# else { "None", "XIM", "Ximp", "Xsi" }; -# endif /* old_hpux */ char *proto_name(int proto_idx) { diff --git a/cde/programs/dtimsstart/xims.h b/cde/programs/dtimsstart/xims.h index dcc9d53cb..ed3315225 100644 --- a/cde/programs/dtimsstart/xims.h +++ b/cde/programs/dtimsstart/xims.h @@ -72,16 +72,9 @@ #define FLAG_REMOTERUN (1<<9) /* -remoterun option */ #define FLAG_WINDOW (1<<10) /* -window option */ #define FLAG_DT (1<<11) /* -dt option */ -# ifdef old_hpux -#define FLAG_VUE (1<<12) /* -vue option */ -# endif /* old_hpux */ #define FLAG_DEFAULT (FLAG_DT) -# ifdef old_hpux -#define USE_WINDOW_MASK (FLAG_WINDOW|FLAG_VUE|FLAG_DT) -# else #define USE_WINDOW_MASK (FLAG_WINDOW|FLAG_DT) -# endif /* old_hpux */ #define MAXIMSENT 32 /* max # of ims for each locale */ @@ -122,12 +115,7 @@ #define Proto_XIM 1 #define Proto_Ximp 2 #define Proto_Xsi 3 -# ifdef old_hpux -#define Proto_Xhp 4 -#define NUM_PROTOCOLS 5 -# else #define NUM_PROTOCOLS 4 -# endif /* old_hpux */ /* protocol flag */ #define ProtoBit(i) (1<<(i)) @@ -167,15 +155,6 @@ #define HOST_REMOTE 1 #define HOST_UNKNOWN 2 -# ifdef old_hpux - /* index for XhpLocale */ -#define XHP_JPN 0 -#define XHP_KOR 1 -#define XHP_CHS 2 -#define XHP_CHT 3 -#define XHP_LANG_NUM 4 -# endif /* old_hpux */ - /* message type for put_msg_win() */ #define MSGTYP_INFO 0 #define MSGTYP_WARN 1 @@ -244,26 +223,6 @@ typedef struct { EnvEnt *unset; } OutEnv; -# ifdef old_hpux -typedef struct { - char *name; - char *aliases; -} LocaleAlias; - -typedef struct { - char type; - char *locales; -} XhpLocale; - -typedef struct { - char *confDir; /* override /etc/vue/config */ - char *userDir; /* override .vue */ - char *uselite; /* $HOME/.vue/sessions/usevuelite */ - char *resPath; /* path of session resource (colon separated) */ - char *litePath; -} VueEnv; -# endif /* old_hpux */ - typedef struct { char *confDir; /* override /usr/dt/config */ char *userDir; /* override .dt */ @@ -391,11 +350,6 @@ typedef struct { char *action[NUM_ACTIONS]; /* actions internally used */ DtEnv *dt; RemoteEnv *remote; -# ifdef old_hpux - VueEnv *vue; - XhpLocale *xhp; - LocaleAlias **alias; -# endif /* old_hpux */ } CmdConf; typedef struct { @@ -447,13 +401,8 @@ Extern int LastErrMsg; #undef Extern -# ifdef old_hpux -#define isXsession() ((OpFlag & (FLAG_VUE|FLAG_DT)) ? True : False) -#define isVUE() ((OpFlag & FLAG_VUE) ? True : False) -# else #define isXsession() ((OpFlag & FLAG_DT) ? True : False) #define isVUE() (False) -# endif /* old_hpux */ #define isDT() ((OpFlag & FLAG_DT) ? True : False) #define useWINDOW() \ (((OpFlag & USE_WINDOW_MASK) || window_env_ok()) ? True : False) diff --git a/cde/programs/dtimsstart/ximspath.h b/cde/programs/dtimsstart/ximspath.h index 23ad46a85..40ac7fbad 100644 --- a/cde/programs/dtimsstart/ximspath.h +++ b/cde/programs/dtimsstart/ximspath.h @@ -101,12 +101,6 @@ #define XRDB_PATH "/usr/bin/X11/xrdb" #define DTSESSION_RES_PATH "/usr/dt/bin/dtsession_res" -# ifdef old_hpux - /* VUE dirs */ -#define VUE_CONFDIR "/etc/vue/config" -#define VUE_USERDIR "%H/.vue" -# endif /* old_hpux */ - /* DT dirs */ #define DT_CONFDIR "/usr/dt/config" #define DT_USERDIR "%H/.dt" diff --git a/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.C b/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.C index e2928cf57..b8252b283 100644 --- a/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.C +++ b/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.C @@ -99,7 +99,7 @@ int BookmarkEdit::g_modified_count = 0; #define THIS_CLASS BookmarkEdit #define ON_ACTIVATE(WOBJ,FUNC) \ (WOBJ).SetActivateCallback (this, (WWL_FUN) &THIS_CLASS::FUNC) -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define BUTTON(PARENT,NAME) \ WXmPushButtonGadget NAME (PARENT, #NAME, WAutoManage); \ ON_ACTIVATE (NAME, NAME) diff --git a/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.hh b/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.hh index 7c75f0983..2e1a6c408 100644 --- a/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.hh +++ b/cde/programs/dtinfo/dtinfo/src/Agents/BookmarkEditMotif.hh @@ -93,9 +93,6 @@ protected: // variables WXmPushButtonGadget f_ok; bool f_modified; WCallback *f_wm_delete_callback; -#ifndef hpux static List g_editor_list; -#endif - static int g_modified_count; }; diff --git a/cde/programs/dtinfo/dtinfo/src/Agents/GraphicAgentMotif.C b/cde/programs/dtinfo/dtinfo/src/Agents/GraphicAgentMotif.C index acc46e11e..c10ba3a35 100644 --- a/cde/programs/dtinfo/dtinfo/src/Agents/GraphicAgentMotif.C +++ b/cde/programs/dtinfo/dtinfo/src/Agents/GraphicAgentMotif.C @@ -247,16 +247,6 @@ GraphicAgent::create_ui() DECL (WXmForm, form, f_shell, "form" ); DECLMC(WXmMenuBar, menu_bar, form, "menu_bar" ); -#ifdef hpux - // - // rtp: hard-wire the menu bar's background, since - // it comes up a bogus color. Copied from swm's - // change in NodeWindowAgentMotif.C - // - Pixel bg = form.Background(); - menu_bar.Background(bg); - -#endif DECLM (WXmCascadeButton, file, menu_bar, "file" ); DECLMC(WXmPulldownMenu, file_menu, menu_bar, "file_menu" ); DECLM (WXmPushButton, attach, file_menu, "attach" ); diff --git a/cde/programs/dtinfo/dtinfo/src/Agents/PrefAgentMotif.C b/cde/programs/dtinfo/dtinfo/src/Agents/PrefAgentMotif.C index ef75f934e..4fb191b8e 100644 --- a/cde/programs/dtinfo/dtinfo/src/Agents/PrefAgentMotif.C +++ b/cde/programs/dtinfo/dtinfo/src/Agents/PrefAgentMotif.C @@ -237,7 +237,7 @@ public: #define IS_CHANGED(X) (((Value *) (X).UserData())->changed) #define SET_CHANGED(X,V) ((Value *) (X).UserData())->changed = V -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define ATTACH_VALUE(X,T,V) (X).UserData ((void *) new T##Value(V)) #define SET_VALUE(X,T,V) ((T##Value *) (X).UserData())->set_value(V) #define ORIGINAL_VALUE(X,T) ((T##Value *) (X).UserData())->original diff --git a/cde/programs/dtinfo/dtinfo/src/Agents/PrintPanelAgentMotif.hh b/cde/programs/dtinfo/dtinfo/src/Agents/PrintPanelAgentMotif.hh index 729c11398..4c6c2fc6d 100644 --- a/cde/programs/dtinfo/dtinfo/src/Agents/PrintPanelAgentMotif.hh +++ b/cde/programs/dtinfo/dtinfo/src/Agents/PrintPanelAgentMotif.hh @@ -74,7 +74,7 @@ class WTopLevelShell; #endif // This belongs in f'ing config.h -#if defined(SVR4) || defined(hpux) +#if defined(SVR4) # define pid_type pid_t #else # define pid_type int diff --git a/cde/programs/dtinfo/dtinfo/src/Basic/BitField.hh b/cde/programs/dtinfo/dtinfo/src/Basic/BitField.hh index aee1c62ab..09ac84305 100644 --- a/cde/programs/dtinfo/dtinfo/src/Basic/BitField.hh +++ b/cde/programs/dtinfo/dtinfo/src/Basic/BitField.hh @@ -46,7 +46,7 @@ * Campbell, CA 95008 * */ -#if defined(SVR4) || defined(hpux) || defined(__linux__) || defined(__NetBSD__) +#if defined(SVR4) || defined(__linux__) || defined(__NetBSD__) #include #else #include diff --git a/cde/programs/dtinfo/dtinfo/src/Basic/FolioObject.hh b/cde/programs/dtinfo/dtinfo/src/Basic/FolioObject.hh index 64c57fc60..cd1ce6838 100644 --- a/cde/programs/dtinfo/dtinfo/src/Basic/FolioObject.hh +++ b/cde/programs/dtinfo/dtinfo/src/Basic/FolioObject.hh @@ -54,7 +54,7 @@ typedef void (FolioObject::* notify_handler_t) (FolioObject *object, u_int notify_type, void *call_data, void *client_data); -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define DEF_CLASS(C) \ virtual ClassType type() const; \ static ClassType C##Class diff --git a/cde/programs/dtinfo/dtinfo/src/Makefile.am b/cde/programs/dtinfo/dtinfo/src/Makefile.am index 8b18891e2..62fbfb9fc 100644 --- a/cde/programs/dtinfo/dtinfo/src/Makefile.am +++ b/cde/programs/dtinfo/dtinfo/src/Makefile.am @@ -67,6 +67,6 @@ bin_PROGRAMS = dtinfo dtinfo_CXXFLAGS = $(DTINFO_DEFINES) $(DTINFO_INCLUDES) dtinfo_LDADD = $(OLIASNORMALLIBS) $(LIBSEARCH) $(MMDB_LIBS) $(WWL_LIBS) \ - $(DTCLIENTLIBS) $(XTOOLLIB) + $(DTCLIENTLIBS) $(XTOOLLIB) $(LMDBLIB) dtinfo_SOURCES = main.C Support/InputNotifier.C diff --git a/cde/programs/dtinfo/dtinfo/src/Managers/PrefMgr.C b/cde/programs/dtinfo/dtinfo/src/Managers/PrefMgr.C index ef95ac755..78c83c59b 100644 --- a/cde/programs/dtinfo/dtinfo/src/Managers/PrefMgr.C +++ b/cde/programs/dtinfo/dtinfo/src/Managers/PrefMgr.C @@ -80,7 +80,7 @@ pref_mgr() } #endif -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) # define DEFSYM(S) PrefSymbol PrefMgr::S = (PrefSymbol) #S #else # define DEFSYM(S) PrefSymbol PrefMgr::S = (PrefSymbol) "S" diff --git a/cde/programs/dtinfo/dtinfo/src/Other/WindowSystemMotif.C b/cde/programs/dtinfo/dtinfo/src/Other/WindowSystemMotif.C index b621843a5..a371efca2 100644 --- a/cde/programs/dtinfo/dtinfo/src/Other/WindowSystemMotif.C +++ b/cde/programs/dtinfo/dtinfo/src/Other/WindowSystemMotif.C @@ -171,16 +171,7 @@ static unsigned char anno_double_bits[] = { 0x0a, 0x20, 0xea, 0x2f, 0x0a, 0x20, 0xea, 0x2f, 0x0a, 0x20, 0xfa, 0x3f, 0x02, 0x08, 0xfe, 0x0f, 0x00, 0x00}; -#if defined(SVR4) || defined(__linux__) || defined(CSRG_BASED) #include -#else -#include -#endif - -#ifdef hpux -typedef void (*SIG_PF)(); -#endif - #include #include @@ -1599,7 +1590,7 @@ WindowSystem::interrupt_handler (int /* signal_number */) exit(1); } -#if defined(SVR4) || defined(hpux) || defined(_IBMR2) +#if defined(SVR4) || defined(_IBMR2) signal (SIGINT, (interrupt_handler_ptr)interrupt_handler); #endif } diff --git a/cde/programs/dtinfo/dtinfo/src/Preferences/UserPreference.C b/cde/programs/dtinfo/dtinfo/src/Preferences/UserPreference.C index a5e104b24..340fc8732 100644 --- a/cde/programs/dtinfo/dtinfo/src/Preferences/UserPreference.C +++ b/cde/programs/dtinfo/dtinfo/src/Preferences/UserPreference.C @@ -63,9 +63,6 @@ #include #include #include -#if !defined(hpux) && !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#endif #include #include diff --git a/cde/programs/dtinfo/dtinfo/src/Query/QueryTermView.C b/cde/programs/dtinfo/dtinfo/src/Query/QueryTermView.C index d8b8652b6..cee1b8a47 100644 --- a/cde/programs/dtinfo/dtinfo/src/Query/QueryTermView.C +++ b/cde/programs/dtinfo/dtinfo/src/Query/QueryTermView.C @@ -77,9 +77,7 @@ #include #include -#if defined(SVR4) || defined(SYSV) || defined(__linux__) || defined(CSRG_BASED) #include -#endif #define CLASS QueryTermView diff --git a/cde/programs/dtinfo/dtinfo/src/Support/xList.hh b/cde/programs/dtinfo/dtinfo/src/Support/xList.hh index a4e2159a4..f7b56d698 100644 --- a/cde/programs/dtinfo/dtinfo/src/Support/xList.hh +++ b/cde/programs/dtinfo/dtinfo/src/Support/xList.hh @@ -71,20 +71,12 @@ private: }; template -#if defined(_IBMR2) || defined(__linux__) || defined(CSRG_BASED) || defined(sun) class xList : public List_base -#else -class xList : private List_base -#endif { // NOTE: This friend declaration is too general because cfront // barfs when I do it the correct way. 22:05 22-Jul-93 DJB #ifdef SC3 friend class List_Iterator; -#else -#if !defined(_IBMR2) && !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -template friend class List_Iterator; -#endif #endif public: xList() { } @@ -118,11 +110,7 @@ public: template -#if defined(_IBMR2) || defined(__linux__) || defined(CSRG_BASED) || defined(sun) class List_Iterator : public List_Iterator_base -#else -class List_Iterator : private List_Iterator_base -#endif { friend class xList; public: diff --git a/cde/programs/dtinfo/dtinfo/src/Templates.C b/cde/programs/dtinfo/dtinfo/src/Templates.C index e03f05c61..b9d067efd 100644 --- a/cde/programs/dtinfo/dtinfo/src/Templates.C +++ b/cde/programs/dtinfo/dtinfo/src/Templates.C @@ -422,7 +422,7 @@ typedef CC_TPtrDlist _ccTPtrDLstCvSegmnt_; #endif -#if defined(sun) | defined(hpux) +#if defined(sun) typedef UAS_Pointer _ptrString_; typedef UAS_Pointer _ptrCommon_; diff --git a/cde/programs/dtinfo/dtinfo/src/UAS/Base/UAS_Sender.hh b/cde/programs/dtinfo/dtinfo/src/UAS/Base/UAS_Sender.hh index dc5764c80..2c573b81e 100644 --- a/cde/programs/dtinfo/dtinfo/src/UAS/Base/UAS_Sender.hh +++ b/cde/programs/dtinfo/dtinfo/src/UAS/Base/UAS_Sender.hh @@ -27,7 +27,7 @@ # include "UAS_PtrList.hh" #ifndef CONCAT -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define CONCAT(A,B) A##B #define CONCAT3(A,B,C) A##B##C #else diff --git a/cde/programs/dtinfo/dtinfo/src/UAS/Test/UserPreference.C b/cde/programs/dtinfo/dtinfo/src/UAS/Test/UserPreference.C index 73a1d953f..6fc3b9e2f 100644 --- a/cde/programs/dtinfo/dtinfo/src/UAS/Test/UserPreference.C +++ b/cde/programs/dtinfo/dtinfo/src/UAS/Test/UserPreference.C @@ -60,9 +60,7 @@ #include #include #include -#ifndef hpux #include -#endif #include #include #include diff --git a/cde/programs/dtinfo/dtinfo/src/config.h b/cde/programs/dtinfo/dtinfo/src/config.h index 3d0c9b5f1..4f899d05a 100644 --- a/cde/programs/dtinfo/dtinfo/src/config.h +++ b/cde/programs/dtinfo/dtinfo/src/config.h @@ -109,7 +109,7 @@ typedef unsigned char u_char; #define self *this #ifndef STRINGIFY -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define STRINGIFY(S) #S #else #define STRINGIFY(S) "S" @@ -117,7 +117,7 @@ typedef unsigned char u_char; #endif #ifndef CONCAT -#if defined(__STDC__) || defined(hpux) +#if defined(__STDC__) #define CONCAT(A,B) A##B #define CONCAT3(A,B,C) A##B##C #else diff --git a/cde/programs/dtinfo/dtinfo/src/main.C b/cde/programs/dtinfo/dtinfo/src/main.C index 9ae141476..8d44d1d35 100644 --- a/cde/programs/dtinfo/dtinfo/src/main.C +++ b/cde/programs/dtinfo/dtinfo/src/main.C @@ -305,17 +305,3 @@ main(int argc, char **argv) return (0); } - -#ifdef hpux - -extern "C" { -void DosClose () { cerr << "DosClose\n"; } -void DosWrite () { cerr << "DosWrite\n"; } -void DosPeekNmPipe () { cerr << "DosPeekNmPipe\n"; } -void DosDisconnectNmPipe () { cerr << "DosDisconnectNmPipe\n"; } -void DosMakeNmPipe () { cerr << "DosMakeNmPipe\n"; } -void DosConnectNmPipe () { cerr << "DosConnectNmPipe\n"; } -void DosRead () { cerr << "DosRead\n"; } -} - -#endif diff --git a/cde/programs/dtinfo/dtinfo/wwl/include/WWL/WArgList.h b/cde/programs/dtinfo/dtinfo/wwl/include/WWL/WArgList.h index 47f9a305f..96733a57e 100644 --- a/cde/programs/dtinfo/dtinfo/wwl/include/WWL/WArgList.h +++ b/cde/programs/dtinfo/dtinfo/wwl/include/WWL/WArgList.h @@ -45,13 +45,8 @@ #define WArgList_h // Allow setting of resources by name in arg list -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #define CASTRNAM (char*) #define CASTVAL (void*)(size_t) -#else -#define CASTRNAM -#define CASTVAL -#endif #define RSRC_SET(RSC,TYP,RNAM) \ inline WArgList& RSC(TYP val) { return Add(CASTRNAM RNAM, CASTVAL val); } diff --git a/cde/programs/dtinfo/dtinfo/wwl/include/WWL/wwl.h b/cde/programs/dtinfo/dtinfo/wwl/include/WWL/wwl.h index 31632a601..4484177a7 100644 --- a/cde/programs/dtinfo/dtinfo/wwl/include/WWL/wwl.h +++ b/cde/programs/dtinfo/dtinfo/wwl/include/WWL/wwl.h @@ -45,19 +45,10 @@ #define wwl_h // Widget Wrapper Library by: -// -// ___ 0 Jean-Daniel Fekete uucp : jdf@lri.lri.fr -// / \ / LRI - Bat 490 bitnet: jdf@FRLRI61.bitnet -// / _/ / Universite de Paris-Sud voice : +33 (1) 69 41 65 91 -// /__ \/ F-91405 ORSAY Cedex +33 (1) 69 41 66 29 #include -#if !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#else #define name2(__n1,__n2) __paste2(__n1,__n2) #define __paste2(__p1,__p2) __p1##__p2 -#endif #include #include "WXmString.h" @@ -78,13 +69,8 @@ class WComposite; typedef void (* XtProc)(); #endif -#if defined(__linux__) || defined(CSRG_BASED) || defined(sun) #define CASTRNAM (char*) #define CASTVAL (void*)(size_t) -#else -#define CASTRNAM -#define CASTVAL -#endif #define DEFINE_GETTER(rsc,typ,rnam) \ inline typ rsc() const \ diff --git a/cde/programs/dtinfo/tools/misc/msgsets.C b/cde/programs/dtinfo/tools/misc/msgsets.C index 639fb839f..17b2dbfbf 100644 --- a/cde/programs/dtinfo/tools/misc/msgsets.C +++ b/cde/programs/dtinfo/tools/misc/msgsets.C @@ -42,11 +42,7 @@ #ifdef __cplusplus #include -#if !defined(__DECCXX) && !defined(__linux__) && !defined(CSRG_BASED) && !defined(sun) -#include -#else #include -#endif /* use prototypes in function declarations */ #define YY_USE_PROTOS diff --git a/cde/programs/dtksh/.gitignore b/cde/programs/dtksh/.gitignore index 8b374e56a..2b5f9fddf 100644 --- a/cde/programs/dtksh/.gitignore +++ b/cde/programs/dtksh/.gitignore @@ -47,6 +47,7 @@ ksh93/src/cmd/INIT/w.req ksh93/src/cmd/builtin/FEATURE/ ksh93/src/cmd/builtin/pty ksh93/src/cmd/ksh93/FEATURE/ +ksh93/src/cmd/ksh93/shopt.h ksh93/src/cmd/ksh93/ksh ksh93/src/cmd/ksh93/shcomp ksh93/src/cmd/ksh93/shell.req diff --git a/cde/programs/dtksh/Makefile.am b/cde/programs/dtksh/Makefile.am index cf61c3485..d76b8a20f 100644 --- a/cde/programs/dtksh/Makefile.am +++ b/cde/programs/dtksh/Makefile.am @@ -1,6 +1,6 @@ MAINTAINERCLEANFILES = Makefile.in -CLEANFILES = init.c FEATURE DtFuncs.dtsh +CLEANFILES = init.c DtFuncs.dtsh SUBDIRS = examples @@ -16,25 +16,28 @@ bin_PROGRAMS = dtksh BUILT_SOURCES = init.c +# Put all SHOPT definitions here. It is vital that dtksh and ksh93 +# are built with the same options. We pass this list to both the +# dtksh components and to the ksh93 build as well. They must be +# specifically assigned a 1 or various preprocessor checks (#if SHOPT +# ...) in ksh93 will fail. +KSH93_SHOPTS = -DSHOPT_DYNAMIC=1 -DSHOPT_NAMESPACE=1 -DSHOPT_MULTIBYTE=1 \ + -DSHOPT_STATS=1 -DSHOPT_BGX=1 -DSHOPT_AUDIT=1 \ + -DSHOPT_KIA=1 -DSHOPT_HISTEXPAND=1 -DSHOPT_EDPREDICT=1 \ + -DSHOPT_ESH=1 -DSHOPT_VSH=1 -DSHOPT_FIXEDARRAY=1 -DSHOPT_SUID_EXEC=1 \ + -DSHOPT_BRACEPAT=1 -DSHOPT_ECHOPRINT=1 + dtksh_CPPFLAGS = -I$(KSH93SRC)/include/ast -I$(KSH93SRC)/src/cmd/ksh93/include \ -I$(KSH93SRC)/src/cmd/ksh93 -I${srcdir}/lib/DtPrint \ - -I${srcdir}/lib/DtHelp '-DAST_VERSION=20111111' \ - -DSHOPT_STATS -DSHOPT_NAMESPACE -DSHOPT_2DMATCH \ - -DSHOPT_MULTIBYTE -DSHOPT_BGX -DSHOPT_AUDIT -D_PACKAGE_ast \ - -DSHOPT_DYNAMIC -D_BLD_shell -DSHOPT_KIA -DKSHELL \ - -DSHOPT_HISTEXPAND -DSHOPT_EDPREDICT -DSHOPT_ESH -DSHOPT_VSH \ - -DSHOPT_FIXEDARRAY '-DERROR_CONTEXT_T=Error_context_t' \ - -DSHOPT_SUID_EXEC -D_API_ast=20100309 -DSHOPT_BRACEPAT \ - -DBUILD_DTKSH + -I${srcdir}/lib/DtHelp $(KSH93_SHOPTS) \ + -D_PACKAGE_ast -DKSHELL \ + '-DERROR_CONTEXT_T=Error_context_t' \ + -D_API_ast=20100309 -DBUILD_DTKSH -dtksh_LDADD = $(DTCLIENTLIBS) pmain.o $(XTOOLLIB) \ +dtksh_LDADD = $(DTCLIENTLIBS) ksh93/src/cmd/ksh93/pmain.o $(XTOOLLIB) \ libshell.a $(KSH93SRC)/lib/libcmd.a $(KSH93SRC)/lib/libast.a \ $(KSH93SRC)/lib/libdll.a -if LINUX -dtksh_LDADD += -ldl -endif - if SOLARIS dtksh_LDADD += -lsecdb -lsocket -lnsl endif @@ -55,44 +58,19 @@ dtksh_SOURCES = init.c \ extra.c \ msgs.c -# for the BSD's we do not want to pass CFLAGS since it includes a -# -I/usr/local/incude directive. This breaks ksh's iconv -# detection due to the weird way in which iconv seems to be handled on -# the BSD's - both a libc impl (preferred), and a possibly external -# GNU iconv impl installed in /usr/local. -# -# /usr/local/include is added to CFLAGS by the X11/Motif detection -# logic - since that is where all of the needed headers are on the -# BSDs. -# -# So until/unless that is fixed in ksh93, we will avoid sending -# anything to the ksh build system except for SUIDEXECDEFINES - -if BSD -KSH93_CCFLAGS=$(SUIDEXECDEFINES) -else -KSH93_CCFLAGS=$(CFLAGS) $(SUIDEXECDEFINES) -endif - ksh93/bin/ksh: - ksh93/bin/package flat make CCFLAGS='$(KSH93_CCFLAGS)' + ksh93/bin/package flat make CCFLAGS='$(KSH93_SHOPTS)' init.c: ksh93/bin/ksh $(CP) ksh93/src/cmd/ksh93/sh/init.c ./ -pmain.o: ksh93/bin/ksh - $(CP) ksh93/src/cmd/ksh93/pmain.o ./ - -FEATURE: ksh93/bin/ksh - $(CP) -R ksh93/src/cmd/ksh93/FEATURE ./ - libshell.a: $(KSH93SLIBSHELL) dtksh-init.o $(CP) $(KSH93LIBSHELL) libshell.a; \ $(AR) d libshell.a init.o; \ $(AR) cq libshell.a dtksh-init.o check-local: - ./dtksh -c true && ksh93/bin/shtests --posix --utf8 SHELL=.libs/lt-dtksh + ./dtksh -c true && ksh93/bin/shtests --posix --utf8 SHELL=.libs/dtksh clean-local: ksh93/bin/package clean diff --git a/cde/programs/dtksh/dtkcmds.c b/cde/programs/dtksh/dtkcmds.c index 13b1c56f5..dd7b55c85 100644 --- a/cde/programs/dtksh/dtkcmds.c +++ b/cde/programs/dtksh/dtkcmds.c @@ -33,6 +33,8 @@ #include "name.h" #include "shell.h" +#undef access +#include #include #include #include @@ -71,8 +73,6 @@ #include "xmcmds.h" #include -extern Namval_t *sh_assignok(Namval_t *np,int add); - static void PendingDestroy( Widget w, @@ -7120,7 +7120,7 @@ GetNameValuePair( * As long as we clean up the original, I don't think we leak here. */ if(sh.subshell) - np2 = sh_assignok(np2, 1); + sh_assignok(np2, 1); } return(np2); } diff --git a/cde/programs/dtksh/dtkcvt.c b/cde/programs/dtksh/dtkcvt.c index 81064051e..9479ab3f4 100644 --- a/cde/programs/dtksh/dtkcvt.c +++ b/cde/programs/dtksh/dtkcvt.c @@ -33,6 +33,8 @@ /* X includes */ #include "shell.h" +#undef access +#include #include #include #include diff --git a/cde/programs/dtksh/ksh93/.github/workflows/ci.yml b/cde/programs/dtksh/ksh93/.github/workflows/ci.yml index c0d0217a4..aa9531b0d 100644 --- a/cde/programs/dtksh/ksh93/.github/workflows/ci.yml +++ b/cde/programs/dtksh/ksh93/.github/workflows/ci.yml @@ -19,13 +19,13 @@ jobs: export TZ=UTC ulimit -n 1024 : default regression tests && - script -q -e -c "bin/shtests" && + script -q -e -c "bin/package test" && : regression tests with OS-provided multibyte locales && LANG=nl_NL.UTF-8 script -q -e -c "bin/shtests --locale --nocompile" && LANG=ja_JP.SJIS script -q -e -c "bin/shtests --locale --nocompile" && : disable most SHOPTs, rebuild ksh && sed --regexp-extended --in-place=.orig \ - '/^SHOPT (2DMATCH|AUDIT|BGX|BRACEPAT|DEVFD|DYNAMIC|EDPREDICT|ESH|FIXEDARRAY|HISTEXPAND|MULTIBYTE|NAMESPACE|OPTIMIZE|STATS|SUID_EXEC|VSH)=/ s/=1?/=0/' \ + '/^SHOPT (AUDIT|BGX|BRACEPAT|DEVFD|DYNAMIC|EDPREDICT|ESH|FIXEDARRAY|HISTEXPAND|MULTIBYTE|NAMESPACE|OPTIMIZE|SPAWN|STATS|SUID_EXEC|VSH)=/ s/=1?/=0/' \ src/cmd/ksh93/SHOPT.sh && bin/package make && : default regression tests with SHOPTs disabled && diff --git a/cde/programs/dtksh/ksh93/.gitignore b/cde/programs/dtksh/ksh93/.gitignore index f68096577..39a9f47c1 100644 --- a/cde/programs/dtksh/ksh93/.gitignore +++ b/cde/programs/dtksh/ksh93/.gitignore @@ -4,6 +4,10 @@ tgz lcl # Flat make libs, binaries, etc +*.a +*.o +*.req +FEATURE/ /bin/.paths /bin/crossexec /bin/execrate @@ -11,8 +15,9 @@ lcl /bin/iffe /bin/ksh /bin/mamake -/bin/proto /bin/mktest +/bin/ok/ +/bin/proto /bin/pty /bin/regress /bin/rt @@ -20,11 +25,41 @@ lcl /bin/suid_exec /fun/ /include/ -/lib/file/ -/lib/*.a +/lib/ /man/ +/src/cmd/INIT/crossexec +/src/cmd/INIT/execrate +/src/cmd/INIT/filter +/src/cmd/INIT/iffe +/src/cmd/INIT/ignore +/src/cmd/INIT/mamake +/src/cmd/INIT/mamprobe +/src/cmd/INIT/mktest +/src/cmd/INIT/mprobe +/src/cmd/INIT/package +/src/cmd/INIT/probe +/src/cmd/INIT/probe.ini +/src/cmd/INIT/probe.sh +/src/cmd/INIT/regress +/src/cmd/INIT/rt +/src/cmd/INIT/silent +/src/cmd/builtin/pty +/src/cmd/ksh93/ksh +/src/cmd/ksh93/shcomp +/src/cmd/ksh93/suid_exec +/src/lib/libast/*.h +/src/lib/libast/astmath.exe +/src/lib/libast/conf +/src/lib/libast/conftab.c +/src/lib/libast/lcgen +/src/lib/libast/lctab.c +/src/lib/libast/t.c +/src/lib/libcmd/cmdext.h +/src/lib/libcmd/cmdlist.h +/src/lib/libdll/dlldefs.h # Miscellaneous artefacts +*.dSYM/ *.bak *.sav *.old diff --git a/cde/programs/dtksh/ksh93/ANNOUNCE b/cde/programs/dtksh/ksh93/ANNOUNCE index 332b8ad4e..0974c953a 100644 --- a/cde/programs/dtksh/ksh93/ANNOUNCE +++ b/cde/programs/dtksh/ksh93/ANNOUNCE @@ -1,33 +1,40 @@ -Announcing: KornShell 93u+m 1.0.0-beta.2 +Announcing: KornShell 93u+m/1.0.3 https://github.com/ksh93/ksh -In May 2020, when every KornShell (ksh93) development project was -abandoned, development was rebooted in a new fork based on the last -stable AT&T version: ksh 93u+. This new fork is called ksh 93u+m as a -permanent nod to its origin. We're restarting it at version 1.0. Seven -months after the first beta, the second one is ready. Please test this -second beta and report any bugs you find, or help us fix known bugs. +This is the third bugfix release in the ksh 93u+m/1.0 series. Many thanks to +all contributors for their hard work! Compared to an unpatched ksh 93u+ +2012-08-01, this release has roughly a thousand bugs fixed. It incorporates +a fair number of enhancements as well. -We're now the default ksh93 in some OS distributions, at least Debian -and Slackware! Even though we don't think it's stable release quality -yet, the consensus seems to be that 93u+m is already much better than -the last AT&T release. +### CONTRIBUTORS ### +Work on ksh 93u+m started in May 2020. Main developers: Martijn Dekker, Johnothan King, hyenias -Contributors: Andy Fiddaman, Anuradha Weeraman, Chase, Gordon Woodhull, -Govind Kamat, Harald van Dijk, Lev Kujawski, Marc Wilson, Ryan Schmidt, -Sterling Jensen +Direct contributors: Andy Fiddaman, Anuradha Weeraman, atheik, Chase, +Govind Kamat, Harald van Dijk, K. Eugene Carlson, Lev Kujawski, Marc +Wilson, Ryan Schmidt, Sterling Jensen, Trey Valenta, Vincent Mihalkovic -HOW TO GET IT +Also includes backported contributions by: David Korn, Glenn Fowler, +Lefteris Koutsofios, Siteshwar Vashisht, Kurtis Rader, Roland Mainz, +Finnbarr P. Murphy, Lijo George, OpenSUSE ksh 93u+ patch authors, Red Hat +ksh 93u+ path authors, Solaris ksh 93u+ patch authors, Debian ksh 93u+ +patch authors, Apple ksh 93u+ patch authors, Graphviz maintainers + +Many fixes have also been backported from the AT&T 93v- beta as well as +the former ksh2020 project lead by Kurtis Rader and Siteshwar Vashisht; +we appreciate and benefit from their work. Many thanks also to Siteshwar +for graciously donating his 'ksh93' GitHub organisation account! + +### HOW TO GET IT ### Please download the source code tarball from our GitHub releases page: - - https://github.com/ksh93/ksh/releases - +https://github.com/ksh93/ksh/releases To build, follow the instructions in README.md or src/cmd/ksh93/README. -HOW TO GET INVOLVED +Or ask your distribution package manager to upgrade ksh93 to this version. + +### HOW TO GET INVOLVED ### To report a bug, please open an issue at our GitHub page (see above). Alternatively, email me at martijn@inlv.org with your report. @@ -35,127 +42,44 @@ To get involved in development, read the brief policy information in README.md and then jump right in with a pull request or email a patch. See the TODO file in the top-level directory for a to-do list. -### MAIN CHANGES between 1.0.0-beta.2 and 1.0.0-(unreleased) ### +### MAIN CHANGES between ksh 93u+m 1.0.2 and 1.0.3 ### -New features in built-in commands: +This point release fixes the following: +- An old bug in history expansion (set -H) where any use of the history + comment character caused processing to be aborted as if it were an invalid + history expansion. +- A bug in command line options processing that caused short-form + option equivalents on some built-in commands to be ignored after one use, + e.g., the new read -a equivalent of read -A. +- Ksh freezing or using excessive memory if HISTSIZE is assigned a + pathologically large value. +- A bug that caused ksh in the vi editor mode to crash or produce invalid + completions if ESC = was used at the beginning of a line. -- Two bash-like flags for 'whence' were backported from ksh 93v-: - - 'whence -P/type -P' is an alias to the existing -p flag. - - 'whence -t/type -t' will print only the type of a command in a simple - format that is designed to be easy to use for scripts. Example: - $ type -t typeset; whence -t sh - builtin - file +### MAIN CHANGES between ksh 93u+m 1.0.1 and 1.0.2 ### -- Added three options to the ulimit builtin with the same names and - functionality as in Bash: - - 'ulimit -k' sets the maximum number of kqueues. - - 'ulimit -P' sets the maximum number of pseudo-terminals. - - 'ulimit -R' sets the maximum time in microseconds a real-time process - can run before blocking. - Note that to use these options the operating system must support the - corresponding resource limit. +This bugfix release fixes the interactive shell crashing when one of the +predefined aliases (currently 'history' and 'r') is redefined, whether from +a profile/kshrc script or manually. This crash occurred in two scenarios: +1. when redefining and then unsetting a predefined alias; +2. when redefining a predefined alias and then executing a shell script that + does not begin with a #! path. -### MAIN CHANGES between 1.0.0-beta.1 and 1.0.0-beta.2 ### +### MAIN CHANGES between ksh 93u+m 1.0.0 and 1.0.1 ### -New features in built-in commands: +This is an urgent bugfix release that removes an incorrect exec +optimization that was capable of terminating the execution of scripts +prematurely in certain corner cases. It is known to make the build scripts +of GNU binutils produce corrupted results if ksh is used as /bin/sh. +See https://github.com/ksh93/ksh/issues/507 for more information. -- 'cd' now supports an -e option that, when combined with -P, verifies - that $PWD is correct after changing directories; this helps detect - access permission problems. See: - https://www.austingroupbugs.net/view.php?id=253 +### MAIN CHANGES between ksh 93u+ 2012-08-01 and 93u+m/1.0.0 ### -- 'printf' now supports a -v option as in bash. This assigns formatted - output directly to variables, which is very fast and will not strip - final newline (\n) characters. - -- The 'return' command, when used to return from a function, can now - return any status value in the 32-bit signed integer range, like on - zsh. However, due to a traditional Unix kernel limitation, $? is - still trimmed to its least significant 8 bits whenever leaving a - (sub)shell environment. - -- 'test'/'[' now supports all the same operators as [[ (including =~, - \<, \>) except for the different 'and'/'or' operators. Note that - 'test'/'[' remains deprecated due to its unfixable pitfalls; - [[ ... ]] is recommended instead. - -Shell language changes: - -- Several improvements were made to the --noexec shell code linter. - -- Arithmetic expressions in native ksh mode no longer interpret a - number with a leading zero as octal in any context. Use 8#octalnumber - instead (e.g. 8#400 == 256). Arithmetic expressions now also behave - identically within and outside ((...)) and $((...)). - -- POSIX compatibility mode fixes (only applicable with the --posix shell - option on): - - A leading zero is now consistently recognised as introducing an octal - number in all arithmetic contexts. - - $((inf)) and $((nan)) are now interpreted as regular variables. - - The '.' built-in no longer runs ksh functions and now only runs - files. - -Bugs fixed: - -- '.' and '..' are now once again completed by tab completion. - -- If SIGINT is set to ignore, the interactive shell no longer exits on - Ctrl+C. - -- ksh now builds and runs on Apple's new M1 hardware. - -- The 'return' and 'exit' commands no longer risk triggering actual - signals by returning or exiting with a status > 256. - -- Ksh no longer behaves badly when parsing a type definition command - ('typeset -T' or 'enum') without executing it or when executing it in - a subshell. Types can now safely be defined in subshells and defined - conditionally as in 'if condition; then enum ...; fi'. - -- Discipline functions, especially those applied to PS2 or .sh.tilde, - will no longer crash your shell upon being interrupted or throwing an - error. - -- Fixed a bug that could corrupt output if standard output is closed - upon initialising the shell. - -- Fixed a bug in the [[ ... ]] compound command: the '!' logical - negation operator now correctly negates another '!', e.g., - [[ ! ! 1 -eq 1 ]] now returns 0/true. Note that this has always been - the case for 'test'/'['. - -- Fixed SHLVL so that replacing ksh by itself (exec ksh) will not - increase it. - -- Arithmetic expressions are no longer allowed to assign out-of-range - values to variables of types declared with enum. - -- The 'time' keyword no longer makes the --errexit shell option - ineffective. - -- Various bugs in libcmd built-in commands (those bound to the - /opt/ast/bin path by default) have been fixed. - -- Various other crashing bugs have been fixed. - -Fixes for the shcomp byte code compiler: - -- shcomp is now able to compile scripts that define types using enum. - -- shcomp now refuses to mess up your terminal by writing bytecode - to it. - -### MAIN CHANGES between ksh 93u+ 2012-08-01 and 93u+m 1.0.0-beta.1 ### - -Hundreds of bugs have been fixed, including many serious/critical bugs. -This includes upstreamed patches from OpenSUSE, Red Hat, and Solaris, fixes -backported from the abandoned 93v- beta and ksh2020 fork, as well as many -new fixes from the community. See the NEWS file for more information, and -the git commit log for complete documentation of every fix. Incompatible -changes have been minimised, but not at the expense of fixing bugs. For a -list of potentially incompatible changes, see src/cmd/ksh93/COMPATIBILITY. +Roughly a thousand bugs have been fixed, including many serious/critical +bugs. See the NEWS file for more information, and the git commit log for +complete documentation of every fix. Incompatible changes have been +minimised, but not at the expense of fixing bugs. For a list of +potentially incompatible changes, see src/cmd/ksh93/COMPATIBILITY. Though there was a "no new features, bugfixes only" policy, some new features were found necessary, either to fix serious design flaws or to @@ -167,28 +91,30 @@ New command line editor features: - The forward-delete and End keys are now handled as expected in the emacs and vi built-in line editors. -- In the vi and emacs line editors, repeat count parameters can now also - be used for the arrow keys and the forward-delete key. E.g., in emacs - mode, 7 will now move the cursor seven positions to - the left. In vi control mode, this would be entered as: 7 . +- In the vi and emacs line editors, repeat counts can now also be used for + arrow keys and the forward-delete key, e.g., 7 works. + +- Various keys on extended PC keyboards are now handled as expected in the + emacs and vi built-in line editors. New shell language features: -- The &>file redirection shorthand (for >file 2>&1) is now available for - all scripts and interactive sessions and not only for profile/login - scripts, bringing ksh 93u+m in line with mksh, bash, and zsh. +- Pathname expansion (a.k.a. globbing) now never matches the special names + '.' (current directory) and '..' (parent directory). This change makes a + pattern like .* useful; it now matches all hidden files (dotfiles) in the + current directory, without the harmful inclusion of '.' and '..'. -- File name generation (a.k.a. pathname expansion, a.k.a. globbing) now - never matches the special navigational names '.' (current directory) - and '..' (parent directory). This change makes a pattern like .* - useful; it now matches all hidden files (dotfiles) in the current - directory, without the harmful inclusion of '.' and '..'. +- Tilde expansion can now be extended or modified by defining a .sh.tilde.get + or .sh.tilde.set discipline function. See the manual for details. -- Tilde expansion can now be extended or modified by defining a - .sh.tilde.get or .sh.tilde.set discipline function. This replaces a - 2004 undocumented attempt to add this functionality via a .sh.tilde - command, which never worked and crashed the shell. See the manual for - details on the new method. +- The &>file redirection shorthand (for >file 2>&1) is now available for all + scripts and interactive sessions and not only for profile/login scripts. + +- Arithmetic expressions in native ksh mode no longer interpret a number + with a leading zero as octal in any context. Use 8#octalnumber instead + (e.g. 8#400 == 256). Arithmetic expressions now also behave identically + within and outside ((...)) and $((...)). If the POSIX mode is turned on, + a leading zero now denotes an octal number in all arithmetic contexts. New features in built-in commands: @@ -199,51 +125,97 @@ New features in built-in commands: $ /opt/ast/bin/cat --version version cat (AT&T Research) 2012-05-31 +- 'cd' now supports an -e option that, when combined with -P, verifies + that $PWD is correct after changing directories; this helps detect + access permission problems. See: + https://www.austingroupbugs.net/view.php?id=253 + - 'command -x' now looks for external commands only, skipping built-ins. In addition, its xargs-like functionality no longer freezes the shell on Linux and macOS, making it effectively a new feature on these systems. +- 'printf' now supports a -v option as in bash. This assigns formatted + output directly to variables, which is very fast and will not strip + final newline (\n) characters. + - 'redirect' now checks if all arguments are valid redirections before performing them. If an error occurs, it issues an error message instead of terminating the shell. +- 'return', when used to return from a function, can now return any + status value in the 32-bit signed integer range, like on zsh. However, + due to a traditional Unix kernel limitation, $? is still trimmed to its + least significant 8 bits whenever a shell or subshell exits. + - 'suspend' now refuses to suspend a login shell, as there is probably no parent shell to return to and the login session would freeze. +- 'test'/'[' now supports all the same operators as [[ (including =~, + \<, \>) except for the different 'and'/'or' operators. Note that + 'test'/'[' remains deprecated due to its unfixable pitfalls; + [[ ... ]] is recommended instead. + - 'times' now gives high precision output in a POSIX compliant format. +- 'type'/'whence': Two bash-like flags were backported from ksh 93v-: + - 'whence -P/type -P' is an alias to the existing -p flag. + - 'whence -t/type -t' will print only the type of a command in a + simple format that is designed to be easy to use for scripts. + +- 'typeset' has a new '-g' flag that forces variables to be created or + modified at the global scope regardless of context, as on bash 4.2+. + - 'typeset' now gives an informative error message if an incompatible combination of options is given. +- 'ulimit': Added three options inspired by bash: + - 'ulimit -k' sets the maximum number of kqueues. + - 'ulimit -P' sets the maximum number of pseudo-terminals. + - 'ulimit -R' sets the maximum time in microseconds a real-time process + can run before blocking. + Note that not all operating systems support the limits set by these options. + - 'whence -v/-a' now reports the location of autoloadable functions. New features in shell options: -- A new --globcasedetect shell option is added on OSs where we can - check for a case-insensitive file system (currently Windows/Cygwin, - macOS, Linux and QNX 7.0+). When this option is turned on, file name - generation (globbing), as well as file name tab completion on - interactive shells, automatically become case-insensitive on file - systems where the difference between upper and lower case is ignored - for file names. This is transparently determined for each directory, so - a path pattern that spans multiple file systems can be part - case-sensitive and part case-insensitive. +- When the -b/--notify shell option is on and the vi or emacs/gmacs shell + line editor is in use, 'Done' and similar notifications from completed + background jobs are now inserted directly above the line you're typing, + without affecting your command line display. -- A new --nobackslashctrl shell option disables the special escaping - behaviour of the backslash character in the emacs and vi built-in - editors. Particularly in the emacs editor, this makes it much easier to - go backward, insert a forgotten backslash into a command, and then - continue editing without having your next cursor key replace your - backslash with garbage. Note that Ctrl+V (or whatever other character - was set using 'stty lnext') always escapes all control characters in - either editing mode. +- A new --functrace long-form shell option causes the -x/--xtrace option's + state and the DEBUG trap action to be inherited by function scopes instead + of being reset to default. Changes made to them within a function scope + still do not propagate back to the parent scope. Similarly, this option + also causes the DEBUG trap action to be inherited by subshells. -- A new --posix shell option has been added to ksh 93u+m that makes the - ksh language more compatible with other shells by following the POSIX - standard more closely. See the manual page for details. It is enabled by - default if ksh is invoked as sh, otherwise it is disabled by default. +- A new --globcasedetect shell option is added on operating systems where + we can check for a case-insensitive file system (currently Linux, macOS, + QNX 7.0+, and Windows/Cygwin). When this option is turned on, pathname + expansion (globbing), as well as tab completion on interactive shells, + automatically become case-insensitive depending on the file system. + This is separately determined for each pathname component. - Enhancement to -G/--globstar: symbolic links to directories are now followed if they match a normal (non-**) glob pattern. For example, if '/lnk' is a symlink to a directory, '/lnk/**' and '/l?k/**' now work as you would expect. + +- The new --histreedit and --histverify options modify history expansion + (--histexpand). If --histreedit is on and a history expansion fails, the + command line is reloaded into the next prompt's edit buffer, allowing + corrections. If --histverify is on, the results of a history expansion are + not immediately executed but instead loaded into the next prompt's edit + buffer, allowing further changes. + +- A new --nobackslashctrl shell option disables the special escaping + behaviour of the backslash character in the emacs and vi built-in editors. + Particularly in the emacs editor, this makes it much easier to go back, + insert a forgotten backslash into a command, and then continue editing + without having your next arrow key replace your backslash with garbage. + +- A new --posix shell option has been added to ksh 93u+m that makes the + ksh language more compatible with other shells by following the POSIX + standard more closely. See the manual page for details. It is enabled by + default if ksh is invoked as sh, otherwise it is disabled by default. diff --git a/cde/programs/dtksh/ksh93/COPYRIGHT b/cde/programs/dtksh/ksh93/COPYRIGHT index 72982159b..f1279c100 100644 --- a/cde/programs/dtksh/ksh93/COPYRIGHT +++ b/cde/programs/dtksh/ksh93/COPYRIGHT @@ -3,26 +3,50 @@ ksh 93u+m general copyright notice ######################################################################## # # # The KornShell 93u+m distribution # -# Copyright (c) 2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # # # Derived from AT&T's ast package (see below) # -# Licensed under the Eclipse Public License, Version 1.0 # +# Licensed under the Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # CONTRIBUTORS # # # -# Martijn Dekker # -# Johnothan King # -# hyenias <58673227+hyenias@users.noreply.github.com> # -# Anuradha Weeraman # +# Martijn Dekker # +# Johnothan King # +# hyenias <58673227+hyenias@users.noreply.github.com> # +# Anuradha Weeraman # +# Lev Kujawski # +# atheik <14833674+atheik@users.noreply.github.com> # +# K. Eugene Carlson # +# Ryan Schmidt # # Chase # -# Govind Kamat # -# Harald van Dijk # -# Lev Kujawski # +# Vincent Mihalkovic # +# Trey Valenta # +# Sterling Jensen <5555776+sterlingjensen@users.noreply.github.com> # # Marc Wilson # +# Harald van Dijk # +# Govind Kamat # +# Andy Fiddaman # +# # +# ALSO INCLUDES BACKPORTED CONTRIBUTIONS BY # +# # +# David Korn # +# Glenn Fowler # +# Lefteris Koutsofios # +# Siteshwar Vashisht # +# Kurtis Rader # +# Roland Mainz # +# Finnbarr P. Murphy # +# Lijo George # +# OpenSUSE ksh 93u+ patch authors # +# Red Hat ksh 93u+ path authors # +# Solaris ksh 93u+ patch authors # +# Debian ksh 93u+ patch authors # +# Apple ksh 93u+ patch authors # +# Graphviz maintainers (libast, sfio) # # # ######################################################################## @@ -49,6 +73,8 @@ ast package general copyright notice # Glenn Fowler # # David Korn # # Phong Vo # +# Roland Mainz # +# Karsten Fleischer # # Adam Edgar # # Adam Buchsbaum # # Aman Shaikh # @@ -63,7 +89,7 @@ ast package general copyright notice # Jeff Korn <@google.com> # # Kathleen Fisher # # Ken Church <@microsoft.com> # -# Brian Kernigham # +# Brian Kernighan # # Dennis Ritchie # # Doug McIlroy # # Eduardo Krell # @@ -81,38 +107,6 @@ bsd package general copyright notice # This software is part of the BSD package # # Copyright (c) 1979-2012 The Regents of the University of California # # # -# Redistribution and use in source and binary forms, with or # -# without modification, are permitted provided that the following # -# conditions are met: # -# # -# 1. Redistributions of source code must retain the above # -# copyright notice, this list of conditions and the # -# following disclaimer. # -# # -# 2. Redistributions in binary form must reproduce the above # -# copyright notice, this list of conditions and the # -# following disclaimer in the documentation and/or other # -# materials provided with the distribution. # -# # -# 3. Neither the name of The Regents of the University of California# -# names of its contributors may be used to endorse or # -# promote products derived from this software without # -# specific prior written permission. # -# # -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND # -# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, # -# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # -# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS # -# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, # -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # -# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON # -# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, # -# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # -# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # -# POSSIBILITY OF SUCH DAMAGE. # -# # # Redistribution and use in source and binary forms, with or without # # modification, are permitted provided that the following conditions # # are met: # diff --git a/cde/programs/dtksh/ksh93/LICENSE.md b/cde/programs/dtksh/ksh93/LICENSE.md index b0e51e253..62a17dab2 100644 --- a/cde/programs/dtksh/ksh93/LICENSE.md +++ b/cde/programs/dtksh/ksh93/LICENSE.md @@ -1,4 +1,4 @@ -## Eclipse Public License - v 1.0 +## Eclipse Public License - v 2.0 THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. @@ -6,59 +6,63 @@ THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICE "Contribution" means: -a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and +a) in the case of the initial Contributor, the initial content Distributed under this Agreement, and b) in the case of each subsequent Contributor: +* i) changes to the Program, and +* ii) additions to the Program; -i) changes to the Program, and +where such changes and/or additions to the Program originate from and are Distributed by that particular Contributor. A Contribution "originates" from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include changes or additions to the Program that are not Modified Works. -ii) additions to the Program; - -where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. - -"Contributor" means any person or entity that distributes the Program. +"Contributor" means any person or entity that Distributes the Program. "Licensed Patents" mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. -"Program" means the Contributions distributed in accordance with this Agreement. +"Program" means the Contributions Distributed in accordance with this Agreement. -"Recipient" means anyone who receives the Program under this Agreement, including all Contributors. +"Recipient" means anyone who receives the Program under this Agreement or any Secondary License (as applicable), including Contributors. + +"Derivative Works" shall mean any work, whether in Source Code or other form, that is based on (or derived from) the Program and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. + +"Modified Works" shall mean any work in Source Code or other form that results from an addition to, deletion from, or modification of the contents of the Program, including, for purposes of clarity any new file in Source Code form that contains any contents of the Program. Modified Works shall not include works that contain only declarations, interfaces, types, classes, structures, or files of the Program solely in each case in order to link to, bind by name, or subclass the Program or Modified Works thereof. + +"Distribute" means the acts of a) distributing or b) making available in any manner that enables the transfer of a copy. + +"Source Code" means the form of a Program preferred for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Secondary License" means either the GNU General Public License, Version 2.0, or any later versions of that license, including any exceptions or additional permissions as identified by the initial Contributor. ### 2. GRANT OF RIGHTS -a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. +a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, Distribute and sublicense the Contribution of such Contributor, if any, and such Derivative Works. -b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. +b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in Source Code or other form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. -c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. +c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to Distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. +e) Notwithstanding the terms of any Secondary License, no Contributor makes additional grants to any Recipient (other than those set forth in this Agreement) as a result of such Recipient's receipt of the Program under the terms of a Secondary License (if permitted under the terms of Section 3). + ### 3. REQUIREMENTS -A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that: +3.1 If a Contributor Distributes the Program in any form, then: -a) it complies with the terms and conditions of this Agreement; and +a) the Program must also be made available as Source Code, in accordance with section 3.2, and the Contributor must accompany the Program with a statement that the Source Code for the Program is available under this Agreement, and informs Recipients how to obtain it in a reasonable manner on or through a medium customarily used for software exchange; and -b) its license agreement: +b) the Contributor may Distribute the Program under a license different than this Agreement, provided that such license: +* i) effectively disclaims on behalf of all other Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; +* ii) effectively excludes on behalf of all other Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; +* iii) does not attempt to limit or alter the recipients' rights in the Source Code under section 3.2; and +* iv) requires any subsequent distribution of the Program by any party to be under a license that satisfies the requirements of this section 3. -i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; +3.2 When the Program is Distributed as Source Code: -ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; - -iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and - -iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. - -When the Program is made available in source code form: - -a) it must be made available under this Agreement; and +a) it must be made available under this Agreement, or if the Program (i) is combined with other material in a separate file or files made available under a Secondary License, and (ii) the initial Contributor attached to the Source Code the notice described in Exhibit A of this Agreement, then the Program may be made available under the terms of such Secondary Licenses, and b) a copy of this Agreement must be included with each copy of the Program. -Contributors may not remove or alter any copyright notices contained within the Program. - -Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. +3.3 Contributors may not remove or alter any copyright, patent, trademark, attribution notices, disclaimers of warranty, or limitations of liability ('notices') contained within the Program from any copy of the Program which they Distribute, provided that Contributors may add their own appropriate notices. ### 4. COMMERCIAL DISTRIBUTION @@ -68,11 +72,11 @@ For example, a Contributor might include the Program in a commercial product off ### 5. NO WARRANTY -EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement , including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. ### 6. DISCLAIMER OF LIABILITY -EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ### 7. GENERAL @@ -82,6 +86,16 @@ If Recipient institutes patent litigation against any entity (including a cross- All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. -Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. +Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be Distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to Distribute the Program (including its Contributions) under the new version. -This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. +Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. Nothing in this Agreement is intended to be enforceable by any entity that is not a Contributor or Recipient. No third-party beneficiary rights are created under this Agreement. + +### Exhibit A – Form of Secondary Licenses Notice + +"This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), version(s), and exceptions or additional permissions here}." + +> Simply including a copy of this Agreement, including this Exhibit A is not sufficient to license the Source Code under Secondary Licenses. +> +> If it is not possible or desirable to put the notice in a particular file, then You may include the notice in a location (such as a LICENSE file in a relevant directory) where a recipient would be likely to look for such a notice. +> +> You may add additional accurate notices of copyright ownership. diff --git a/cde/programs/dtksh/ksh93/NEWS b/cde/programs/dtksh/ksh93/NEWS index 1ee13ee67..229fd48a8 100644 --- a/cde/programs/dtksh/ksh93/NEWS +++ b/cde/programs/dtksh/ksh93/NEWS @@ -1,7 +1,539 @@ -This documents significant changes in the 93u+m branch of AT&T ksh93. -For full details, see the git log at: https://github.com/ksh93/ksh +This documents significant changes in the 1.0 branch of ksh 93u+m. +For full details, see the git log at: https://github.com/ksh93/ksh/tree/1.0 +Uppercase BUG_* IDs are shell bug IDs as used by the Modernish shell library. -Any uppercase BUG_* names are modernish shell bug IDs. +2022-08-25: + +- Release 1.0.3. + +- In the vi line editor, a bug was fixed that caused erratic behaviour after + using the 0 or ^ commands when already at the beginning of the command line. + +2022-08-24: + +- Fixed a bug that caused ksh in the vi editor mode to crash or produce + invalid completions if ESC = was used at the beginning of a line. Both + tab and = completions are now disabled at the start of the command line. + +- Fixed ksh freezing or using excessive memory if HISTSIZE is assigned a + pathologically large value. A new bounds check makes the theoretical + maximum number of history lines equal to the number of bytes kept in the + history file at cleanup time. On 64-bit systems, that maximum is 16384. + +2022-08-20: + +- Fixed a bug in command line options processing that caused short-form + option equivalents on some built-in commands to be ignored after one use, + e.g., the new read -a equivalent of read -A (introduced on 2022-02-16). + +- Fixed a bug in the /opt/ast/bin/cp built-in command that caused the -r and + -R options to sometimes ignore -P, -L and -H. Additionally, the -r and -R + options no longer follow symlinks by default. + +2022-08-16: + +- Fixed an old bug in history expansion (set -H) where any use of the history + comment character caused processing to be aborted as if it were an invalid + history expansion. (On 2022-01-24 the history comment character was set to + '#' instead of being disabled by default, which exposed this bug.) + +- Fixed a bug introduced on 2022-02-12 that would cause the optional head + builtin's -s option to fail. + +2022-08-08: + +- Release 1.0.2. + +2022-08-06: + +- Fixed an interactive shell crashing on redefining, then unsetting one of + the predefined aliases. + +- Fixed an interactive shell crashing on redefining one of the predefined + aliases, then executing a shell script that does not start with a #! path. + +2022-08-05: + +- Reverted a buggy exec optimisation introduced on 2022-06-18. It is known + to make the build scripts of GNU binutils produce corrupted results. + +- Release 1.0.1. + +2022-08-01: + _ _ ___ _____ ___ ___ ___ + | | _____| |__ / _ \___ / _ _ _ _ __ ___ / / | / _ \ / _ \ + | |/ / __| '_ \ | (_) ||_ \| | | |_| |_| '_ ` _ \ / /| || | | | | | | + | <\__ \ | | | \__, |__) | |_| |_ _| | | | | |/ / | || |_| | |_| | + |_|\_\___/_| |_| /_/____/ \__,_| |_| |_| |_| |_/_/ |_(_)___(_)___/ + +- Exactly ten years after ksh 93u+ 2012-08-01, we now have a new ksh release. + Many thanks to all the direct and indirect contributors for their hard work! + +2022-07-28: + +- Fixed BUG_IFSGLOBS ("$*" does pattern matching if the first character of + $IFS is a wildcard). + +2022-07-27: + +- Fixed a bug introduced on 2022-02-08 where $PPID was incorrect when a script + without a #! path was executed. + +- Fixed a completion bug in the vi line editor. It now correctly completes + the sole member of a directory when tab is pressed immediately after /. + Thanks to K. Eugene Carlson for the report and the fix. + +2022-07-26: + +- Fixed incorrect handling of initial zeros in test/[ and [[ arithmetic + comparison operators. For example, [[ 0x0A -eq 10 ]] yielded false but + [[ 1+0x0A -eq 11 ]] yielded true. + +- Fixed comparing long floating point (typeset -lF) values in test/[ and [[; + the values were reduced to standard floating point before comparing. + +2022-07-25: + +- Release candidate: ksh 93u+m/1.0.0-rc.1. + +2722-07-24: + +- Add new 'man' function in src/cmd/ksh93/fun/man. This integrates the --man + self-documentation of ksh built-in and external AST commands with your + system's 'man' command so you can conveniently use 'man' for all commands, + whether built-in or external. To use this, put the file in a directory in + your $FPATH and then issue 'autoload man' in your .kshrc to override the + system's man(1) command. See the file for details. + +- Add new 'autocd' function in src/cmd/ksh93/fun/autocd. This activates a + feature like 'shopt -s autocd' in bash: type only a directory name to change. + See the file for details. Add this file to a directory in your $FPATH to use. + +- New feature to make 'set -b'/'set -o notify' more usable. When that option + is on (and either the vi or emacs/gmacs line editor is in use), 'Done' and + similar notifications from completed background jobs no longer mess up the + command line you're typing. Instead, the notification is inserted directly + above the line you're typing, without affecting your command line display. + +- Fixed a bug that caused the -b/--notify option to only notify on one job if + more than one background job completed at the same time. + +- Fixed a bug in the 'command -x' feature introduced on 2021-01-30; it is meant + to always run an external command, but failed to bypass path-bound builtins. + +2022-07-21: + +- Fixed a bug where a reproducible $RANDOM sequence (after assigning a + specific value to $RANDOM) was influenced by running any external command. + +- When an error occurs in a POSIX name() function or a dot script, the + function or script name is now reported in the error message. + +2022-07-14: + +- Fixed a bug that caused a spurious "Done" message on the interactive shell + when an external command was run as a foreground job from a SIGINT trap. + +2022-07-12: + +- The .sh.level variable can now only be changed within a DEBUG trap. When + trap execution ends, the variable and the scope are now restored. These + changes disallow an inconsistent shell scoping state causing instability. + +2022-07-10: + +- Fixed a potential crash on retrieving an empty line from the command history. + +- Fixed a potential crash in the lexical analyser on processing single-byte + characters with the highest bit set. + +2022-07-09: + +- Fixed a bug that broke '[[ ... ]]' test expressions for the command + following a syntax error in an associative array assignment. + +2022-07-05: + +- Fixed a spurious syntax error on encountering a process substitution + following a redirection without being an argument to a redirection. + For example, this now writes 'OK' to standard error: cat >&2 <(echo OK) + +- Fixed the detection of a syntax error in compound assignments to + associative arrays. + +2022-07-02: + +- Fixed a bug where, if the last command in a subshell was an external + command that was terminated by a signal, the exit status ($?) of the + subshell did not reflect this by adding 256 to the signal number. + +- Fixed a bug that caused signal traps to be ignored if the shell was + signalled from a subshell that is the last command in the script. + +2022-07-01: + +- In scripts, $COLUMNS and $LINES are now kept up to date in scripts at + initialization and when the window size changes (previously, this + required setting a dummy trap for the SIGWINCH signal in the script). + +2022-06-28: + +- Fixed a bug that caused the <#((num)) or >#((num)) arithmetic seek + redirection operator to fail if used with file descriptor 0, 1 or 2 + connected to a block device. + +2022-06-22: + +- Fixed: 'echo' failed when used inside a command substitution that + is inside a nested compound assignment. + +- Fixed a crash in KEYBD trap handling introduced on 2021-11-29. + +2022-06-20: + +- Fixed a race condition that could cause redirections to fail with a + "cannot create" or "cannot open" error while processing a signal trap. + +2022-06-18: + +- Fixed a bug where, with the monitor or pipefail option on, the shell + failed to wait for all component commands in a pipeline to terminate if + the last component command was an external command and the pipeline was + the last command in a background subshell. + +- When any trap except DEBUG, KILL or STOP is set to a non-empty command, + the last command in a script or forked subshell will no longer avoid forking + before executing; this optimization incorrectly bypassed the traps. + +2022-06-15: + +- Fixed a bug where converting an indexed array into an associative array in + a subshell failed, resulting in an empty associative array. + +2022-06-13: + +- Trapping a signal that is not a pseudosignal will now cause a virtual + subshell to fork into a real one. This ensures a persistent PID where + other processes can signal the subshell (the PID of a virtual subshell may + change as other commands cause it to fork), and fixes a bug where a signal + could not be correctly or effectively trapped in a subshell if the same + signal was also trapped in the main shell environment. + +2022-06-12: + +- The POSIX mode now disables zero-padding of seconds in 'time'/'times' output. + +2022-06-09: + +- The POSIX mode has been amended to use a UNIX pipe(2) instead of a + socketpair(2) to connect commands in a pipeline, as the standard requires. + (When reading directly from a pipeline in posix mode, the <#pattern and + <##pattern redirection operators will not work and the -n option to the + read built-in will not return early when reading from a slow device.) + +- An interactive shell initialized in POSIX mode now once again has the + preset aliases defined. This amends a change made on 2020-09-11. + +- If a long-form shell option name is abbreviated so it matches multiple + options, the error message from ksh or 'set' now reads "ambiguous option". + +2022-06-08: + +- If -B/--braceexpand is turned on in --posix mode, it now only allows brace + expansion on literal strings and not on the values of unquoted expansions. + This behaviour is like bash and zsh, as well as compliant with a future + version of the POSIX standard that may specify brace expansion: + https://www.austingroupbugs.net/view.php?id=1193 + +2022-06-07: + +- Fixed a bug in 'typeset' where compound variables could acquire a spurious + -x (export) attribute when printing their values, triggering other bugs. + +2022-06-05: + +- Fixed a bug where tab completion would spuriously execute a command + substitution after entering: '`something or generate a spurious + 'end of file unexpected' syntax error after entering: '$(something. + +- Fixed bug where tab completion stopped working for arguments following a + quoted string with an escaped backslash in the form $'foo\'bar'. + +2022-06-04: + +- Added a new --functrace long-form shell option which causes the -x/--xtrace + option's state and the DEBUG trap action to be inherited by function scopes + instead of being reset to default. Changes made to them within a function + scope still do not propagate back to the parent scope. Similarly, this + option also causes the DEBUG trap action to be inherited by subshells. + +2022-06-03: + +- Fixed a couple of bugs that caused floating point variables imported from + a parent ksh through the environment to be corrupted. + +- Fixed a bug where invocation-local assignments preceding a built-in or + external command or function call did not honour their pre-existing + attributes set by typeset (such as -i or -F) in certain cases. + +2022-06-01: + +- New 'typeset' feature inspired by bash (and zsh and mksh): the -g flag + causes the specified variable(s) to be created globally, ignoring the + local scope of ksh functions or name spaces. For example, this allows + creating a global array or numeric variable from a ksh function. + Thanks to @ormaaj for the feature suggestion and to @hyenias for testing. + +2022-05-29: + +- Fixed a bug causing an inconsistent state after a special built-in command + threw an error within a namespace. + +2022-05-27: + +- Fixed a bug introduced on 2022-03-05 where 'set --default', while turning + off the --posix option, did not re-enable the special handling of a repeated + $IFS whitespace character as non-whitespace. + +2022-05-25: + +- Fixed a bug introduced on 2021-02-20 that caused incorrect output for + typeset -L/-R/-Z when the variable contained leading or trailing spaces. + Thanks to George Lijo for the report and the fix. + +2022-05-21: + +- Fixed a bug, present since the beginning of ksh93, that broke backslash line + continuation within $(standard) and ${ shared-state; } command substitutions. + Thanks to atheik for the analysis and the fix. (BUG_CSUBLNCONT) + +2022-05-20: + +- Fixed an ancient bug that caused a spurious syntax error when using double + quotes within a `backtick` command substitution within double quotes. + Thanks to atheik for the analysis and the fix. (BUG_CSUBBTQUOT) + +2022-03-10: + +- Fixed another corner case bug in the 'test'/'[' command. + +- A memory leak was fixed in the --man self-documentation options + of built-in commands. + +2022-03-05: + +- The 'enum' command can now create more than one type per invocation. + +- The POSIX compatibility mode has been amended to disable the special handling + of a repeated $IFS whitespace character as non-whitespace. + +2022-02-23: + +- When reading input from the keyboard, ksh now turns off nonblocking I/O + mode for standard input if a previously ran program left it on, so that + interactive programs that expect it to be off work properly. + +- Fixed a regression introduced on 2022-02-02 that caused interactive shells + to enter an infinite loop when a command failed to execute on Linux + systems with version 2.35 of glibc. + +- Fixed a SIGTTOU lockup that could cause ksh to freeze under strace(1) after + a command failed to execute in an interactive shell. + +2022-02-18: + +- Fixed a regression introduced on 2021-04-11 that caused the += operator in + invocation-local assignments to crash the shell or modify variables outside + of the invocation-local scope. + +2022-02-17: + +- Fixed a crash, introduced on 2021-01-19, that occurred when using 'cd' in + a subshell with the PWD variable unset. + +- Fixed a crash that could occur when or after entering the suspend character + (Ctrl+Z) while the shell was blocked trying to write to a FIFO special file. + +2022-02-16: + +- Backported minor additions to the 'read' built-in command from ksh 93v-: + '-a' is now the same as '-A' and '-u p' is the same as '-p'. This is for + compatibility with some 93v- or ksh2020 scripts. (Note that their change + to the '-p' option to support both prompts and coprocess reads was not + backported because we found it to be broken and unfixable.) + +2022-02-15: + +- A bug was fixed in fast filescan loops (like 'while &- or <&- redirection could persist past a + subshell in certain corner cases involving 'exec' or 'redirect'. + +2022-02-08: + +- Multiple bugs were fixed in the method that ksh uses to execute a shell + script without a #! path. Among other things, custom types and other + changes in built-in commands will no longer affect the invoked script. + The state of the 'posix' option is now inherited by the script. + +- To avoid an inconsistent state, the 'enum' and 'typeset -T' commands are + no longer allowed to replace special built-in commands. For instance, + 'enum trap=(a b c)' is now an error because 'trap' is a special built-in. + The ability of 'typeset -T' to redefine a type is not affected. + +- A command like 'typeset -T foo_t' without any assignment no longer creates + an incompletely defined 'foo_t' built-in command that will crash the shell + when used. Instead, it is now silently ignored for backwards compatibility. + +- Compound arrays belonging to a type created with 'typeset -T' now have + their -C attribute preserved in the output of 'typeset -p'. + +- A bug has been fixed in which the 'typeset -p' output of a two-dimensional + sparse indexed array would cause the second subscript to be treated as an + associative array when read back in by the shell. Elements that are sparse + indexed arrays are now prefixed with "typeset -a". + +- The rewritten .sh.match code from ksh93v- has been backported to ksh93u+m, + fixing many bugs and improving performance by a considerable amount. + +2022-02-05: + +- Fixed: for indexed arrays, given an unset array member a[i] with i > 0, + ${a[i]=value} failed to assign the value and ${v[i]?error} failed to throw + an error. + +- Fixed: the -a/--allexport shell option incorrectly exported some variables + with names containing a dot to the environment. Note that the '-x' typeset + attribute may still be set for them, but this will now not have any + effect. Variables created in namespaces declared with the 'namespace' + keyword are only exported while their namespace is active. + +2022-02-04: + +- Fixed a bug in 'typeset -p': for an indexed array variable that is set + but empty, it will no longer output a nonexistent '[0]=' element. + +2022-02-02: + +- Fixed the -a/allexport option to export all variables that are assigned + values. Previously, arithmetic $((var=1)) or conditional ${var:=value} + assignments were not exported even with allexport on. + +- Fixed a memory leak that could occur when using traps. + +- Fixed a use after free issue that could occur when modifying or setting + a SIGCHLD trap. + +2022-02-01: + +- Upon invocation, the interactive shell no longer leaves the user without + a line editor if the VISUAL or EDITOR variable does not indicate emacs, + gmacs or vi; instead, it now turns on the emacs option by default. + +2022-01-31: + +- Improved keyboard support for the vi and emacs built-in line editors: + - Added support for Home key sequences ^[[1~ and ^[[7~ as well as End key + sequences ^[[4~ and ^[[8~. + - Added support for arrow key sequences ^[OA, ^[OB, ^[OC and ^[OD. + - Added support for the following keyboard shortcuts (if the platform + supports the expected escape sequence): + - Ctrl-Left Arrow: Go back one word + - Alt-Left Arrow: Go back one word (Not supported on Haiku) + - Ctrl-Right Arrow: Go forward one word + - Alt-Right Arrow: Go forward one word (Not supported on Haiku) + - Ctrl-G: Cancel reverse search + - Ctrl-Delete: Delete next word (Not supported on Haiku) + - Added a keybind for the Insert key, which differs in the emacs and vi + editing modes: + - In emacs mode, Insert escapes the next character. + - In vi mode, Insert will switch the editor to insert mode (like in vim). + +- Fixed a bug in SIGINT handling: if a script ran an external command that + interrupted itself (and only itself, not the process group) with SIGINT, + the script that ran the command was also interrupted. + +2022-01-28: + +- Fixed longstanding job control breakage that occurred on the interactive + shell when suspending (Ctrl+Z) an external command invoked by a dot script + or POSIX shell function, or via 'eval'. + +- Fixed a memory leak that occurred when running a command that was found on + the PATH. + +2022-01-26: + +- On Cygwin, ksh now executes scripts that do not have a #! path itself, + like it does on other systems, instead of with /bin/sh. + +- Fixed a spurious syntax error which occurred when attempting to use array + subscript expansion with unset variables (i.e., ${foo[${bar}..${baz}]}). + +2022-01-24: + +- Fixed a crashing bug in history expansion that could occur when using the "&" + modifier to repeat a substitution while there was no previous substitution. + +- History expansion is now documented in the ksh(1) manual page. + +- In history expansion, the history comment character '#' is now enabled by + default, as it is on bash. + +- In history expansion, the 'a' modifier is now a synonym for 'g', as on bash. + +- Fixed a bug in history expansion where the 'p' modifier had no effect if + the 'histverify' option is on. + +2022-01-20: + +- Disallow out-of-range event numbers in history expansion (-H/-o histexpand). + Previously these were accepted, resulting in corrupted expansions. + +- Fixed a potential crash in history expansion due to a buffer overflow. + +2022-01-12: + +- Added bash-inspired --histreedit and --histverify options that modify history + expansion (--histexpand), allowing editing on failure or before execution. + +2022-01-04: + +- Fixed an issue in vi mode that caused tab completion to fail if the + last character on the command line was a space. + +2021-12-29: + +- Fixed numerous build errors that prevented ksh from running on Haiku OS. + +- Added support for the SIGKILLTHR signal on operating systems that + implement it. 2021-12-28: @@ -102,7 +634,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. 2021-12-16: - Changed the default selection of compiled-in /opt/ast/bin built-in libcmd - command to: basename, cat, cp, cut, dirname, getconf, ln, mktemp, mv. + commands to: basename, cat, cp, cut, dirname, getconf, ln, mktemp, mv. Add /opt/ast/bin to your $PATH to use these. Type 'cp --man', etc. for info. - A bug introduced on 2020-09-17 was fixed that caused interactive ksh to exit @@ -768,7 +1300,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. - Fixed a bug in 'typeset': the '-s' modifier option for short integer will now only be applied if the integer option '-i' is also present, avoiding inconsistent results and a crash. - + - Fixed: scalar arrays (-a) and associative arrays (-A) of a type created by 'enum' allowed values not specified by the enum type, corrupting results. @@ -802,7 +1334,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. the parent environment was corrupted or the shell crashed. When a redirection was used in a DEBUG trap action, the trap was disabled. DEBUG traps were also incorrectly inherited by subshells and ksh functions. - All this was caused by a bug introduced in ksh 93t 2008-07-25. + All this was caused by a bug introduced in ksh 93t 2008-06-24. 2021-01-22: @@ -813,7 +1345,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. - Fixed: executing a DEBUG trap in a command substitution had side effects on the exit status ($?) of non-trap commands. - This bug was introduced in ksh 93t 2008-11-04. + This bug was introduced in ksh 93t 2008-09-21. - The typeset builtin command now gives an informative error message if an incompatible combination of options is given. @@ -944,7 +1476,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. to lose the output of the commands they ran. This bug occurred when ksh was compiled with the SHOPT_SPAWN compile-time option. -- Bugfix: var=$(< file) now reads the file even if the standard inout, standard +- Bugfix: var=$(< file) now reads the file even if the standard input, standard output and/or standard error file descriptors are closed. 2020-09-20: @@ -1268,8 +1800,8 @@ Any uppercase BUG_* names are modernish shell bug IDs. - Four of the date formats accepted by 'printf %()T' have had their functionality altered to the common behavior of date(1): - '%k' and '%l' print the current hour with blank padding, the former - based on a 24-hour clock and the latter a twelve hour clock. These - are common extensions present on Linux and *BSD. + based on a 24-hour clock and the latter a 12-hour clock. These are + common extensions present on Linux and *BSD. - '%f' prints a date with the format string '%Y.%m.%d-%H:%M:%S' (BusyBox). - '%q' prints the quarter of the year (GNU). @@ -1662,3 +2194,7 @@ Any uppercase BUG_* names are modernish shell bug IDs. for reading and writing, you now need '1<>'. Ref.: https://github.com/att/ast/issues/75 http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_07_07 + +2020-05-12: + +- ksh development rebooted based on 93u+ 2012-08-01. diff --git a/cde/programs/dtksh/ksh93/README.md b/cde/programs/dtksh/ksh93/README.md index 24eabdfec..c1cc0caf2 100644 --- a/cde/programs/dtksh/ksh93/README.md +++ b/cde/programs/dtksh/ksh93/README.md @@ -2,7 +2,8 @@ # KornShell 93u+m -This repository is used to develop bugfixes +This is version 1.0.x of the 93u+m fork of the KornShell, including a +sizeable number of enhancements and roughly a thousand bugfixes compared to the last stable release (93u+ 2012-08-01) of [ksh93](http://www.kornshell.com/), formerly developed by AT&T Software Technology (AST). @@ -10,60 +11,18 @@ The sources in this repository were forked from the GitHub [AST repository](https://github.com/att/ast) which is no longer under active development. -For user-visible fixes, see [NEWS](https://github.com/ksh93/ksh/blame/master/NEWS) +For information on the shell, see +[`src/cmd/ksh93/README`](https://github.com/ksh93/ksh/tree/1.0/src/cmd/ksh93#readme) +and other files in the same directory. +For user-visible fixes, see [NEWS](https://github.com/ksh93/ksh/blame/1.0/NEWS) and click on commit messages for full details. -For all fixes, see [the commit log](https://github.com/ksh93/ksh/commits/). -To see what's left to fix, see [the issue tracker](https://github.com/ksh93/ksh/issues). - -## Policy - -1. Fixing bugs is main focus of the 1.x series. - Major feature development is for future versions (2.x and up). -2. No major rewrites. No refactoring code that is not fully understood. -3. No changes in documented behaviour, except if required for compliance with the - [POSIX shell language standard](https://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html) - which David Korn [intended](http://www.kornshell.com/info/) for ksh to follow. -4. No 100% bug compatibility. Broken and undocumented behaviour gets fixed. -5. No bureaucracy, no formalities. Just fix it, or report it: create issues, - send pull requests. Every interested party is invited to contribute. -6. To help increase everyone's understanding of this code base, fixes and - significant changes should be fully documented in commit messages. -7. Code style varies somewhat in this historic code base. - Your changes should match the style of the code surrounding them. - Indent with tabs, assuming an 8-space tab width. - Opening braces are on a line of their own, at the same indentation level - as their corresponding closing brace. - Comments always use `/*`...`*/`. -8. Good judgment may override this policy. - -## Why? - -Between 2017 and 2020 there was an ultimately unsuccessful -[attempt](https://github.com/att/ast/tree/2020.0.1) -to breathe new life into the KornShell by extensively refactoring the last -unstable AST beta version (93v-). -While that ksh2020 branch is now abandoned and still has many critical bugs, -it also had a lot of bugs fixed. More importantly, the AST issue tracker -now contains a lot of documentation on how to fix those bugs, which made -it possible to backport many of them to the last stable release instead. -This ksh 93u+m reboot now incorporates many of these bugfixes, -plus patches from -[OpenSUSE](https://github.com/ksh93/ksh/wiki/Patch-Upstream-Report:-OpenSUSE), -[Red Hat](https://github.com/ksh93/ksh/wiki/Patch-Upstream-Report:-Red-Hat), -and -[Solaris](https://github.com/ksh93/ksh/wiki/Patch-Upstream-Report:-Solaris), -as well as many new fixes from the community -([1](https://github.com/ksh93/ksh/pulls?q=is%3Apr+is%3Amerged), -[2](https://github.com/ksh93/ksh/issues?q=is%3Aissue+is%3Aclosed+label%3Abug)). -Though there are many -[bugs left to fix](https://github.com/ksh93/ksh/issues), -we are confident at this point that 93u+m is already the least buggy branch -of ksh93 ever released. +For all fixes, see [the commit log](https://github.com/ksh93/ksh/commits/1.0). +For known issues in the current release, see [TODO](https://github.com/ksh93/ksh/blob/1.0/TODO). ## Build To build ksh with a custom configuration of features, edit -[`src/cmd/ksh93/SHOPT.sh`](https://github.com/ksh93/ksh/blob/master/src/cmd/ksh93/SHOPT.sh). +[`src/cmd/ksh93/SHOPT.sh`](https://github.com/ksh93/ksh/blob/1.0/src/cmd/ksh93/SHOPT.sh). Then `cd` to the top directory and run: ```sh @@ -92,16 +51,28 @@ to run the build scripts this way. For example: bin/package make SHELL=/bin/bash CCFLAGS="-O2 -I/opt/local/include" LDFLAGS="-L/opt/local/lib" ``` +**Note:** Do not add compiler flags that cause the compiler to emit terminal +escape codes, such as `-fdiagnostics-color=always`; this will cause the +build to fail as the probing code greps compiler diagnostics. + For more information run ```sh bin/package help ``` Many other commands in this repo self-document via the `--help`, `--man` and `--html` options; those that do have no separate manual page. +The autoloadable `man` function in +[`src/cmd/ksh93/fun/man`](https://github.com/ksh93/ksh/blob/1.0/src/cmd/ksh93/fun/man) +integrates this self-documentation into your regular `man` command. ### Test After compiling, you can run the regression tests. +To run the default test sets for ksh and the build system, use: +```sh +bin/package test +``` +For ksh, use the `shtests` command directly to control the regression test runs. Start by reading the information printed by: ```sh bin/shtests --man @@ -109,13 +80,17 @@ bin/shtests --man ### Install -Automated installation is not supported yet. -To install manually: -```sh -cp arch/$(bin/package host type)/bin/ksh /usr/local/bin/ -cp src/cmd/ksh93/sh.1 /usr/local/share/man/man1/ksh.1 -``` -(adapting the destination directories as required). +Usage: `bin/package install` *destination_directory* [ *command* ... ] + +Any command from the `arch` directory can be installed. If no *command* is +specified, `ksh` and `shcomp` are assumed. + +The *destination_directory* is created if it does not exist. Commands are +installed in its `bin` subdirectory and each command's manual page, if +available, is installed in `share/man`. + +Destination directories with whitespace or shell pattern characters in their +pathnames are not yet supported. ## What is ksh93? diff --git a/cde/programs/dtksh/ksh93/TODO b/cde/programs/dtksh/ksh93/TODO index eba7aeca9..1a4a3a20d 100644 --- a/cde/programs/dtksh/ksh93/TODO +++ b/cde/programs/dtksh/ksh93/TODO @@ -1,124 +1,70 @@ -TODO for ksh 93u+m +The following bugs and issues are known for ksh 93u+m 1.0.3: -See the issue tracker for up-to-date information: -https://github.com/ksh93/ksh/issues +Memory leak when initialising associative array in subshell +https://github.com/ksh93/ksh/issues/94 -______ -Enhancements to do: +command substitution botches output of non-waited-for child processes +https://github.com/ksh93/ksh/issues/124 -* Add -T (-o functrace) option as in bash - https://github.com/ksh93/ksh/issues/162 +wrong typeset -p output after unsetting multidimensional array elements +https://github.com/ksh93/ksh/issues/148 -* History pattern search menu (SHOPT_EDPREDICT) needs work - https://github.com/ksh93/ksh/issues/233 +printf %T date parsing: GNU-style "ago" date spec completely broken +https://github.com/ksh93/ksh/issues/182 -* Use real pipes instead of sockets - https://github.com/ksh93/ksh/issues/327 +typeset -L/-R: string length breaks on multibyte characters +https://github.com/ksh93/ksh/issues/189 -______ -Known bugs in ksh 93u+m 1.0.0-beta.2 (HELP IS WANTED to fix these): +Unicode code points in $'...' strings should vary according to the locale +https://github.com/ksh93/ksh/issues/193 -* Memory leak when initialising associative array in subshell - https://github.com/ksh93/ksh/issues/94 +Variable expansion corruption in single-line function on 32-bit systems +https://github.com/ksh93/ksh/issues/203 -* command substitution botches output of non-waited-for child processes - https://github.com/ksh93/ksh/issues/124 +Segfault with very large extended glob patterns +https://github.com/ksh93/ksh/issues/207 -* Intermittent coprocess hang on Debian/Ubuntu and Solaris - https://github.com/ksh93/ksh/issues/132 +process substitution cannot be part of a larger argument +https://github.com/ksh93/ksh/issues/215 -* wrong typeset -p output after unsetting multidimensional array elements - https://github.com/ksh93/ksh/issues/148 +Nested compound assignment misparsed in $(...) command substitution +https://github.com/ksh93/ksh/issues/269 -* File descriptor is unexpectedly closed after exec in subshell - https://github.com/ksh93/ksh/issues/161 +Builtins don't handle I/O errors +https://github.com/ksh93/ksh/issues/313 -* printf %T date parsing: GNU-style "ago" date spec completely broken - https://github.com/ksh93/ksh/issues/182 +bug in printf when %b and %x$ are used in same format +https://github.com/ksh93/ksh/issues/324 -* typeset -L/-R: string length breaks on multibyte characters - https://github.com/ksh93/ksh/issues/189 +Associative arrays of various types fail to be unset +https://github.com/ksh93/ksh/issues/345 -* Linux i386: variable expansion corruption in single-line function - https://github.com/ksh93/ksh/issues/203 +Variable with discipline function in subshell causes memory leak +https://github.com/ksh93/ksh/issues/404 -* Segfault with very large extended glob patterns - https://github.com/ksh93/ksh/issues/207 +Memory leak(s) when modifying PATH in various contexts +https://github.com/ksh93/ksh/issues/405 -* funcname.ksh crashes under standard malloc - https://github.com/ksh93/ksh/issues/212 +Discipline function .unset only called once for array subscripts +https://github.com/ksh93/ksh/issues/419 -* process substitution cannot be part of a larger argument - https://github.com/ksh93/ksh/issues/215 +Function autoload apparently broken on DragonFly BSD +https://github.com/ksh93/ksh/issues/432 -* Compound array regression on OpenBSD with standard malloc - https://github.com/ksh93/ksh/issues/229 +confusing behaviour of backreferences with alternation +https://github.com/ksh93/ksh/issues/447 -* 'typeset -m'-related crash on OpenBSD compiled with standard malloc - https://github.com/ksh93/ksh/issues/231 +Alias expansion loop not detected in command substitution +https://github.com/ksh93/ksh/issues/458 -* Freeze/crash on OpenBSD with -D_std_malloc involving typeset and command substitution - https://github.com/ksh93/ksh/issues/264 +Make KEYBD trap handling code multibyte-aware +https://github.com/ksh93/ksh/issues/460 -* Nested compound assignment misparsed in $(...) command substitution - https://github.com/ksh93/ksh/issues/269 +$LINENO incorrect after compound assignment +https://github.com/ksh93/ksh/issues/484 -* Crash on bin/shtests -px heredoc - https://github.com/ksh93/ksh/issues/306 +Shell quoting within bracket patterns has no effect +https://github.com/ksh93/ksh/issues/488 -* Multibyte characters get corrupted when KEYBD trap is set - https://github.com/ksh93/ksh/issues/307 - -* .sh.match index array result issues, crash after unset - https://github.com/ksh93/ksh/issues/308 - -* Builtins don't handle I/O errors - https://github.com/ksh93/ksh/issues/313 - -* block devices not seekable when open on fd 0, 1 or 2 - https://github.com/ksh93/ksh/issues/318 - -* bug in printf when %b and %x$ are used in same format - https://github.com/ksh93/ksh/issues/324 - -* namespaces don't work properly when defined within functions - https://github.com/ksh93/ksh/issues/325 - -* Associative arrays of various types fail to be unset - https://github.com/ksh93/ksh/issues/345 - -* types survive exec of hashbangless script - https://github.com/ksh93/ksh/issues/350 - -* Backtick command substitutions can't nest double quotes - https://github.com/ksh93/ksh/issues/352 - -* Line continuation breakage within $(comsub) - https://github.com/ksh93/ksh/issues/367 - -______ -Fix regression test failures: - -- There are some serious regression test failures on OpenBSD when ksh - is compiled with AST vmalloc disabled, so the system standard malloc(3) - is used. These probably represent real ksh93 bugs exposed by OpenBSD's - security hardening mechanisms. - -- Several known memory leaks have their tests disabled in tests/leaks.sh - and are marked TODO. These need tracking down and fixing. - -______ -Fix currently known bugs affecting shell scripting. These are identified by -their modernish IDs. For exact details, see code/comments in: -https://github.com/modernish/modernish/tree/0.16/lib/modernish/cap/ - -- BUG_BRACQUOT: shell quoting within bracket patterns has no effect. This - bug means the '-' retains it special meaning of 'character range', and an - initial ! (and, on some shells, ^) retains the meaning of negation, even - in quoted strings within bracket patterns, including quoted variables. - -- BUG_IFSGLOBS: In glob pattern matching (as in case or parameter - substitution with # and %), if IFS starts with ? or * and the "$*" - parameter expansion inserts any IFS separator characters, those characters - are erroneously interpreted as wildcards when quoted "$*" is used as the - glob pattern. +OPTIND not initialised correctly on Solaris/SPARC when compiled with gcc +https://github.com/ksh93/ksh/issues/515 diff --git a/cde/programs/dtksh/ksh93/bin/ignore b/cde/programs/dtksh/ksh93/bin/ignore index 1c16225de..0a57d55df 100755 --- a/cde/programs/dtksh/ksh93/bin/ignore +++ b/cde/programs/dtksh/ksh93/bin/ignore @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## # non-ksh script for the nmake ignore prefix diff --git a/cde/programs/dtksh/ksh93/bin/mamprobe b/cde/programs/dtksh/ksh93/bin/mamprobe index 294a9aaf6..8d3d831c4 100755 --- a/cde/programs/dtksh/ksh93/bin/mamprobe +++ b/cde/programs/dtksh/ksh93/bin/mamprobe @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## ### this script contains archaic constructs that work with all sh variants ### diff --git a/cde/programs/dtksh/ksh93/bin/package b/cde/programs/dtksh/ksh93/bin/package index 1559ef771..cf4cfab6a 100755 --- a/cde/programs/dtksh/ksh93/bin/package +++ b/cde/programs/dtksh/ksh93/bin/package @@ -2,20 +2,17 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2012 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # +# Trey Valenta # # # ######################################################################## ### this sh script is POSIX compliant and compatible with shell bugs ### @@ -109,13 +106,13 @@ command=${0##*/} case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in 0123) USAGE=$' [-? -@(#)$Id: '$command$' (ksh 93u+m) 2021-12-31 $ +@(#)$Id: '$command$' (ksh 93u+m) 2022-08-20 $ ] [-author?Glenn Fowler ] [-author?Contributors to https://github.com/ksh93/ksh] [-copyright?(c) 1994-2012 AT&T Intellectual Property] -[-copyright?(c) 2020-2021 Contributors to https://github.com/ksh93/ksh] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-copyright?(c) 2020-2022 Contributors to https://github.com/ksh93/ksh] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?'$command$' - build, test and install ksh 93u+m] [+DESCRIPTION?The \b'$command$'\b command is the main control script for building and installing KornShell 93u+m. @@ -144,6 +141,8 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in [+flat?With the \bmake\b action, create a flat view by linking all files from \b$INSTALLROOT\b, minus \b*.old\b files, onto their corresponding path under \b$PACKAGEROOT\b. + Subsequent \bmake\b actions will update an existing flat view + whether or not \bflat\b is specified. Only one architecture can have a flat view. If \bflat\b is specified with the \bclean\b action, then only clean up this flat view and do not delete \b$INSTALLROOT\b.] @@ -194,7 +193,17 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in release incompatibilities has for the most part been futile.] } - [+install\b To be reimplemented.] + [+install\b [ \adest_dir\a ]] [ \acommand\a ... ]]?Install commands + from the \b$INSTALLROOT\b tree + into appropriate subdirectories of \adest_dir\a. + If \adest_dir\a does not exist, + then it and any necessary subdirectories are created. + \adest_dir\a can be a directory like \a/usr/local\a + to install the \acommand\as directly, + or a temporary directory like \a/tmp/pkgtree/usr\a + to prepare for packaging with operating system-specific tools. + If no \acommand\a is specified, + then \aksh\a and \ashcomp\a are assumed.] [+make\b [ \apackage\a ]] [ \aoption\a ... ]] [ \atarget\a ... ]]?Build and install. The default \atarget\a is \binstall\b, which makes and installs \apackage\a. If the standard output is a terminal @@ -213,24 +222,24 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in must contain an \begrep\b(1) expression of result lines to be ignored. \bfailed\b lists failures only and \bpath\b lists the results file path name only.] - [+test\b [ \aargument\a ... ]]?Run the regression tests for - \bksh\b. If the standard output is a terminal then the + [+test\b [ \b\adir\a\b ]]\b?Run all available default regression tests. + If the optional \adir\a argument (such as \bsrc/cmd/ksh93\b) is given, + only the tests in that directory are run. + If the standard output is a terminal then the output is also captured in \b$INSTALLROOT/lib/package/gen/test.out\b. - \bksh\b must be made before it can be tested. - All \aargument\as following \atest\a are passed to \bbin/shtests\b. + Programs must be made before they can be tested. + For \bksh\b, a separate \bshtests\b command is available that allows + passing arguments to select and tune the regression tests. See \bbin/shtests --man\b for more information.] - [+use\b [ \auid\a | \apackage\a | . [ 32 | 64 ]] | 32 | 64 | - ]] [ command ...]]?Run + [+use\b [ \auid\a | \apackage\a | . | - [ command ... ]] ]]?Run \acommand\a, or an interactive shell if \acommand\a is omitted, - with the environment initialized for using the package (can you - say \ashared\a \alibrary\a or \adll\a without cussing?) If + with the environment initialized for using the package. If \auid\a or \apackage\a or \a.\a is specified then it is used to determine a \b$PACKAGEROOT\b, possibly different from the current directory. For example, to try out bozo'\'$'s package: \bpackage use bozo\b. The \buse\b action may be run from any directory. If the file \b$INSTALLROOT/lib/package/profile\b is - readable then it is sourced to initialize the environment. 32 or 64 - implies \b$PACKAGEROOT\b of . and specifies the target architecture - word size (which may be silently ignored).] + readable then it is sourced to initialize the environment.] [+view\b?Initialize the architecture specific viewpath hierarchy. The \bmake\b action implicitly calls this action.] } @@ -244,7 +253,7 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in [+?Independent \b$PACKAGEROOT\b hierarchies can be combined by appending \b$INSTALLROOT:$PACKAGEROOT\b pairs to \bVPATH\b. The \bVPATH\b viewing order is from left to right.] -[+?\b$HOSTYPE\b names the current binary architecture and is determined +[+?\b$HOSTTYPE\b names the current binary architecture and is determined by the output of \b'$command$'\b (no arguments). The \b$HOSTTYPE\b naming scheme is used to separate incompatible executable and object formats. All architecture specific binaries are placed under \b$INSTALLROOT\b @@ -253,7 +262,7 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in makefile compiler workarounds, e.g., if \b$HOSTTYPE\b matches \bhp.*\b then turn off the optimizer for these objects. All other architecture dependent logic is handled either by the \bAST\b \biffe\b(1) command or - by component specific configure scripts. Explicit \b$HOSTYPE\b + by component specific configure scripts. Explicit \b$HOSTTYPE\b values matching *,*cc*[,-*,...]] optionally set the default \bCC\b and \bCCFLAGS\b. This is handy for build farms that support different compilers on the same architecture.] @@ -406,9 +415,10 @@ DESCRIPTION Show environment and actions but do not execute. flat With the make action, create a flat view by linking all files from $INSTALLROOT, minus *.old files, onto their corresponding path under - $PACKAGEROOT. Only one architecture can have a flat view. If flat is - specified with the clean action, then only clean up this flat view - and do not delete $INSTALLROOT. + $PACKAGEROOT. Subsequent make actions will update an existing flat + view whether or not flat is specified. Only one architecture can have + a flat view. If flat is specified with the clean action, then only + clean up this flat view and do not delete $INSTALLROOT. force Force the action to override saved state. never Run make -N and show other actions. only Only operate on the specified packages. @@ -451,7 +461,14 @@ DESCRIPTION similar, predictable style. OS point release information is avoided as much as possible, but vendor resistance to release incompatibilities has for the most part been futile. - install To be reimplemented. + install [ dest_dir ] [ command ... ] + Install commands from the $INSTALLROOT tree into appropriate + subdirectories of dest_dir. If dest_dir does not exist, then it and + any necessary subdirectories are created. dest_dir can be a directory + like /usr/local to install the commands directly, or a temporary + directory like /tmp/pkgtree/usr to prepare for packaging with + operating system-specific tools. If no command is specified, then ksh + and shcomp are assumed. make [ package ] [ option ... ] [ target ... ] Build and install. The default target is install, which makes and installs package. If the standard output is a terminal then the @@ -468,23 +485,23 @@ DESCRIPTION $HOME/.pkgresults, if it exists, must contain an egrep(1) expression of result lines to be ignored. failed lists failures only and path lists the results file path name only. - test [ argument ... ] - Run the regression tests for ksh. If the standard output is a - terminal then the output is also captured in - $INSTALLROOT/lib/package/gen/test.out. ksh must be made before it can - be tested. All arguments following test are passed to bin/shtests. - See bin/shtests --man for more information. - use [ uid | package | . [ 32 | 64 ] | 32 | 64 | - ] [ command ...] + test [ dir ] + Run all available default regression tests. If the optional dir + argument (such as src/cmd/ksh93) is given, only the tests in that + directory are run. If the standard output is a terminal then the + output is also captured in $INSTALLROOT/lib/package/gen/test.out. + Programs must be made before they can be tested. For ksh, a separate + shtests command is available that allows passing arguments to select + and tune the regression tests. See bin/shtests --man for more + information. + use [ uid | package | . | - [ command ... ] ] Run command, or an interactive shell if command is omitted, with the - environment initialized for using the package (can you say shared - library or dll without cussing?) If uid or package or . is specified - then it is used to determine a $PACKAGEROOT, possibly different from - the current directory. For example, to try out bozo'\''s package: - package use bozo. The use action may be run from any directory. If - the file $INSTALLROOT/lib/package/profile is readable then it is - sourced to initialize the environment. 32 or 64 implies $PACKAGEROOT - of . and specifies the target architecture word size (which may be - silently ignored). + environment initialized for using the package. If uid or package or . + is specified then it is used to determine a $PACKAGEROOT, possibly + different from the current directory. For example, to try out bozo'\''s + package: package use bozo. The use action may be run from any + directory. If the file $INSTALLROOT/lib/package/profile is readable + then it is sourced to initialize the environment. view Initialize the architecture specific viewpath hierarchy. The make action implicitly calls this action. @@ -500,7 +517,7 @@ DETAILS $INSTALLROOT:$PACKAGEROOT pairs to VPATH. The VPATH viewing order is from left to right. - $HOSTYPE names the current binary architecture and is determined by the + $HOSTTYPE names the current binary architecture and is determined by the output of package (no arguments). The $HOSTTYPE naming scheme is used to separate incompatible executable and object formats. All architecture specific binaries are placed under $INSTALLROOT @@ -509,7 +526,7 @@ DETAILS workarounds, e.g., if $HOSTTYPE matches hp.* then turn off the optimizer for these objects. All other architecture dependent logic is handled either by the AST iffe(1) command or by component specific configure scripts. Explicit - $HOSTYPE values matching *,*cc*[,-*,...] optionally set the default CC and + $HOSTTYPE values matching *,*cc*[,-*,...] optionally set the default CC and CCFLAGS. This is handy for build farms that support different compilers on the same architecture. @@ -529,12 +546,12 @@ SEE ALSO mamake(1), pax(1), pkgadd(1), pkgmk(1), rpm(1), sh(1), tar(1), optget(3) IMPLEMENTATION - version package (ksh 93u+m) 2021-12-31 + version package (ksh 93u+m) 2022-08-20 author Glenn Fowler author Contributors to https://github.com/ksh93/ksh copyright (c) 1994-2012 AT&T Intellectual Property - copyright (c) 2020-2021 Contributors to https://github.com/ksh93/ksh - license http://www.eclipse.org/org/documents/epl-v10.html' + copyright (c) 2020-2022 Contributors to https://github.com/ksh93/ksh + license https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html' case $1 in html) echo "" ;; esac @@ -599,7 +616,7 @@ case $_PACKAGE_HOSTTYPE_ in ;; esac KEEP_PACKAGEROOT=0 -KEEP_SHELL=0 +KEEP_SHELL=0 # set to 1 if SHELL is a known-good system shell, 2 if SHELL supplied by user USER_VPATH= args= assign= @@ -637,7 +654,7 @@ do case $i in ;; SHELL=*)eval $n='$'v case $SHELL in - ?*) KEEP_SHELL=1 ;; + ?*) KEEP_SHELL=2 ;; esac ;; VPATH=*)eval USER_$n='$'v @@ -665,111 +682,11 @@ case $CC in *) export CC ;; esac -# Add build type flags via KSH_RELFLAGS, which is used in src/cmd/ksh93/Mamfile. -# (Avoid using CCFLAGS; setting it would overwrite autodetected optimization flags.) -ksh_relflags= -case $(git branch 2>/dev/null) in -'' | *\*\ [0-9]*.[0-9]*) - # If we're not on a git branch (tarball) or on a branch that starts - # with a number (release branch), then compile as a release version - ksh_relflags="${ksh_relflags:+$ksh_relflags }-D_AST_ksh_release" ;; -*) # Otherwise, add 8-character git commit hash if available, and if the working dir is clean - git_commit=$(git status >/dev/null 2>&1 && git diff-index --quiet HEAD && git rev-parse --short=8 HEAD) - case $git_commit in - ????????) - ksh_relflags="${ksh_relflags:+$ksh_relflags }-D_AST_git_commit=\\\"$git_commit\\\"" ;; - esac - unset git_commit ;; -esac -case $ksh_relflags in -?*) # add the extra flags as an argument to mamake - assign="${assign:+$assign }KSH_RELFLAGS=\"\$ksh_relflags\"" ;; -esac - -# Add ksh compile-options via KSH_SHOPTFLAGS. -SHOPT() -{ - case $1 in - *=?*) ksh_shoptflags="${ksh_shoptflags:+$ksh_shoptflags }-DSHOPT_$1" ;; - esac -} -ksh_shoptflags= -shopt_sh='src/cmd/ksh93/SHOPT.sh' # this script calls SHOPT() to set options -if test -f "$shopt_sh" -then . "$shopt_sh" -else echo "WARNING: $shopt_sh is missing" >&2 -fi -case $ksh_shoptflags in -?*) # add the extra flags as an argument to mamake - assign="${assign:+$assign }KSH_SHOPTFLAGS=\"\$ksh_shoptflags\"" ;; -esac - # grab action specific args case $action in use) case $1 in - .|32|64)case $1 in - 32|64) bit=$1 ;; - esac - shift - - # HOSTTYPE specific setup - - case $HOSTTYPE in - win32.*)sys=uwin - wow=$(uname -i) - case $bit in - 32) case $HOSTTYPE in - *-64) HOSTTYPE=${HOSTTYPE%-64} ;; - esac - ;; - 64) case $HOSTTYPE in - *-64) ;; - *) HOSTTYPE=$HOSTTYPE-64 ;; - esac - case $wow in - */32) err_out "cannot build $bit-bit on $wow $sys" ;; - esac - ;; - esac - case $bit in - '') PS1="($sys) " ;; - *) PS1="($sys-$bit) " ;; - esac - - $exec umask 002 - $exec unset MAKESKIP - - P=$PWD - A=$P/arch/$HOSTTYPE - - $exec export CDPATH=:..:$A/src/cmd:$A/src/lib:$A/src/uwin:$P/lib/package - $exec export INSTALLROOT=$A - $exec export PACKAGEROOT=$P - $exec export PATH=$A/bin:$P/bin:$PATH - $exec export PS1="$PS1" - $exec export VPATH=$A:$P - $exec export nativepp=/usr/lib - - if test '' != "$INSTALLROOT" -a -d $INSTALLROOT/include/ast - then $exec export PACKAGE_ast=$INSTALLROOT - elif test -d ${PWD%/*}/ast/arch/$HOSTTYPE - then $exec export PACKAGE_ast=${PWD%/*}/ast/arch/$HOSTTYPE - fi - - # run the command - - case $# in - 0) case $show in - ':') $exec exec $SHELL ;; - esac - ;; - *) $exec exec $SHELL -c "$@" - ;; - esac - exit - ;; - esac + .) shift PACKAGEROOT=$PWD $show export PACKAGEROOT esac @@ -780,7 +697,7 @@ esac packageroot() # dir { - test -d $1/lib/$command -o -x $1/bin/$command + test -d "$1/lib/$command" || test -x "$1/bin/$command" } # true if arg is executable @@ -788,8 +705,8 @@ packageroot() # dir executable() # [!] command { case $1 in - '!') test ! -x "$2" -a ! -x "$2.exe"; return ;; - *) test -x "$1" -o -x "$1.exe"; return ;; + '!') test ! -x "$2" && test ! -x "$2.exe" ;; + *) test -x "$1" || test -x "$1.exe" ;; esac } @@ -1490,7 +1407,7 @@ int main() type=unixware ;; UTS*|uts*) - if test -x /bin/u370 -o -x /bin/u390 + if test -x /bin/u370 || test -x /bin/u390 then type=uts.390 else case $arch in '') arch=$mach ;; @@ -1796,6 +1713,14 @@ err_out() exit 1 } +trace() +( + PS4="${action}: executing: " + exec 2>&1 # trace to standard output + set -o xtrace + "$@" +) + # cc checks # # CC: compiler base name name @@ -1876,12 +1801,6 @@ esac run=- case $x in 1) : accept the current package use environment - - OK=ok - KSH=$EXECROOT/bin/ksh - MAKE=mamake - SUM=$EXECROOT/bin/sum - TEE=$EXECROOT/bin/tee INITROOT=$PACKAGEROOT/src/cmd/INIT checkcc ;; @@ -2291,17 +2210,8 @@ cat $INITROOT/$i.sh $show export EXECROOT export EXECROOT - # use these if possible - - OK=ok - KSH=$EXECROOT/bin/ksh - MAKE=mamake - SUM=$EXECROOT/bin/sum - TEE=$EXECROOT/bin/tee - # grab a decent default shell - checksh "$SHELL" || KEEP_SHELL=0 case $KEEP_SHELL in 0) save_PATH=$PATH if PATH=$(getconf PATH 2>/dev/null) @@ -2536,7 +2446,7 @@ checkaout() # cmd ... '') _PACKAGE_cc=0 ;; *) _PACKAGE_cc=1 - test -f $INITROOT/hello.c -a -f $INITROOT/p.c || { + test -f "$INITROOT/hello.c" && test -f "$INITROOT/p.c" || { note "$INITROOT: INIT package source not found" return 1 } @@ -2686,7 +2596,7 @@ capture() # file command ... cmd='case $error_status in 0) r=done;; *) r=failed;; esac;' cmd=$cmd' echo "$command: $action $r at $(date) in $INSTALLROOT"' case $quiet in - 0) cmd="$cmd 2>&1 | \$TEE -a $o" ;; + 0) cmd="$cmd 2>&1 | tee -a $o" ;; *) cmd="$cmd >> $o" ;; esac trap "$cmd" 0 @@ -2695,10 +2605,7 @@ capture() # file command ... ;; esac case $quiet in - 0) if executable ! $TEE - then TEE=tee - fi - # Connect 'tee' to a FIFO instead of a pipe, so that we can obtain + 0) # Connect 'tee' to a FIFO instead of a pipe, so that we can obtain # the build's exit status and use it for $error_status rm -f $o.fifo mkfifo -m 600 $o.fifo || exit @@ -2707,7 +2614,7 @@ capture() # file command ... # unlink early exec rm $o.fifo ) & - $TEE -a $o < $o.fifo & + tee -a $o < $o.fifo & tee_pid=$! o=$o.fifo ;; @@ -2743,6 +2650,48 @@ make_recurse() # dir done } +do_install() # dir [ command ... ] +{ + cd "$INSTALLROOT" + printf 'install: installing from %s\n' "$PWD" + set -o errexit + dd=$1 + shift + case $dd in + '' | [!/]*) + err_out "ERROR: destination directory '$dd' must begin with a /" ;; + esac + # commands to install by default + test "$#" -eq 0 && set -- ksh shcomp # pty suid_exec + for f + do test -f "bin/$f" || err_out "Not found: $f" "Build first? Run $0 make" + done + # set install directories + bindir=$dd/bin + mandir=$dd/share/man + man1dir=$mandir/man1 + # and off we go + trace mkdir -p "$bindir" "$man1dir" + for f + do # install executable + trace cp "bin/$f" "$bindir/" + # install manual + case $f in + ksh) trace cp "$PACKAGEROOT/src/cmd/ksh93/sh.1" "$man1dir/ksh.1" + ;; + *) # AT&T --man, etc. is a glorified error message: writes to stderr and exits with status 2 :-/ + manfile=$man1dir/${f##*/}.1 + bin/ksh -c '"$@" 2>&1; exit 0' _ "bin/$f" --nroff >$manfile + # ...so we cannot check for success; instead, check the result. + if grep -q '^.TH .* 1' "$manfile" + then printf "install: wrote '%s --nroff' output into %s\n" "bin/$f" "$manfile" + else rm "$manfile" + fi + ;; + esac + done +} + # check for native ASCII 0:yes 1:no __isascii__= @@ -2778,7 +2727,7 @@ clean|clobber) then set -- "$@" "$p" # add to new PPs fi done - exec rm -f "$@" # rm all at once: fast + exec rm -f -- "$@" # rm all at once: fast ' "$0" {} + case $flat in 0) note "deleting arch/$HOSTTYPE" @@ -2813,9 +2762,9 @@ export) case $INSTALLROOT in ;; install)cd $PACKAGEROOT - echo "A proper installation command is coming back soon, sorry." >&2 - echo "Meanwhile, copy ksh and shcomp from: $INSTALLROOT/arch/$HOSTTYPE/bin" >&2 - exit 1 + # TODO: breaks on directories with spaces or glob characters; make arguments handling robust + test -n "$args" || err_out "Usage: $0 install ROOTDIR [ COMMANDNAME ... ]" + capture do_install $args ;; make|view) @@ -2824,7 +2773,7 @@ make|view) # check for some required commands must="$AR" - warn="$NM yacc bison" + warn="$NM" test="$must $warn" have= IFS=: @@ -2848,14 +2797,6 @@ make|view) esac done done - case " $have " in - *" bison "*) ;; - *" yacc "*) have="$have bison" ;; - esac - case " $have " in - *" yacc "*) ;; - *" bison "*) have="$have yacc" ;; - esac for t in $test do case " $have " in *" $t "*) @@ -2882,7 +2823,7 @@ make|view) for i in arch arch/$HOSTTYPE do test -d $PACKAGEROOT/$i || $exec mkdir $PACKAGEROOT/$i || exit done - for i in bin bin/$OK bin/$OK/lib fun include lib lib/package lib/package/gen src man man/man1 man/man3 man/man8 + for i in bin bin/ok bin/ok/lib fun include lib lib/package lib/package/gen src man man/man1 man/man3 man/man8 do test -d $INSTALLROOT/$i || $exec mkdir $INSTALLROOT/$i || exit done make_recurse src @@ -3084,7 +3025,7 @@ make|view) k=$INITROOT/make.probe case $(ls -t $i $j $k 2>/dev/null) in $i*) ;; - *) if test -f $j -a -f $k + *) if test -f "$j" && test -f "$k" then note "update $i" shellmagic case $exec in @@ -3117,19 +3058,19 @@ cat $j $k then execrate=execrate $make cd $INSTALLROOT/bin for i in chmod chgrp cmp cp ln mv rm - do if test ! -x $OK/$i -a -x /bin/$i.exe + do if test ! -x "ok/$i" && test -x "/bin/$i.exe" then shellmagic case $exec in - '') echo "$SHELLMAGIC"'execrate /bin/'$i' "$@"' > $OK/$i - chmod +x $OK/$i + '') echo "$SHELLMAGIC"'execrate /bin/'$i' "$@"' > ok/$i + chmod +x ok/$i ;; - *) $exec echo \'"$SHELLMAGIC"'execrate /bin/'$i' "$@"'\'' >' $OK/$i - $exec chmod +x $OK/$i + *) $exec echo \'"$SHELLMAGIC"'execrate /bin/'$i' "$@"'\'' >' ok/$i + $exec chmod +x ok/$i ;; esac fi done - PATH=$INSTALLROOT/bin/$OK:$PATH + PATH=$INSTALLROOT/bin/ok:$PATH export PATH else execrate= fi @@ -3140,7 +3081,7 @@ cat $j $k # check against previous compiler and flags err= - for var in CC CCFLAGS CCLDFLAGS LDFLAGS KSH_RELFLAGS + for var in CC CCFLAGS CCLDFLAGS LDFLAGS do store=$INSTALLROOT/lib/package/gen/$var eval "new=\$$var" if test -f $store @@ -3202,7 +3143,7 @@ cat $j $k # mamprobe data should have been generated by this point case $exec in - '') if test ! -f $INSTALLROOT/bin/.paths -o -w $INSTALLROOT/bin/.paths + '') if test ! -f "$INSTALLROOT/bin/.paths" || test -w "$INSTALLROOT/bin/.paths" then N=' ' b= f= h= n= p= u= B= L= @@ -3294,32 +3235,29 @@ cat $j $k ksh tee cp ln mv rm \ *ast*.dll *cmd*.dll *dll*.dll *shell*.dll do executable $i && { - cmp -s $i $OK/$i 2>/dev/null || { - test -f $OK/$i && - $exec $execrate $rm $OK/$i /dev/null || { + test -f ok/$i && + $exec $execrate $rm ok/$i /dev/null || ln -sf "$h" "$p" || exit + ln -f "$h" "$p" 2>/dev/null || ln -sf "$INSTALLROOT/$p" "$p" || exit done ' "$0" {} + ;; @@ -3396,10 +3339,6 @@ results)set '' $target ;; make|test|view) def=$1 - case $filter:$1:$SHELL in - errors:*:*) ;; - *:test:*/ksh*) filter=rt ;; - esac ;; old) suf=old ;; @@ -3416,7 +3355,6 @@ results)set '' $target path) path=1 ;; test) def=test - filter=rt ;; *) break ;; @@ -3469,8 +3407,6 @@ results)set '' $target ;; errors) $exec egrep -i '\*\*\*|FAIL[ES]|^TEST.* [123456789][0123456789]* error|core.*dump' $j | sed -e '/^TEST.\//s,/[^ ]*/,,' ;; - rt) $exec $KSH rt - $j - ;; *) $exec egrep -i '^TEST|FAIL' $j ;; esac @@ -3514,12 +3450,25 @@ results)set '' $target esac ;; -test) # pass control to ksh 93u+m test script - capture "$PACKAGEROOT/bin/shtests" $args +test) # run all available default regression tests, using our newly compiled shell unless overridden + + cd "$INSTALLROOT" || err_out "run '$0 make' first" + if test "$KEEP_SHELL" -lt 2 + then executable bin/ksh || err_out "build ksh first, or supply a SHELL=/path/to/ksh argument" + SHELL=$INSTALLROOT/bin/ksh + fi + export SHELL + set -f + set -- ${args:-src} + cd "$1" || exit + capture mamake test ;; use) # finalize the environment + if test "$KEEP_SHELL" -lt 2 && executable "$INSTALLROOT/bin/ksh" + then SHELL=$INSTALLROOT/bin/ksh + fi x=:.. for d in $( cd $PACKAGEROOT; ls src/*/Mamfile 2>/dev/null | sed 's,/[^/]*$,,' | sort -u ) do x=$x:$INSTALLROOT/$d diff --git a/cde/programs/dtksh/ksh93/bin/silent b/cde/programs/dtksh/ksh93/bin/silent index 4ae93a22b..3291fa865 100755 --- a/cde/programs/dtksh/ksh93/bin/silent +++ b/cde/programs/dtksh/ksh93/bin/silent @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## # non-ksh stub for the nmake silent prefix diff --git a/cde/programs/dtksh/ksh93/src/Mamfile b/cde/programs/dtksh/ksh93/src/Mamfile index fdf8ec6f0..24e5bcaa3 100644 --- a/cde/programs/dtksh/ksh93/src/Mamfile +++ b/cde/programs/dtksh/ksh93/src/Mamfile @@ -1,16 +1,15 @@ -info mam static note * note * This build file is in the Make Abstract Machine (MAM) language. It was note * first generated by nmake, but in the ksh 93u+m distribution we maintain note * it manually because nmake had too many problems to keep using. The note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added -note * support for indentation to improve readability. The language is -note * documented in Glenn Fowler's paper "A Make Abstract Machine": -note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html +note * indentation to improve readability. The language is documented in +note * src/cmd/INIT/README-mamake.md. note * -note source level :MAKE: equivalent -make install - make all - exec - ${MAMAKE} -r '*/*' ${MAMAKEARGS} - done all virtual -done install virtual +make test + make install + make all + exec - ${MAMAKE} -r '*/*' ${MAMAKEARGS} + done all virtual + done install virtual +done test virtual diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/C+probe b/cde/programs/dtksh/ksh93/src/cmd/INIT/C+probe index f42774233..16077241d 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/C+probe +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/C+probe @@ -66,7 +66,7 @@ then tmpdir=$TMPDIR else tmpdir=/tmp fi tmpdir=$tmpdir/probe$$ -undef="define defined elif else endif error if ifdef ifndef include line pragma undef __STDC__ __STDPP__ __ARGC__ __BASE__ __BASE_FILE__ __DATE__ __FILE__ __FUNCTION__ __INCLUDE_LEVEL__ __LINE__ __PATH__ __TIME__ __TIMESTAMP__ __VERSION__" +undef="define defined elif else endif error if ifdef ifndef include line pragma undef __STDC__ __ARGC__ __BASE__ __BASE_FILE__ __DATE__ __FILE__ __FUNCTION__ __INCLUDE_LEVEL__ __LINE__ __PATH__ __TIME__ __TIMESTAMP__ __VERSION__" version_flags= version_stamp= version_string= diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/Mamfile b/cde/programs/dtksh/ksh93/src/cmd/INIT/Mamfile index 066858af6..612840057 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/Mamfile +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/Mamfile @@ -1,18 +1,15 @@ -info mam static 00000 1994-07-17 make (AT&T Research) 5.7 2012-06-20 note * note * This build file is in the Make Abstract Machine (MAM) language. It was note * first generated by nmake, but in the ksh 93u+m distribution we maintain note * it manually because nmake had too many problems to keep using. The note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added -note * support for indentation to improve readability. The language is -note * documented in Glenn Fowler's paper "A Make Abstract Machine": -note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html +note * indentation to improve readability. The language is documented in +note * src/cmd/INIT/README-mamake.md. note * setv INSTALLROOT ../../.. setv PACKAGEROOT ../../../../.. setv CC cc setv mam_cc_FLAGS -setv KSH_RELFLAGS setv CCFLAGS ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${mam_cc_OPTIMIZE}?} setv CCLDFLAGS ${-strip-symbols?1?${mam_cc_LD_STRIP}??} setv COTEMP $$ @@ -21,7 +18,6 @@ make install make iffe make iffe.sh done iffe.sh - meta iffe %.sh>% iffe.sh iffe prev iffe.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -58,7 +54,6 @@ make install make mktest make mktest.sh done mktest.sh - meta mktest %.sh>% mktest.sh mktest prev mktest.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -95,7 +90,6 @@ make install make package make package.sh done package.sh - meta package %.sh>% package.sh package prev package.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -132,7 +126,6 @@ make install make regress make regress.sh done regress.sh - meta regress %.sh>% regress.sh regress prev regress.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -166,47 +159,9 @@ make install exec - esac exec - test -w regress -a -x regress || chmod u+w,+x regress done regress generated - make rt - make rt.sh - done rt.sh - meta rt %.sh>% rt.sh rt - prev rt.sh - exec - case static,port:$OPTIND:$RANDOM in - exec - ?*:*:*|*::*|*:*:$RANDOM) - exec - ;; - exec - *) if ENV= LC_ALL=C x= $SHELL -nc '[[ a || b ]] && : ${list[level]} !(pattern)' 2>/dev/null - exec - then if grep '### .*archaic.* ###' >/dev/null - exec - then : rt contains archaic constructs : - exec - else ENV= LC_ALL=C $SHELL -n rt.sh - exec - fi - exec - fi - exec - ;; - exec - esac - exec - case '${mam_cc_SHELLMAGIC}' in - exec - "") case 184 in - exec - 0) cp rt.sh rt - exec - ;; - exec - *) { - exec - i=`(read x; echo $x) < rt.sh` - exec - case $i in - exec - '#!'*|*'||'*|':'*|'":"'*|"':'"*) echo "$i" ;; - exec - esac - exec - cat rt.sh - exec - } > rt - exec - ;; - exec - esac - exec - ;; - exec - *) cat - rt.sh > rt <<'!' - exec - ${mam_cc_SHELLMAGIC} - exec - ! - exec - ;; - exec - esac - exec - test -w rt -a -x rt || chmod u+w,+x rt - done rt generated make crossexec make crossexec.sh done crossexec.sh - meta crossexec %.sh>% crossexec.sh crossexec prev crossexec.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -243,7 +198,6 @@ make install make execrate make execrate.sh done execrate.sh - meta execrate %.sh>% execrate.sh execrate prev execrate.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -280,7 +234,6 @@ make install make filter make filter.sh done filter.sh - meta filter %.sh>% filter.sh filter prev filter.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -317,7 +270,6 @@ make install make ignore make ignore.sh done ignore.sh - meta ignore %.sh>% ignore.sh ignore prev ignore.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -357,7 +309,6 @@ make install make silent make silent.sh done silent.sh - meta silent %.sh>% silent.sh silent prev silent.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -402,16 +353,14 @@ make install make ast.h implicit done ast.h dontcare virtual done mamake.c - meta mamake.o %.c>%.o mamake.c mamake prev mamake.c - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -c mamake.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -c mamake.c done mamake.o generated - exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS} -o mamake mamake.o + exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} -o mamake mamake.o done mamake generated make mprobe make mprobe.sh done mprobe.sh - meta mprobe %.sh>% mprobe.sh mprobe prev mprobe.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -456,7 +405,6 @@ make install done make.probe exec - cat C+probe make.probe > probe.sh done probe.sh generated - meta probe %.sh>% probe.sh probe prev probe.sh exec - case static,port:$OPTIND:$RANDOM in exec - ?*:*:*|*::*|*:*:$RANDOM) @@ -500,24 +448,20 @@ make install done ${INSTALLROOT}/bin generated make ${INSTALLROOT}/bin/iffe prev iffe - exec - test '' = 'iffe' || ${STDCMP} 2>/dev/null -s iffe ${INSTALLROOT}/bin/iffe || { ${STDMV} ${INSTALLROOT}/bin/iffe ${INSTALLROOT}/bin/iffe.old 2>/dev/null || true; ${STDCP} iffe ${INSTALLROOT}/bin/iffe ;} + exec - ${STDCMP} 2>/dev/null -s iffe ${INSTALLROOT}/bin/iffe || { ${STDMV} ${INSTALLROOT}/bin/iffe ${INSTALLROOT}/bin/iffe.old 2>/dev/null || true; ${STDCP} iffe ${INSTALLROOT}/bin/iffe ;} done ${INSTALLROOT}/bin/iffe generated make ${INSTALLROOT}/bin/mktest prev mktest - exec - test '' = 'mktest' || ${STDCMP} 2>/dev/null -s mktest ${INSTALLROOT}/bin/mktest || { ${STDMV} ${INSTALLROOT}/bin/mktest ${INSTALLROOT}/bin/mktest.old 2>/dev/null || true; ${STDCP} mktest ${INSTALLROOT}/bin/mktest ;} + exec - ${STDCMP} 2>/dev/null -s mktest ${INSTALLROOT}/bin/mktest || { ${STDMV} ${INSTALLROOT}/bin/mktest ${INSTALLROOT}/bin/mktest.old 2>/dev/null || true; ${STDCP} mktest ${INSTALLROOT}/bin/mktest ;} done ${INSTALLROOT}/bin/mktest generated make ${INSTALLROOT}/bin/package prev package - exec - test '' = 'package' || ${STDCMP} 2>/dev/null -s package ${INSTALLROOT}/bin/package || { ${STDMV} ${INSTALLROOT}/bin/package ${INSTALLROOT}/bin/package.old 2>/dev/null || true; ${STDCP} package ${INSTALLROOT}/bin/package ;} + exec - ${STDCMP} 2>/dev/null -s package ${INSTALLROOT}/bin/package || { ${STDMV} ${INSTALLROOT}/bin/package ${INSTALLROOT}/bin/package.old 2>/dev/null || true; ${STDCP} package ${INSTALLROOT}/bin/package ;} done ${INSTALLROOT}/bin/package generated make ${INSTALLROOT}/bin/regress prev regress - exec - test '' = 'regress' || ${STDCMP} 2>/dev/null -s regress ${INSTALLROOT}/bin/regress || { ${STDMV} ${INSTALLROOT}/bin/regress ${INSTALLROOT}/bin/regress.old 2>/dev/null || true; ${STDCP} regress ${INSTALLROOT}/bin/regress ;} + exec - ${STDCMP} 2>/dev/null -s regress ${INSTALLROOT}/bin/regress || { ${STDMV} ${INSTALLROOT}/bin/regress ${INSTALLROOT}/bin/regress.old 2>/dev/null || true; ${STDCP} regress ${INSTALLROOT}/bin/regress ;} done ${INSTALLROOT}/bin/regress generated - make ${INSTALLROOT}/bin/rt - prev rt - exec - test '' = 'rt' || ${STDCMP} 2>/dev/null -s rt ${INSTALLROOT}/bin/rt || { ${STDMV} ${INSTALLROOT}/bin/rt ${INSTALLROOT}/bin/rt.old 2>/dev/null || true; ${STDCP} rt ${INSTALLROOT}/bin/rt ;} - done ${INSTALLROOT}/bin/rt generated make ${PACKAGEROOT}/bin exec - if test ! -d ${PACKAGEROOT}/bin exec - then mkdir -p ${PACKAGEROOT}/bin @@ -526,15 +470,14 @@ make install make ${PACKAGEROOT}/bin/execrate prev ${PACKAGEROOT}/bin prev execrate - exec - test '' = 'execrate' || ${STDCMP} 2>/dev/null -s execrate ${PACKAGEROOT}/bin/execrate || { ${STDMV} ${PACKAGEROOT}/bin/execrate ${PACKAGEROOT}/bin/execrate.old 2>/dev/null || true; ${STDCP} execrate ${PACKAGEROOT}/bin/execrate ;} + exec - ${STDCMP} 2>/dev/null -s execrate ${PACKAGEROOT}/bin/execrate || { ${STDMV} ${PACKAGEROOT}/bin/execrate ${PACKAGEROOT}/bin/execrate.old 2>/dev/null || true; ${STDCP} execrate ${PACKAGEROOT}/bin/execrate ;} done ${PACKAGEROOT}/bin/execrate generated make ${PACKAGEROOT}/bin/ignore prev ignore - exec - test '' = 'ignore' || ${STDCMP} 2>/dev/null -s ignore ${PACKAGEROOT}/bin/ignore || { ${STDMV} ${PACKAGEROOT}/bin/ignore ${PACKAGEROOT}/bin/ignore.old 2>/dev/null || true; ${STDCP} ignore ${PACKAGEROOT}/bin/ignore ;} + exec - ${STDCMP} 2>/dev/null -s ignore ${PACKAGEROOT}/bin/ignore || { ${STDMV} ${PACKAGEROOT}/bin/ignore ${PACKAGEROOT}/bin/ignore.old 2>/dev/null || true; ${STDCP} ignore ${PACKAGEROOT}/bin/ignore ;} done ${PACKAGEROOT}/bin/ignore generated make ${PACKAGEROOT}/bin/mamprobe make mamprobe - meta mamprobe %.sh>% mamprobe.sh mamprobe make mamprobe.sh done mamprobe.sh exec - case static,port:$OPTIND:$RANDOM in @@ -572,27 +515,27 @@ make install exec - esac exec - test -w mamprobe -a -x mamprobe || chmod u+w,+x mamprobe done mamprobe generated - exec - test '' = 'mamprobe' || ${STDCMP} 2>/dev/null -s mamprobe ${PACKAGEROOT}/bin/mamprobe || { ${STDMV} ${PACKAGEROOT}/bin/mamprobe ${PACKAGEROOT}/bin/mamprobe.old 2>/dev/null || true; ${STDCP} mamprobe ${PACKAGEROOT}/bin/mamprobe ;} + exec - ${STDCMP} 2>/dev/null -s mamprobe ${PACKAGEROOT}/bin/mamprobe || { ${STDMV} ${PACKAGEROOT}/bin/mamprobe ${PACKAGEROOT}/bin/mamprobe.old 2>/dev/null || true; ${STDCP} mamprobe ${PACKAGEROOT}/bin/mamprobe ;} done ${PACKAGEROOT}/bin/mamprobe generated make ${PACKAGEROOT}/bin/package prev package - exec - test '' = 'package' || ${STDCMP} 2>/dev/null -s package ${PACKAGEROOT}/bin/package || { ${STDMV} ${PACKAGEROOT}/bin/package ${PACKAGEROOT}/bin/package.old 2>/dev/null || true; ${STDCP} package ${PACKAGEROOT}/bin/package ;} + exec - ${STDCMP} 2>/dev/null -s package ${PACKAGEROOT}/bin/package || { ${STDMV} ${PACKAGEROOT}/bin/package ${PACKAGEROOT}/bin/package.old 2>/dev/null || true; ${STDCP} package ${PACKAGEROOT}/bin/package ;} done ${PACKAGEROOT}/bin/package generated make ${PACKAGEROOT}/bin/silent prev silent - exec - test '' = 'silent' || ${STDCMP} 2>/dev/null -s silent ${PACKAGEROOT}/bin/silent || { ${STDMV} ${PACKAGEROOT}/bin/silent ${PACKAGEROOT}/bin/silent.old 2>/dev/null || true; ${STDCP} silent ${PACKAGEROOT}/bin/silent ;} + exec - ${STDCMP} 2>/dev/null -s silent ${PACKAGEROOT}/bin/silent || { ${STDMV} ${PACKAGEROOT}/bin/silent ${PACKAGEROOT}/bin/silent.old 2>/dev/null || true; ${STDCP} silent ${PACKAGEROOT}/bin/silent ;} done ${PACKAGEROOT}/bin/silent generated make ${INSTALLROOT}/bin/crossexec prev crossexec - exec - test '' = 'crossexec' || ${STDCMP} 2>/dev/null -s crossexec ${INSTALLROOT}/bin/crossexec || { ${STDMV} ${INSTALLROOT}/bin/crossexec ${INSTALLROOT}/bin/crossexec.old 2>/dev/null || true; ${STDCP} crossexec ${INSTALLROOT}/bin/crossexec ;} + exec - ${STDCMP} 2>/dev/null -s crossexec ${INSTALLROOT}/bin/crossexec || { ${STDMV} ${INSTALLROOT}/bin/crossexec ${INSTALLROOT}/bin/crossexec.old 2>/dev/null || true; ${STDCP} crossexec ${INSTALLROOT}/bin/crossexec ;} done ${INSTALLROOT}/bin/crossexec generated make ${INSTALLROOT}/bin/filter prev filter - exec - test '' = 'filter' || ${STDCMP} 2>/dev/null -s filter ${INSTALLROOT}/bin/filter || { ${STDMV} ${INSTALLROOT}/bin/filter ${INSTALLROOT}/bin/filter.old 2>/dev/null || true; ${STDCP} filter ${INSTALLROOT}/bin/filter ;} + exec - ${STDCMP} 2>/dev/null -s filter ${INSTALLROOT}/bin/filter || { ${STDMV} ${INSTALLROOT}/bin/filter ${INSTALLROOT}/bin/filter.old 2>/dev/null || true; ${STDCP} filter ${INSTALLROOT}/bin/filter ;} done ${INSTALLROOT}/bin/filter generated make ${INSTALLROOT}/bin/mamake prev mamake - exec - test '' = 'mamake' || ${STDCMP} 2>/dev/null -s mamake ${INSTALLROOT}/bin/mamake || { ${STDMV} ${INSTALLROOT}/bin/mamake ${INSTALLROOT}/bin/mamake.old 2>/dev/null || true; ${STDCP} mamake ${INSTALLROOT}/bin/mamake ;} + exec - ${STDCMP} 2>/dev/null -s mamake ${INSTALLROOT}/bin/mamake || { ${STDMV} ${INSTALLROOT}/bin/mamake ${INSTALLROOT}/bin/mamake.old 2>/dev/null || true; ${STDCP} mamake ${INSTALLROOT}/bin/mamake ;} done ${INSTALLROOT}/bin/mamake generated make __proto_stub note * @@ -773,7 +716,7 @@ make install make ${INSTALLROOT}/lib/probe/C/probe prev ${INSTALLROOT}/lib/probe/C prev C+probe - exec - test '' = 'C+probe' || ${STDCMP} 2>/dev/null -s C+probe ${INSTALLROOT}/lib/probe/C/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/probe ${INSTALLROOT}/lib/probe/C/probe.old 2>/dev/null || true; ${STDCP} C+probe ${INSTALLROOT}/lib/probe/C/probe ;} + exec - ${STDCMP} 2>/dev/null -s C+probe ${INSTALLROOT}/lib/probe/C/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/probe ${INSTALLROOT}/lib/probe/C/probe.old 2>/dev/null || true; ${STDCP} C+probe ${INSTALLROOT}/lib/probe/C/probe ;} done ${INSTALLROOT}/lib/probe/C/probe generated make ${INSTALLROOT}/lib/probe/C/make exec - if test ! -d ${INSTALLROOT}/lib/probe/C/make @@ -795,15 +738,15 @@ make install make ${INSTALLROOT}/lib/probe/C/mam/probe prev ${INSTALLROOT}/lib/probe/C/mam prev mprobe - exec - test '' = 'mprobe' || ${STDCMP} 2>/dev/null -s mprobe ${INSTALLROOT}/lib/probe/C/mam/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/mam/probe ${INSTALLROOT}/lib/probe/C/mam/probe.old 2>/dev/null || true; ${STDCP} mprobe ${INSTALLROOT}/lib/probe/C/mam/probe ;} + exec - ${STDCMP} 2>/dev/null -s mprobe ${INSTALLROOT}/lib/probe/C/mam/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/mam/probe ${INSTALLROOT}/lib/probe/C/mam/probe.old 2>/dev/null || true; ${STDCP} mprobe ${INSTALLROOT}/lib/probe/C/mam/probe ;} done ${INSTALLROOT}/lib/probe/C/mam/probe generated make ${INSTALLROOT}/lib/probe/C/mam/mprobe prev mprobe - exec - test '' = 'mprobe' || ${STDCMP} 2>/dev/null -s mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/mam/mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe.old 2>/dev/null || true; ${STDCP} mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe ;} + exec - ${STDCMP} 2>/dev/null -s mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/mam/mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe.old 2>/dev/null || true; ${STDCP} mprobe ${INSTALLROOT}/lib/probe/C/mam/mprobe ;} done ${INSTALLROOT}/lib/probe/C/mam/mprobe generated make ${INSTALLROOT}/lib/probe/C/make/probe prev probe - exec - test '' = 'probe' || ${STDCMP} 2>/dev/null -s probe ${INSTALLROOT}/lib/probe/C/make/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/make/probe ${INSTALLROOT}/lib/probe/C/make/probe.old 2>/dev/null || true; ${STDCP} probe ${INSTALLROOT}/lib/probe/C/make/probe ;} + exec - ${STDCMP} 2>/dev/null -s probe ${INSTALLROOT}/lib/probe/C/make/probe || { ${STDMV} ${INSTALLROOT}/lib/probe/C/make/probe ${INSTALLROOT}/lib/probe/C/make/probe.old 2>/dev/null || true; ${STDCP} probe ${INSTALLROOT}/lib/probe/C/make/probe ;} done ${INSTALLROOT}/lib/probe/C/make/probe generated make ${INSTALLROOT}/lib/probe/C/make/probe.ini make probe.ini @@ -831,7 +774,7 @@ make install exec - *) : > probe.ini exec - esac done probe.ini generated - exec - test '' = 'probe.ini' || ${STDCMP} 2>/dev/null -s probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini || { ${STDMV} ${INSTALLROOT}/lib/probe/C/make/probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini.old 2>/dev/null || true; ${STDCP} probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini ;} + exec - ${STDCMP} 2>/dev/null -s probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini || { ${STDMV} ${INSTALLROOT}/lib/probe/C/make/probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini.old 2>/dev/null || true; ${STDCP} probe.ini ${INSTALLROOT}/lib/probe/C/make/probe.ini ;} done ${INSTALLROOT}/lib/probe/C/make/probe.ini generated make ${INSTALLROOT}/include/ast exec - if test ! -d ${INSTALLROOT}/include/ast @@ -872,7 +815,7 @@ make install exec - echo " $r" > dl.req exec - rm -f dl.exe dl done dl.req generated - exec - test '' = 'dl.req' || ${STDCMP} 2>/dev/null -s dl.req ${INSTALLROOT}/lib/lib/dl || { ${STDMV} ${INSTALLROOT}/lib/lib/dl ${INSTALLROOT}/lib/lib/dl.old 2>/dev/null || true; ${STDCP} dl.req ${INSTALLROOT}/lib/lib/dl ;} + exec - ${STDCMP} 2>/dev/null -s dl.req ${INSTALLROOT}/lib/lib/dl || { ${STDMV} ${INSTALLROOT}/lib/lib/dl ${INSTALLROOT}/lib/lib/dl.old 2>/dev/null || true; ${STDCP} dl.req ${INSTALLROOT}/lib/lib/dl ;} done ${INSTALLROOT}/lib/lib/dl generated make ${INSTALLROOT}/lib/lib/iconv make iconv.req @@ -902,7 +845,7 @@ make install exec - echo " $r" > iconv.req exec - rm -f iconv.exe iconv done iconv.req generated - exec - test '' = 'iconv.req' || ${STDCMP} 2>/dev/null -s iconv.req ${INSTALLROOT}/lib/lib/iconv || { ${STDMV} ${INSTALLROOT}/lib/lib/iconv ${INSTALLROOT}/lib/lib/iconv.old 2>/dev/null || true; ${STDCP} iconv.req ${INSTALLROOT}/lib/lib/iconv ;} + exec - ${STDCMP} 2>/dev/null -s iconv.req ${INSTALLROOT}/lib/lib/iconv || { ${STDMV} ${INSTALLROOT}/lib/lib/iconv ${INSTALLROOT}/lib/lib/iconv.old 2>/dev/null || true; ${STDCP} iconv.req ${INSTALLROOT}/lib/lib/iconv ;} done ${INSTALLROOT}/lib/lib/iconv generated make ${INSTALLROOT}/lib/lib/w make w.req @@ -934,7 +877,7 @@ make install exec - echo " $r" > w.req exec - rm -f w.exe w w2 done w.req generated - exec - test '' = 'w.req' || ${STDCMP} 2>/dev/null -s w.req ${INSTALLROOT}/lib/lib/w || { ${STDMV} ${INSTALLROOT}/lib/lib/w ${INSTALLROOT}/lib/lib/w.old 2>/dev/null || true; ${STDCP} w.req ${INSTALLROOT}/lib/lib/w ;} + exec - ${STDCMP} 2>/dev/null -s w.req ${INSTALLROOT}/lib/lib/w || { ${STDMV} ${INSTALLROOT}/lib/lib/w ${INSTALLROOT}/lib/lib/w.old 2>/dev/null || true; ${STDCP} w.req ${INSTALLROOT}/lib/lib/w ;} done ${INSTALLROOT}/lib/lib/w generated make ${INSTALLROOT}/lib/lib/intl make intl.req @@ -964,7 +907,7 @@ make install exec - echo " $r" > intl.req exec - rm -f intl.exe intl done intl.req generated - exec - test '' = 'intl.req' || ${STDCMP} 2>/dev/null -s intl.req ${INSTALLROOT}/lib/lib/intl || { ${STDMV} ${INSTALLROOT}/lib/lib/intl ${INSTALLROOT}/lib/lib/intl.old 2>/dev/null || true; ${STDCP} intl.req ${INSTALLROOT}/lib/lib/intl ;} + exec - ${STDCMP} 2>/dev/null -s intl.req ${INSTALLROOT}/lib/lib/intl || { ${STDMV} ${INSTALLROOT}/lib/lib/intl ${INSTALLROOT}/lib/lib/intl.old 2>/dev/null || true; ${STDCP} intl.req ${INSTALLROOT}/lib/lib/intl ;} done ${INSTALLROOT}/lib/lib/intl generated make ${INSTALLROOT}/lib/lib/m make m.req @@ -1004,7 +947,7 @@ make install exec - echo " $r" > m.req exec - rm -f m.exe m m2 m3 m4 m5 m6 done m.req generated - exec - test '' = 'm.req' || ${STDCMP} 2>/dev/null -s m.req ${INSTALLROOT}/lib/lib/m || { ${STDMV} ${INSTALLROOT}/lib/lib/m ${INSTALLROOT}/lib/lib/m.old 2>/dev/null || true; ${STDCP} m.req ${INSTALLROOT}/lib/lib/m ;} + exec - ${STDCMP} 2>/dev/null -s m.req ${INSTALLROOT}/lib/lib/m || { ${STDMV} ${INSTALLROOT}/lib/lib/m ${INSTALLROOT}/lib/lib/m.old 2>/dev/null || true; ${STDCP} m.req ${INSTALLROOT}/lib/lib/m ;} done ${INSTALLROOT}/lib/lib/m generated make ${INSTALLROOT}/lib/lib/nsl make nsl.req @@ -1034,7 +977,7 @@ make install exec - echo " $r" > nsl.req exec - rm -f nsl.exe nsl done nsl.req generated - exec - test '' = 'nsl.req' || ${STDCMP} 2>/dev/null -s nsl.req ${INSTALLROOT}/lib/lib/nsl || { ${STDMV} ${INSTALLROOT}/lib/lib/nsl ${INSTALLROOT}/lib/lib/nsl.old 2>/dev/null || true; ${STDCP} nsl.req ${INSTALLROOT}/lib/lib/nsl ;} + exec - ${STDCMP} 2>/dev/null -s nsl.req ${INSTALLROOT}/lib/lib/nsl || { ${STDMV} ${INSTALLROOT}/lib/lib/nsl ${INSTALLROOT}/lib/lib/nsl.old 2>/dev/null || true; ${STDCP} nsl.req ${INSTALLROOT}/lib/lib/nsl ;} done ${INSTALLROOT}/lib/lib/nsl generated make ${INSTALLROOT}/lib/lib/socket make socket.req @@ -1065,7 +1008,7 @@ make install exec - echo " $r" > socket.req exec - rm -f socket.exe socket nsl done socket.req generated - exec - test '' = 'socket.req' || ${STDCMP} 2>/dev/null -s socket.req ${INSTALLROOT}/lib/lib/socket || { ${STDMV} ${INSTALLROOT}/lib/lib/socket ${INSTALLROOT}/lib/lib/socket.old 2>/dev/null || true; ${STDCP} socket.req ${INSTALLROOT}/lib/lib/socket ;} + exec - ${STDCMP} 2>/dev/null -s socket.req ${INSTALLROOT}/lib/lib/socket || { ${STDMV} ${INSTALLROOT}/lib/lib/socket ${INSTALLROOT}/lib/lib/socket.old 2>/dev/null || true; ${STDCP} socket.req ${INSTALLROOT}/lib/lib/socket ;} done ${INSTALLROOT}/lib/lib/socket generated make ${INSTALLROOT}/lib/lib/dbm make dbm.req @@ -1105,26 +1048,23 @@ make install exec - echo " $r" > dbm.req exec - rm -f dbm.exe db gdbm gdbm1 gdbm2 done dbm.req generated - exec - test '' = 'dbm.req' || ${STDCMP} 2>/dev/null -s dbm.req ${INSTALLROOT}/lib/lib/dbm || { ${STDMV} ${INSTALLROOT}/lib/lib/dbm ${INSTALLROOT}/lib/lib/dbm.old 2>/dev/null || true; ${STDCP} dbm.req ${INSTALLROOT}/lib/lib/dbm ;} + exec - ${STDCMP} 2>/dev/null -s dbm.req ${INSTALLROOT}/lib/lib/dbm || { ${STDMV} ${INSTALLROOT}/lib/lib/dbm ${INSTALLROOT}/lib/lib/dbm.old 2>/dev/null || true; ${STDCP} dbm.req ${INSTALLROOT}/lib/lib/dbm ;} done ${INSTALLROOT}/lib/lib/dbm generated done install virtual make test make test.iffe - prev iffe make iffe.tst done iffe.tst - exec - regress iffe.tst iffe + exec - exec "$SHELL" "$INSTALLROOT/bin/regress" iffe.tst iffe done test.iffe virtual make test.mamake - prev mamake make mamake.tst - meta mamake.tst %.rt>%.tst mamake.rt mamake make mamake.rt done mamake.rt - exec - if [[ "1" || "mamake.rt" -nt "mamake.tst" ]] - exec - then mktest --style=regress mamake.rt > mamake.tst + exec - if test mamake.rt -nt mamake.tst + exec - then "$SHELL" "$INSTALLROOT/bin/mktest" --style=regress mamake.rt > mamake.tst exec - fi done mamake.tst generated - exec - regress mamake.tst mamake + exec - exec "$SHELL" "$INSTALLROOT/bin/regress" mamake.tst mamake done test.mamake virtual done test dontcare virtual diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/README-mamake.md b/cde/programs/dtksh/ksh93/src/cmd/INIT/README-mamake.md new file mode 100644 index 000000000..9525dc7b5 --- /dev/null +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/README-mamake.md @@ -0,0 +1,170 @@ +## mamake and the MAM language ## + +MAM (Make Abstract Machine) is a simple rule-based make language +that is implemented in just six four-letter commands and five attributes, +yet allows unlimited flexibility as it can execute arbitrary shell code. +The program implementing MAM, `mamake`, +is a portable C90 program written in a single file, `mamake.c`. +This allows ksh 93u+m, +or other programs using this build system, +to be built using only a standard C compiler and utilities installation +without any other dependencies or complications. + +MAM was designed by Glenn Fowler at AT&T. +The [original documentation](http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html) +for MAM specified a more extensive language than was actually implemented in `mamake.c`, +while the `ignore` attribute is not documented there. +This file documents the MAM implementation that we are actually using. + +`mamake` processes make files called `Mamfile`. +These were originally generated by a complex AT&T make system called `nmake`. +The intention was for `mamake` to process generated Mamfiles only +and not for it to replace `make`. +Yet, we are using it as our `make` in the ksh 93u+m distribution. +`nmake` was slow, brittle, and did not work on some modern systems, e.g. macOS. +It was not worth fixing because it is about as complex as ksh itself -- +whereas `mamake` is simple and portable, and offers all the same flexibility. + +Compared to the 2012-08-01 AT&T distribution, +ksh 93u+m made a few minor changes to `mamake` that make it easier to maintain Mamfiles by hand: +* All Mamfiles have been indented for legibility. (See `bin/Mamfile_indent` in the distribution.) +* Indentation and word separators may use any whitespace (e.g. tabs), not only spaces. +* Unrecognized commands and rule attributes throw an error instead of being silently ignored. +* Fixed some crashing bugs and memory leaks. + +## Commands ## + +MAM commands have the following basic form: + +*command* [ *argument* [ *operand string* ] ] + +The *command* name consists of four lower-case letters. +Unrecognized commands or attributes are an error. +The *argument* is a single word. +The *operand string* is any arbitrary text until the end of the line. + +### Comments ### + +`note` is the comment command and is ignored. +For historical reasons, `info` and `meta` are also ignored. + +### Rules ### + +`make` *rule* [ *attribute* ... ] +`done` *rule* [ *attribute* ... ] + +A `make`...`done` block defines the target rule named *rule* using the other commands described here. +Unless the `virtual` attribute is used, *rule* names the pathname of the file generated or referenced by the rule. + +Dependencies may be defined in two ways: +1. By nesting `make`...`done` blocks: + the enclosing *rule* is the parent + and the enclosed *rule*s are the prerequisites. +2. By using the `prev` command (see **Referencing previously defined rules** below) + to reference a previous `make`...`done` block. + The dependency is defined as if that block were repeated at the `prev` command's location. + +If the block contains one or more `exec` commands (see **Shell actions** below), +the `done` command executes the shell script defined by them. + +One or more of the following *attribute*s may be specified +by appending them to the `make` or `done` command: +* `archive`: Ignored. + Historically used to mark the generation of an `ar`(1) archive. +* `dontcare`: Marks files that do not need to exist. + If the file exists then its last-modified timestamp is checked and propagated, + otherwise it is silently ignored. +* `generated`: Marks rules that produce output files generated by a shell action. + The `exec` command implicitly assigns this attribute, but it is customary to specify it regardless. +* `ignore`: The timestamp associated with *rule* is ignored in dependency resolution. +* `implicit`: Marks the current rule as an implicit prerequisite of the enclosing parent rule. + An implicit prerequisite can make the parent rule out of date without triggering the parent action. + Implicit prerequisites usually correspond to `#include` prerequisites. + For example, if `foo.o` is generated from `foo.c` and `foo.c` includes `foo.h`, + then `foo.h` should be marked as an implicit prerequisite of `foo.c` + so that touching `foo.h` does not make `foo.c` out of date while making `foo.o` out of date. +* `joint`: Ignored. + Historically used to mark one of a group of rules that are built by a single shell action. +* `virtual`: Marks a rule that is not associated with any file. + The commands within are executed every time the Mamfile is processed. + By convention, a virtual rule named `all` makes everything, + and a virtual rule named `install` performs installation. + +### Referencing previously defined rules ### + +`prev` *rule* [ *attribute* ... ] + +This command references a rule that has previously been defined by `make`...`done`, +regardless of block nesting level. +It can be used to make a rule a prerequisite of multiple `make`...`done` blocks without repeating the rule. +By convention, the *attribute*s of the referenced block are repeated in the `prev` command. +However, `mamake` ignores anything after *rule*. + +### MAM variables ### + +`setv` *variable* [ *defaultvalue* ] + +Defines a new MAM *variable*, optionally assigning the initial *defaultvalue*. +If the *defaultvalue* begins and ends with double quotes (`"`), those are discarded. +If the variable already has a value, the `setv` command is ignored; assigning a new value is not possible. +When `mamake` starts, it imports all environment variables as MAM variables, +so any variable's default value can be overridden by exporting an environment variable by its name. + +MAM variables are referenced using the sh-style `${`...`}` syntax, though the braces are *not* optional. +Any reference to an undefined variable is silently left unexpanded (and not replaced by the empty string). +Expansion of MAM variable references is recursive, i.e., the value may itself contain other variable references. +Beware: there is no reference loop detection. + +[`TODO`: figure out and document advanced expansion syntax supported by `substitute()` in `mamake.c`] + +### Shell actions ### + +`exec` `-` *code* + +One or more `exec` commands within a `make`...`done` block +define a shell script that is executed for *rule*. +The word following `exec` is ignored; by convention it is `-`. +Each `exec` command appends a line of code to the shell script for the current rule. +It is customary for a rule's `exec` commands to be contiguous, but not necessary. +Before adding each line of code to the script, +MAM variable references (see **MAM variables** above) +are expanded; their literal values are inserted into the *code* line +(beware: no quoting is applied!). +When `mamake` encounters the `done` command, +the script is executed by the shell whose path is in the `SHELL` environment variable +or, absent that, by `/bin/sh`. +The `exec` command assigns the `generated` attribute to the current rule, even if it was not specified. + +### Binding libraries ### + +`bind` `-l`*libraryname* [ `dontcare` ] + +An argument of `-l`*libraryname* (or `+l`*libraryname*) +causes a MAM variable `mam_lib`*libraryname* to be defined (see **MAM variables** above). +The variable will contain either the compiler argument for linking to the library *libraryname* +(either the `-l`*libraryname* flag, or the full path in case of a static library) +or, if the `dontcare` attribute is specified, possibly the empty string. +This can be used both for AST libraries shipped with the distribution and for system libraries. +If the library file is found in the distribution, +its time stamp is checked and the current target is marked as outdated if it is newer. + +There is also a mechanism to communicate library dependency information across Mamfiles and `mamake` invocations. +If a file named *libraryname* in the current directory +or an `${INSTALLROOT}/lib/lib/`*libraryname*`.req` file +exists, `mamake` processes each of the words in the form `-l`*libraryname* in its contents +as if they were arguments to `bind` commands +and the resulting values are appended to the value of `mam_lib`*libraryname* +as dependencies separated by spaces. +`mamake` does not create these dependency files; +they are expected to be generated by Mamfile shell actions (see **Shell actions** above). + +If no such dependency file exists, and the `dontcare` attribute is added, +then `mamake` compiles a small test program on the fly to check if the library exists; +if this fails, the `mam_lib`*libraryname* variable will be emptied. + +Any `bind` command whose argument does not start with `-l` or `+l` is ignored. + +[`TODO`: `bind` is not yet fully understood; more `mamake.c` code analysis is required. +In `require()` in `mamake.c` there is some special handling for dynamic libraries. +Note that the `bind` functionality implemented in `mamake.c` +is completely different from that described in the original documentation.] diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/RELEASE b/cde/programs/dtksh/ksh93/src/cmd/INIT/RELEASE index 677586b25..fdf66b88f 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/RELEASE +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/RELEASE @@ -1,3 +1,7 @@ +This file is of historical interest only. For recent changes in both ksh 93u+m +and the accompanying libraries, see the file NEWS in the top-level directory. +____ + 12-07-17 iffe.sh: add C code NOTE("...") to amend --verbose output 12-06-26 iffe.sh: fix "npt foo" to handle function-like macro foo() 12-06-20 package.sh: use $KSH for rt in "results test" @@ -528,7 +532,7 @@ 02-10-18 probe.win32: update for mingw make.probe: add bash workaround to SHELLMAGIC test package.sh: work around yet another Cygwin hassle -02-10-17 iffe.sh: short circuit id check for *[-+/\\]* +02-10-17 iffe.sh: short circuit ID check for *[-+/\\]* 02-10-08 regress.sh: unset FIGNORE to avoid rm . errors package.sh: unset FIGNORE to avoid rm . errors package.sh: $CC must at least compile and executable hello world @@ -580,7 +584,7 @@ 02-03-24 mamake.c: all shell actions wrapped with -c to avoid #! problems 02-03-23 package.sh: recover $PACKAGEROOT/bin/package if not in INIT package package.sh: precheck $CC, not `cc' - package.sh: fix install to use pax -ps to preserve set-uid/gid + package.sh: fix install to use pax -ps to preserve setuid/setgid package.sh: fix install to use list.installed for existing files only 02-03-17 package.sh: fix PAX initialization that was sometimes omitted for read package.sh: fix update delta sync fetch @@ -906,7 +910,7 @@ 96-10-11 iffe: *.iffe and *.iff for iffe src files hostinfo: tighten sgi.mips CPU type check 96-10-01 C.probe: add probe_libdir to catch alpha /usr/shlib -96-09-17 iffe: fix typ bug that failed for single id types! +96-09-17 iffe: fix typ bug that failed for single ID types! 96-08-31 hostinfo: handle recent SGI hinv CPU changes 96-07-17 make sure sizeof(long xxx)>sizeof(xxx) for typ long.xxx 96-05-09 C.probe: drop multiple / in stdinclude diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc b/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc index 0247643e7..022dc08b6 100755 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc @@ -1,4 +1,4 @@ -: stupid stupid stupid to require a non-standard option for ar to work : 2009-10-06 : +: ar requires a non-standard option to work : 2009-10-06 : op=$1 shift diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc-64 b/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc-64 new file mode 100755 index 000000000..ca3122b2c --- /dev/null +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/ar.ibm.risc-64 @@ -0,0 +1,9 @@ +: ar requires a non-standard option to work : 2022-01-14 : + +op=$1 +shift +case $op in +-*) ;; +*) op=-$op ;; +esac +/usr/bin/ar -X64 "$op" "$@" diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/crossexec.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/crossexec.sh index 6b78843bf..ee6d9272f 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/crossexec.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/crossexec.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## : cross compiler a.out execution @@ -34,7 +30,7 @@ case `(getopts '[-][123:xyz]' opt --xyz; echo 0$opt) 2>/dev/null` in ] [-author?Glenn Fowler ] [-copyright?Copyright (c) 1994-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?crossexec - cross compiler a.out execution] [+DESCRIPTION?\bcrossexec\b runs a cross-compiled \acommand\a in an environment that supports a cross-compilation architecture different from the diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/db.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/db.c index 77c636fce..f08efb369 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/db.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/db.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/dl.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/dl.c index 528905fcf..074c4e25c 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/dl.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/dl.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/execrate.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/execrate.sh index 513b43dc9..ecfbffae1 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/execrate.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/execrate.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## : wrapper for .exe challenged Win32 systems/commands @@ -40,7 +36,7 @@ case `(getopts '[-][123:xyz]' opt --xyz; echo 0$opt) 2>/dev/null` in ] [-author?Glenn Fowler ] [-copyright?Copyright (c) 2002-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?execrate - wrapper for .exe challenged commands] [+DESCRIPTION?\bexecrate\b runs \acommand\a after checking the \afile\a operands for standard semantics with respect to \bWin32\b \b.exe\b diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/filter.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/filter.sh index dd46bbfa0..9668c1e81 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/filter.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/filter.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## : convert command that operates on file args to pipeline filter @@ -37,7 +33,7 @@ case `(getopts '[-][123:xyz]' opt --xyz; echo 0$opt) 2>/dev/null` in ] [-author?Glenn Fowler ] [-copyright?Copyright (c) 1994-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?filter - run a command in stdin/stdout mode] [+DESCRIPTION?\bfilter\b runs \acommand\a in a mode that takes input from the \afile\a operands, or from the standard input if no \afile\a diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm.c index 5e21b5908..6c1cae554 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm1.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm1.c index 68d231751..65bb64597 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm1.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm1.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm2.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm2.c index 9e052ff95..507296ffc 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm2.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/gdbm2.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/hello.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/hello.c index 7a6176373..79be4fc9b 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/hello.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/hello.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #ifndef printf diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/iconv.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/iconv.c index 0fd7aa941..48008292f 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/iconv.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/iconv.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #ifndef iconv diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/iffe.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/iffe.sh index 9729587f5..d50cc7372 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/iffe.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/iffe.sh @@ -2,20 +2,17 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2012 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # +# Johnothan King # # # ######################################################################## # Glenn Fowler & Phong Vo @@ -33,9 +30,10 @@ esac case $HOSTTYPE in ibm.*) unset LIBPATH ;; # AIX: avoid failure to link to libiconv esac +set -o noglob command=iffe -version=2021-12-31 +version=2022-01-09 compile() # $cc ... { @@ -170,6 +168,18 @@ pkg() # package pth="$pth . } $*" } +show_test() +{ + case $shell in + ksh) print -n - "$command: test: $* ..." ;; + *) printf '%s: test: %s ...' "$command" "$*" ;; + esac + case $debug in + 0) ;; + *) echo ;; # when debugging, add newline before compiler error messages + esac +} >&$stderr + is() # op name { case $verbose in @@ -217,7 +227,7 @@ is() # op name case $ii in [abcdefghijklmnopqrstuvwxyz]*[abcdefghijklmnopqrstuvwxyz]'{') ii="$ii ... }end" ;; esac - $show "$command: test:" $yy $ii $mm "...$SHOW" >&$stderr + show_test $yy $ii $mm complete=1 ;; esac @@ -241,7 +251,7 @@ success() case $complete:$verbose in 1:1) case $suspended in 1) suspended=0 - $show "$command: test:" $yy $ii $mm "...$SHOW" >&$stderr + show_test $yy $ii $mm ;; esac complete=0 @@ -270,7 +280,7 @@ failure() case $complete:$verbose in 1:1) case $suspended in 1) suspended=0 - $show "$command: test:" $yy $ii $mm "...$SHOW" >&$stderr + show_test $yy $ii $mm ;; esac complete=0 @@ -410,6 +420,8 @@ noisy() copy() # "output-file" "data-that-must-not-be-processed-by-echo" { + # Some ksh88 clones (pdksh, mksh) lack 'printf' as a built-in utility, so if a + # ksh-type shell was detected, use the 'print' built-in for better performance. case $1 in -) case $shell in ksh) print -r - "$2" @@ -564,14 +576,6 @@ optimize=1 occ=cc one= out= -case $( (set -f && set x * && echo $# && set +f) 2>/dev/null ) in -2) posix_noglob="set -f" posix_glob="set +f" ;; -*) case $( (set -F && set x * && echo $# && set +F) 2>/dev/null ) in - 2) posix_noglob="set -F" posix_glob="set +F" ;; - *) posix_noglob=":" posix_glob=":" ;; - esac - ;; -esac puthdr= putlib= pragma= @@ -636,7 +640,7 @@ case $( (getopts '[-][123:xyz]' opt --xyz; echo 0$opt) 2>/dev/null ) in [-author?Phong Vo ] [-copyright?(c) 1994-2012 AT&T Intellectual Property] [-copyright?(c) 2020-2021 Contributors to https://github.com/ksh93/ksh] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?iffe - C compilation environment feature probe] [+DESCRIPTION?\biffe\b is a command interpreter that probes the C compilation environment for features. A feature is any file, option @@ -1183,17 +1187,6 @@ case " $* " in ;; esac -# prompt complications - -case $(print -n aha /dev/null) in -aha) show='print -n' SHOW='' ;; -*) case $(echo -n aha 2>/dev/null) in - -n*) show=echo SHOW='\c' ;; - *) show='echo -n' SHOW='' ;; - esac - ;; -esac - # tmp files cleaned up on exit # status: 0:success 1:failure 2:interrupt @@ -1208,7 +1201,7 @@ case $debug in fi ;; esac -trap "rm -f $core $tmp*" 0 +trap "(set +o noglob; exec rm -f $core $tmp*)" 0 if (:>$tmp.c) 2>/dev/null then rm -f $tmp.c else echo "$command: cannot create tmp files in current dir" >&2 @@ -1261,18 +1254,14 @@ do case $in in *) case $ini in '') if read lin then line=$((line+1)) - $posix_noglob set x $lin - $posix_glob case $# in 1) continue ;; esac else set x fi ;; - *) $posix_noglob - set x $ini - $posix_glob + *) set x $ini ini= ;; esac @@ -1351,13 +1340,8 @@ do case $in in exit 1 ;; esac - case $shell in - ksh) ifelse=${ifstack%%:*} - ifstack=${ifstack#*:} - ;; - *) eval $(echo $ifstack | sed 's,\([^:]*\):\(.*\),ifelse=\1 ifstack=\2,') - ;; - esac + ifelse=${ifstack%%:*} + ifstack=${ifstack#*:} shift ;; *) break @@ -1524,21 +1508,35 @@ do case $in in debug) debug=$arg case $arg in 0) exec 2>&$nullout - set - - show=echo - SHOW= + set +v +x ;; ""|1) exec 2>&$stderr - set - - show=echo - SHOW= + set +v +x ;; 2|3) exec 2>&$stderr - case $shell in - ksh) eval 'PS4="${PS4%+*([ ])}+\$LINENO+ "' + # Useful shell-dependent PS4 trace prompts from modernish. + # The ${foo#{foo%/*/*}/} substitutions below are to trace just the last two + # elements of path names, instead of the full paths which can be very long. + case ${ZSH_VERSION:+Zsh}${NETBSD_SHELL:+Netsh}${KSH_VERSION:+Ksh}${BASH_VERSION:+Bash} in + Zsh) typeset -F SECONDS + PS4='+ [${SECONDS:+${SECONDS%????}s|}${ZSH_SUBSHELL:+S$ZSH_SUBSHELL,}${funcfiletrace:+${funcfiletrace#${funcfiletrace%/*/*}/},}${funcstack:+${funcstack#${funcstack%/*/*}/},}${LINENO:+L$LINENO,}e$?] ' ;; + Netsh) PS4='+ [${ToD:+$ToD|}${LINENO:+L$LINENO,}e$?] ' ;; + Ksh) case $KSH_VERSION in + 'Version '*) + typeset -F SECONDS + PS4='+ [${SECONDS:+${SECONDS%????}s|}${.sh.pid:+P${.sh.pid},}${.sh.subshell:+S${.sh.subshell},}${.sh.file:+${.sh.file#${.sh.file%/*/*}/},}${.sh.fun:+${.sh.fun},}${LINENO:+L$LINENO,}e$?] ' ;; + @\(*) PS4='+ [${EPOCHREALTIME:+${EPOCHREALTIME#???????}s|}${BASHPID:+P$BASHPID,}${LINENO:+L$LINENO,}e$?] ' ;; + esac ;; + Bash) case ${EPOCHREALTIME:+s} in + s) PS4='+ [${EPOCHREALTIME:+${EPOCHREALTIME#???????}s|}' ;; + '') PS4='+ [${SECONDS:+${SECONDS}s|}' ;; + esac + PS4=$PS4'${BASHPID:+P$BASHPID,}${BASH_SOURCE:+${BASH_SOURCE#${BASH_SOURCE%/*/*}/},}${FUNCNAME:+$FUNCNAME,}${LINENO:+L$LINENO,}e$?] ' ;; + '') case ${SECONDS:+s} in + s) PS4='+ [${SECONDS:+${SECONDS}s|}${LINENO:+L$LINENO,}e$?] ' ;; + '') PS4='+ [${LINENO:+L$LINENO,}e$?] ' ;; + esac ;; esac - show=echo - SHOW= set -x ;; *) echo "$command: $arg: debug levels are 0, 1, 2, 3" >&$stderr @@ -1609,7 +1607,7 @@ do case $in in continue ;; nodebug)exec 2>&$nullout - set - + set +v +x continue ;; nodefine) @@ -1880,9 +1878,7 @@ do case $in in done case $eof in 0) line=$((line+1)) - $posix_noglob set x $lin - $posix_glob case $2 in $v) n=$((n+1)) ;; @@ -1977,10 +1973,7 @@ do case $in in ref) cc="$cc $1" occ="$occ $1" case $1 in - -L*) case $shell in - ksh) x=${1#-L} ;; - *) x=$(echo x$1 | sed 's,^x-L,,') ;; - esac + -L*) x=${1#-L} for y in $libpaths do eval $y=\"\$$y:\$x\$${y}_default\" eval export $y @@ -2551,7 +2544,7 @@ int x; do c=${x#-l} case $c in *[!abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_]*) - c=$(echo '' $c | sed -e 's,.*[\\\\/],,' -e 's,\.[^.]*$,,' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g' -e '/^lib./s,^lib,,') + c=$(echo '' $c | sed -e 's,.*[\\/],,' -e 's,\.[^.]*$,,' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g' -e '/^lib./s,^lib,,') ;; esac case $config in @@ -2954,7 +2947,7 @@ int x; *) case $regress in '') case $x in *-*) ;; - *) x=$(pwd | sed -e 's,.*[\\\\/],,' -e 's,\\..*,,' -e 's,^lib,,' -e 's,^,'${x}_',' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g') + *) x=$(pwd | sed -e 's,.*[\\/],,' -e 's,\..*,,' -e 's,^lib,,' -e 's,^,'${x}_',' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g') # ksh n+ bug workaround case $x in *[!_]*) ;; @@ -3005,7 +2998,7 @@ int x; ?*) continue ;; esac case $v in - *.*) for x in $(echo $v | sed 's,\\., ,g') + *.*) for x in $(echo $v | sed 's,\., ,g') do pre="$pre$nl#undef $x" done ;; @@ -3056,13 +3049,10 @@ int x; # set up the candidate lib list for x in $lib $deflib - do case $shell in - ksh) eval 'c=${x#-l}' ;; - *) c=$(echo X$x | sed 's,X-l,,') ;; - esac + do c=${x#-l} case $c in *[!abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_]*) - c=$(echo '' $c | sed -e 's,.*[\\\\/],,' -e 's,\.[^.]*$,,' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g' -e '/^lib./s,^lib,,') + c=$(echo '' $c | sed -e 's,.*[\\/],,' -e 's,\.[^.]*$,,' -e 's,[^abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_],_,g' -e '/^lib./s,^lib,,') ;; esac case $config in @@ -3104,10 +3094,7 @@ int x; $u) ;; *) case $m in hdr_*|lib_*|sys_*) - case $shell in - ksh) u=${u#????} ;; - *) u=$(echo $u | sed 's/....//') ;; - esac + u=${u#????} ;; esac m=HAVE_${u} @@ -3120,10 +3107,7 @@ int x; mth) m=HAVE${u}_MATH ;; npt) m=HAVE${u}_DECL ;; pth) m=${u}_PATH - case $shell in - ksh) m=${m#_} ;; - *) m=$(echo $m | sed 's,^_,,') ;; - esac + m=${m#_} ;; nxt) m=HAVE${u}_NEXT ;; siz) m=SIZEOF${u} ;; @@ -3218,7 +3202,7 @@ $src esac done fi - rm -f ${tmp}s.* + (set +o noglob; exec rm -f ${tmp}s.*) #...INDENT ;; esac @@ -3557,7 +3541,7 @@ $inc *) e='-e /[\\\\\/]sys[\\\\\/]'$f'\\.h"/d' ;; esac if compile $cc -E $tmp.c <&$nullin >$tmp.i - then i=$(sed -e '/^#[line ]*[0123456789][0123456789]*[ ][ ]*"[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:]*[\\\\\/].*[\\\\\/]'$f'\\.h"/!d' $e -e s'/.*"\\(.*\\)".*/\\1/' -e 's,\\\\,/,g' -e 's,///*,/,g' $tmp.i | sed 1q) + then i=$(sed -e '/^#[line ]*[0123456789][0123456789]*[ ][ ]*"[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:]*[\\\/].*[\\\/]'$f'\.h"/!d' $e -e 's/.*"\(.*\)".*/\1/' -e 's,\\,/,g' -e 's,///*,/,g' $tmp.i | sed 1q) case $i in [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]:[\\/]*) ;; @@ -3568,7 +3552,7 @@ $ext $inc #include <$k>" > $tmp.c if compile $cc -E $tmp.c <&$nullin >$tmp.i - then j=$(sed -e '/^#[line ]*[0123456789][0123456789]*[ ][ ]*"[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:]*[\\\\\/].*[\\\\\/]'$f'\\.h"/!d' $e -e s'/.*"\\(.*\\)".*/\\1/' -e 's,\\\\,/,g' -e 's,///*,/,g' $tmp.i | sed 1q) + then j=$(sed -e '/^#[line ]*[0123456789][0123456789]*[ ][ ]*"[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:]*[\\\/].*[\\\/]'$f'\.h"/!d' $e -e 's/.*"\(.*\)".*/\1/' -e 's,\\,/,g' -e 's,///*,/,g' $tmp.i | sed 1q) wi=$(wc < "$i") wj=$(wc < "$j") case $wi in @@ -3592,10 +3576,7 @@ $inc [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]:[\\/]*|[\\/]*) success case $o in - lcl) echo "#if defined(__STDPP__directive)" - echo "__STDPP__directive pragma pp:hosted" - echo "#endif" - echo "#include <$i> /* the native <$f.h> */" + lcl) echo "#include <$i> /* the native <$f.h> */" echo "#undef $m" usr="$usr$nl#define $m 1" echo "#define $m 1" @@ -4000,9 +3981,9 @@ int _iffe_int = $v / 2; if compile $cc -E $tmp.c <&$nullin >$tmp.i then c=$i case $c in - *[\\/]*) c=$(echo $c | sed 's,[\\\\/],[\\\\/],g') ;; + *[\\/]*) c=$(echo $c | sed 's,[\\/],[\\/],g') ;; esac - case $(sed -e '/^#[line ]*1[ ][ ]*"[\\\\\/].*[\\\\\/]'$c'"/!d' $tmp.i) in + case $(sed -e '/^#[line ]*1[ ][ ]*"[\\\/].*[\\\/]'$c'"/!d' $tmp.i) in ?*) break ;; esac fi diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/ignore.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/ignore.sh index 1c16225de..0a57d55df 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/ignore.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/ignore.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## # non-ksh script for the nmake ignore prefix diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/intl.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/intl.c index 803cd5cd5..9aed85d40 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/intl.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/intl.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #ifndef gettext diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m.c index e597bfde9..7ddb5eba7 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m2.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m2.c index 25b1f136c..7575984f7 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m2.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m2.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m3.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m3.c index f630bb9fb..1644663bb 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m3.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m3.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m4.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m4.c index e573b4343..edfe36405 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m4.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m4.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m5.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m5.c index b73f358c6..825efe753 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m5.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m5.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/m6.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/m6.c index fab55f8f8..7cee7d82a 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/m6.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/m6.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/mamake.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/mamake.c index 89b7c697d..2e63730aa 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/mamake.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/mamake.c @@ -1,21 +1,17 @@ /*********************************************************************** * * * This software is part of the ast package * -* Copyright (c) 1990-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 1990-2013 AT&T Intellectual Property * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #pragma clang diagnostic ignored "-Wdeprecated-register" @@ -27,7 +23,7 @@ * coded for portability */ -#define RELEASE_DATE "2021-01-21" +#define RELEASE_DATE "2022-07-15" static char id[] = "\n@(#)$Id: mamake (ksh 93u+m) " RELEASE_DATE " $\0\n"; #if _PACKAGE_ast @@ -38,9 +34,10 @@ static char id[] = "\n@(#)$Id: mamake (ksh 93u+m) " RELEASE_DATE " $\0\n"; static const char usage[] = "[-?\n@(#)$Id: mamake (ksh 93u+m) " RELEASE_DATE " $\n]" "[-author?Glenn Fowler ]" +"[-author?Contributors to https://github.com/ksh93/ksh]" "[-copyright?(c) 1994-2012 AT&T Intellectual Property]" -"[-copyright?(c) 2020-2021 Contributors to https://github.com/ksh93/ksh]" -"[-license?http://www.eclipse.org/org/documents/epl-v10.html]" +"[-copyright?(c) 2020-2022 Contributors to ksh 93u+m]" +"[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html]" "[+NAME?mamake - make abstract machine make]" "[+DESCRIPTION?\bmamake\b reads \amake abstract machine\a target and" " prerequisite file descriptions from a mamfile (see \b-f\b) and executes" @@ -70,11 +67,8 @@ static const char usage[] = "[n:?Print actions but do not execute. Recursion actions (see \b-r\b) are still" " executed. Use \b-N\b to disable recursion actions too.]" "[r:?Recursively make leaf directories matching \apattern\a. Only leaf" -" directories containing a makefile named \bNmakefile\b, \bnmakefile\b," -" \bMakefile\b or \bmakefile\b are considered. The first makefile" -" found in each leaf directory is scanned for leaf directory" -" prerequisites; the recursion order is determined by a topological sort" -" of these prerequisites.]:[pattern]" +" directories containing a file named \bMamfile\b" +" are considered.]:[pattern]" "[C:?Do all work in \adirectory\a. All messages will mention" " \adirectory\a.]:[directory]" "[D:?Set the debug trace level to \alevel\a. Higher levels produce more" @@ -99,7 +93,7 @@ static const char usage[] = #define elementsof(x) (sizeof(x)/sizeof(x[0])) #define newof(p,t,n,x) ((p)?(t*)realloc((char*)(p),sizeof(t)*(n)+(x)):(t*)calloc(1,sizeof(t)*(n)+(x))) -#define NiL ((char*)0) +#define NiL 0 #endif @@ -269,7 +263,15 @@ extern char** environ; static void usage() { - fprintf(stderr, "Usage: %s [-iknFKNV] [-f mamfile] [-r pattern] [-C directory] [-D level] [target ...] [name=value ...]\n", state.id); + fprintf(stderr, "Usage: %s" + " [-iknFKNV]" + " [-f Mamfile]" + " [-r pattern]" + " [-C directory]" + " [-D level]" + " [target ...]" + " [name=value ...]" + "\n", state.id); exit(2); } @@ -693,6 +695,7 @@ view(void) { p = state.pwd + strlen(state.pwd); while (p > state.pwd) + { if (*--p == '/') { if (p == state.pwd) @@ -707,6 +710,7 @@ view(void) break; } } + } if (p <= state.pwd) report(3, "cannot determine viewpath offset", s, (unsigned long)0); } @@ -873,8 +877,8 @@ substitute(Buf_t* buf, register char* s) { if (a && t[0] == 'm' && t[1] == 'a' && t[2] == 'm' && t[3] == '_' && t[4] == 'l' && t[5] == 'i' && t[6] == 'b') { - for (t = v; *t == ' '; t++); - for (; *t && *t != ' '; t++); + for (t = v; isspace(*t); t++); + for (; *t && !isspace(*t); t++); if (*t) *t = 0; else @@ -990,6 +994,7 @@ find(Buf_t* buf, char* file, struct stat* st) else vp = vp->next; if (vp) + { do { if (node) @@ -1013,6 +1018,7 @@ find(Buf_t* buf, char* file, struct stat* st) return s; } } while (vp = vp->next); + } } return 0; } @@ -1022,7 +1028,7 @@ find(Buf_t* buf, char* file, struct stat* st) */ static unsigned long -bind(Rule_t* r) +bindfile(Rule_t* r) { char* s; Buf_t* buf; @@ -1143,10 +1149,7 @@ input(void) else if (*state.input && *(e = state.input + strlen(state.input) - 1) == '\n') *e = 0; state.sp->line++; - e = state.input; - while (isspace(*e)) - e++; /* allow indentation */ - return e; + return state.input; } /* @@ -1242,9 +1245,9 @@ run(Rule_t* r, register char* s) i = 2; else { - for (i = 3; *(t + i) == ' ' || *(t + i) == '\t'; i++); + for (i = 3; isspace(*(t + i)); i++); *s = c; - for (s = t + i; *s && *s != ' ' && *s != '\t' && *s != '\n'; s++); + for (s = t + i; *s && !isspace(*s); s++); c = *s; *s = 0; append(buf, t + 2); @@ -1315,7 +1318,7 @@ path(Buf_t* buf, char* s, int must) int o; Stat_t st; - for (e = s; *e && *e != ' ' && *e != '\t'; e++); + for (e = s; *e && !isspace(*e); e++); t = *e; if ((x = status(buf, 0, s, &st)) && (st.st_mode & (S_IXUSR|S_IXGRP|S_IXOTH))) return x; @@ -1416,30 +1419,46 @@ attributes(register Rule_t* r, register char* s) for (;;) { - for (; *s == ' '; s++); - for (t = s; *s && *s != ' '; s++); + int flag = 0; + for (; isspace(*s); s++); + for (t = s; *s && !isspace(*s); s++); if (!(n = s - t)) break; switch (*t) { case 'd': if (n == 8 && !strncmp(t, "dontcare", n)) - r->flags |= RULE_dontcare; + flag = RULE_dontcare; break; case 'g': if (n == 9 && !strncmp(t, "generated", n)) - r->flags |= RULE_generated; + flag = RULE_generated; break; case 'i': if (n == 6 && !strncmp(t, "ignore", n)) - r->flags |= RULE_ignore; + flag = RULE_ignore; else if (n == 8 && !strncmp(t, "implicit", n)) - r->flags |= RULE_implicit; + flag = RULE_implicit; break; case 'v': if (n == 7 && !strncmp(t, "virtual", n)) - r->flags |= RULE_virtual; + flag = RULE_virtual; break; + case 'a': + if (n == 7 && !strncmp(t, "archive", n)) + flag = -1; /* ignore (not implemented) */ + break; + case 'j': + if (n == 5 && !strncmp(t, "joint", n)) + flag = -1; /* ignore (not implemented) */ + break; + } + if(flag > 0) + r->flags |= flag; + else if(flag == 0) + { + t[n] = '\0'; + report(3, "unknown attribute", t, (unsigned long)0); } } } @@ -1521,13 +1540,13 @@ require(char* lib, int dontcare) { for (;;) { - while ((c = fgetc(f)) == ' ' || c == '\t' || c == '\n'); + while (isspace(c = fgetc(f))); if (c == EOF) break; do { add(tmp, c); - } while ((c = fgetc(f)) != EOF && c != ' ' && c != '\t' && c != '\n'); + } while ((c = fgetc(f)) != EOF && !isspace(c)); s = use(tmp); if (s[0] && (s[0] != '-' || s[1])) { @@ -1591,7 +1610,7 @@ make(Rule_t* r) state.active++; if (*r->name) { - z = bind(r); + z = bindfile(r); state.indent++; report(-1, r->name, "make", r->time); } @@ -1599,29 +1618,38 @@ make(Rule_t* r) z = 0; buf = buffer(); cmd = 0; + /* + * Parse lines + */ while (s = input()) { - for (; *s == ' '; s++); - for (; isdigit(*s); s++); - for (; *s == ' '; s++); - for (u = s; *s && *s != ' '; s++); + /* skip initial whitespace and empty line */ + for (; isspace(*s); s++); + if (!*s) + continue; + /* isolate command name (u), argument word (t), and the operand string (v) */ + for (u = s; *s && !isspace(*s); s++); if (*s) { - for (*s++ = 0; *s == ' '; s++); - for (t = s; *s && *s != ' '; s++); + for (*s++ = 0; isspace(*s); s++); + for (t = s; *s && !isspace(*s); s++); if (*s) - for (*s++ = 0; *s == ' '; s++); + for (*s++ = 0; isspace(*s); s++); v = s; } else t = v = s; + /* enforce 4-letter lowercase command name */ + if(u[0]<'a' || u[0]>'z' || u[1]<'a' || u[1]>'z' || u[2]<'a' || u[2]>'z' || u[3]<'a' || u[3]>'z' || u[4] && !isspace(u[4])) + report(3, "not a command name", u, (unsigned long)0); switch (KEY(u[0], u[1], u[2], u[3])) { case KEY('b','i','n','d'): if ((t[0] == '-' || t[0] == '+') && t[1] == 'l' && (s = require(t, !strcmp(v, "dontcare"))) && strncmp(r->name, "FEATURE/", 8) && strcmp(r->name, "configure.h")) + { for (;;) { - for (t = s; *s && *s != ' '; s++); + for (t = s; *s && !isspace(*s); s++); if (*s) *s = 0; else @@ -1630,7 +1658,7 @@ make(Rule_t* r) { q = rule(expand(buf, t)); attributes(q, v); - x = bind(q); + x = bindfile(q); if (z < x) z = x; if (q->flags & RULE_error) @@ -1638,12 +1666,13 @@ make(Rule_t* r) } if (!s) break; - for (*s++ = ' '; *s == ' '; s++); + for (*s++ = ' '; isspace(*s); s++); } + } continue; case KEY('d','o','n','e'): q = rule(expand(buf, t)); - if (q != r) + if (q != r && t[0] != '$') report(2, "improper done statement", t, (unsigned long)0); attributes(r, v); if (cmd && state.active && (state.force || r->time < z || !r->time && !z)) @@ -1726,8 +1755,13 @@ make(Rule_t* r) probe(); } continue; - default: + case KEY('i','n','f','o'): + case KEY('n','o','t','e'): + case KEY('m','e','t','a'): + /* comment command */ continue; + default: + report(3, "unknown command", u, (unsigned long)0); } break; } @@ -1804,7 +1838,7 @@ update(register Rule_t* r) } /* - * scan makefile prereqs + * scan Mamfile prereqs */ static int @@ -1863,8 +1897,8 @@ scan(Dict_item_t* item, void* handle) j = p = 0; while (*s) { - for (k = 1; (i = *s) == ' ' || i == '\t' || i == '"' || i == '\''; s++); - for (t = s; (i = *s) && i != ' ' && i != '\t' && i != '"' && i != '\'' && i != '\\' && i != ':'; s++) + for (k = 1; isspace(i = *s) || i == '"' || i == '\''; s++); + for (t = s; (i = *s) && !isspace(i) && i != '"' && i != '\'' && i != '\\' && i != ':'; s++) if (i == '/') t = s + 1; else if (i == '.' && *(s + 1) != 'c' && *(s + 1) != 'C' && *(s + 1) != 'h' && *(s + 1) != 'H' && t[0] == 'l' && t[1] == 'i' && t[2] == 'b') @@ -1892,7 +1926,7 @@ scan(Dict_item_t* item, void* handle) t = use(buf); } if (i == ':') - while (*s && (*s == ' ' || *s == '\t')) + while (*s && isspace(*s)) s++; } } @@ -1906,7 +1940,9 @@ scan(Dict_item_t* item, void* handle) k = 0; } else + { for (u = t; *u; u++) + { if (isupper(*u)) *u = tolower(*u); else if (!isalnum(*u)) @@ -1914,16 +1950,22 @@ scan(Dict_item_t* item, void* handle) k = 0; break; } + } + } } else if (t[0] != 'l' || t[1] != 'i' || t[2] != 'b') k = 0; else + { for (u = t + 3; *u; u++) + { if (!isalnum(*u)) { k = 0; break; } + } + } if (k && ((q = (Rule_t*)search(state.leaf, t, NiL)) && q != r || *t++ == 'l' && *t++ == 'i' && *t++ == 'b' && *t && (q = (Rule_t*)search(state.leaf, t, NiL)) && q != r)) { for (t = w = r->name; *w; w++) @@ -2085,11 +2127,16 @@ recurse(char* pattern) search(state.vars, "MAMAKEARGS", duplicate(use(state.opt) + 1)); /* - * scan the makefile and descend + * scan the Mamfile and descend */ walk(state.rules, scan, NiL); - state.view = 0; + while (state.view) + { + View_t *prev = state.view; + state.view = state.view->next; + free(prev); + } walk(state.rules, descend, NiL); return 0; } @@ -2319,7 +2366,9 @@ main(int argc, char** argv) */ for (e = environ; s = *e; e++) + { for (t = s; *t; t++) + { if (*t == '=') { *t = 0; @@ -2327,6 +2376,8 @@ main(int argc, char** argv) *t = '='; break; } + } + } /* * grab the command line targets and variable definitions @@ -2335,6 +2386,7 @@ main(int argc, char** argv) while (s = *argv++) { for (t = s; *t; t++) + { if (*t == '=') { v = t + 1; @@ -2351,6 +2403,7 @@ main(int argc, char** argv) *t = c; break; } + } if (!*t) { /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/mamprobe.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/mamprobe.sh index 294a9aaf6..8d3d831c4 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/mamprobe.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/mamprobe.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## ### this script contains archaic constructs that work with all sh variants ### diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/mkdir.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/mkdir.sh index 78830f1e9..0c7b30e49 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/mkdir.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/mkdir.sh @@ -4,16 +4,11 @@ # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # # # diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/mktest.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/mktest.sh index cc237b7ee..1822e8b8f 100755 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/mktest.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/mktest.sh @@ -2,20 +2,17 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # +# Johnothan King # # # ######################################################################## : mktest - generate regress or shell regression test scripts @@ -37,13 +34,13 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in ] [-author?Glenn Fowler ] [-copyright?Copyright (c) 2005-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?mktest - generate a regression test scripts] [+DESCRIPTION?\bmktest\b generates regression test scripts from test template commands in the \aunit\a.\brt\b file. The generated test script writes temporary output to '$PREFIX$'\aunit\a.tmp and compares it to the expected output in '$PREFIX$'\aunit\a.out. Run the test - script with the \b--accept\b option to (re)generate the + script with the \b--accept\b option to (re)generate '$PREFIX$'\aunit\a.out.] [s:style?The script style:]:[style:='$STYLE$'] { diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/mprobe.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/mprobe.sh index 92279603f..926cf94df 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/mprobe.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/mprobe.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## : mam probe script diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/nsl.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/nsl.c index f168303ea..2ce018329 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/nsl.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/nsl.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/p.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/p.c index 73f826cc0..809ceb5db 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/p.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/p.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/package.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/package.sh index 1559ef771..cf4cfab6a 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/package.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/package.sh @@ -2,20 +2,17 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2012 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # +# Trey Valenta # # # ######################################################################## ### this sh script is POSIX compliant and compatible with shell bugs ### @@ -109,13 +106,13 @@ command=${0##*/} case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in 0123) USAGE=$' [-? -@(#)$Id: '$command$' (ksh 93u+m) 2021-12-31 $ +@(#)$Id: '$command$' (ksh 93u+m) 2022-08-20 $ ] [-author?Glenn Fowler ] [-author?Contributors to https://github.com/ksh93/ksh] [-copyright?(c) 1994-2012 AT&T Intellectual Property] -[-copyright?(c) 2020-2021 Contributors to https://github.com/ksh93/ksh] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-copyright?(c) 2020-2022 Contributors to https://github.com/ksh93/ksh] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?'$command$' - build, test and install ksh 93u+m] [+DESCRIPTION?The \b'$command$'\b command is the main control script for building and installing KornShell 93u+m. @@ -144,6 +141,8 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in [+flat?With the \bmake\b action, create a flat view by linking all files from \b$INSTALLROOT\b, minus \b*.old\b files, onto their corresponding path under \b$PACKAGEROOT\b. + Subsequent \bmake\b actions will update an existing flat view + whether or not \bflat\b is specified. Only one architecture can have a flat view. If \bflat\b is specified with the \bclean\b action, then only clean up this flat view and do not delete \b$INSTALLROOT\b.] @@ -194,7 +193,17 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in release incompatibilities has for the most part been futile.] } - [+install\b To be reimplemented.] + [+install\b [ \adest_dir\a ]] [ \acommand\a ... ]]?Install commands + from the \b$INSTALLROOT\b tree + into appropriate subdirectories of \adest_dir\a. + If \adest_dir\a does not exist, + then it and any necessary subdirectories are created. + \adest_dir\a can be a directory like \a/usr/local\a + to install the \acommand\as directly, + or a temporary directory like \a/tmp/pkgtree/usr\a + to prepare for packaging with operating system-specific tools. + If no \acommand\a is specified, + then \aksh\a and \ashcomp\a are assumed.] [+make\b [ \apackage\a ]] [ \aoption\a ... ]] [ \atarget\a ... ]]?Build and install. The default \atarget\a is \binstall\b, which makes and installs \apackage\a. If the standard output is a terminal @@ -213,24 +222,24 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in must contain an \begrep\b(1) expression of result lines to be ignored. \bfailed\b lists failures only and \bpath\b lists the results file path name only.] - [+test\b [ \aargument\a ... ]]?Run the regression tests for - \bksh\b. If the standard output is a terminal then the + [+test\b [ \b\adir\a\b ]]\b?Run all available default regression tests. + If the optional \adir\a argument (such as \bsrc/cmd/ksh93\b) is given, + only the tests in that directory are run. + If the standard output is a terminal then the output is also captured in \b$INSTALLROOT/lib/package/gen/test.out\b. - \bksh\b must be made before it can be tested. - All \aargument\as following \atest\a are passed to \bbin/shtests\b. + Programs must be made before they can be tested. + For \bksh\b, a separate \bshtests\b command is available that allows + passing arguments to select and tune the regression tests. See \bbin/shtests --man\b for more information.] - [+use\b [ \auid\a | \apackage\a | . [ 32 | 64 ]] | 32 | 64 | - ]] [ command ...]]?Run + [+use\b [ \auid\a | \apackage\a | . | - [ command ... ]] ]]?Run \acommand\a, or an interactive shell if \acommand\a is omitted, - with the environment initialized for using the package (can you - say \ashared\a \alibrary\a or \adll\a without cussing?) If + with the environment initialized for using the package. If \auid\a or \apackage\a or \a.\a is specified then it is used to determine a \b$PACKAGEROOT\b, possibly different from the current directory. For example, to try out bozo'\'$'s package: \bpackage use bozo\b. The \buse\b action may be run from any directory. If the file \b$INSTALLROOT/lib/package/profile\b is - readable then it is sourced to initialize the environment. 32 or 64 - implies \b$PACKAGEROOT\b of . and specifies the target architecture - word size (which may be silently ignored).] + readable then it is sourced to initialize the environment.] [+view\b?Initialize the architecture specific viewpath hierarchy. The \bmake\b action implicitly calls this action.] } @@ -244,7 +253,7 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in [+?Independent \b$PACKAGEROOT\b hierarchies can be combined by appending \b$INSTALLROOT:$PACKAGEROOT\b pairs to \bVPATH\b. The \bVPATH\b viewing order is from left to right.] -[+?\b$HOSTYPE\b names the current binary architecture and is determined +[+?\b$HOSTTYPE\b names the current binary architecture and is determined by the output of \b'$command$'\b (no arguments). The \b$HOSTTYPE\b naming scheme is used to separate incompatible executable and object formats. All architecture specific binaries are placed under \b$INSTALLROOT\b @@ -253,7 +262,7 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in makefile compiler workarounds, e.g., if \b$HOSTTYPE\b matches \bhp.*\b then turn off the optimizer for these objects. All other architecture dependent logic is handled either by the \bAST\b \biffe\b(1) command or - by component specific configure scripts. Explicit \b$HOSTYPE\b + by component specific configure scripts. Explicit \b$HOSTTYPE\b values matching *,*cc*[,-*,...]] optionally set the default \bCC\b and \bCCFLAGS\b. This is handy for build farms that support different compilers on the same architecture.] @@ -406,9 +415,10 @@ DESCRIPTION Show environment and actions but do not execute. flat With the make action, create a flat view by linking all files from $INSTALLROOT, minus *.old files, onto their corresponding path under - $PACKAGEROOT. Only one architecture can have a flat view. If flat is - specified with the clean action, then only clean up this flat view - and do not delete $INSTALLROOT. + $PACKAGEROOT. Subsequent make actions will update an existing flat + view whether or not flat is specified. Only one architecture can have + a flat view. If flat is specified with the clean action, then only + clean up this flat view and do not delete $INSTALLROOT. force Force the action to override saved state. never Run make -N and show other actions. only Only operate on the specified packages. @@ -451,7 +461,14 @@ DESCRIPTION similar, predictable style. OS point release information is avoided as much as possible, but vendor resistance to release incompatibilities has for the most part been futile. - install To be reimplemented. + install [ dest_dir ] [ command ... ] + Install commands from the $INSTALLROOT tree into appropriate + subdirectories of dest_dir. If dest_dir does not exist, then it and + any necessary subdirectories are created. dest_dir can be a directory + like /usr/local to install the commands directly, or a temporary + directory like /tmp/pkgtree/usr to prepare for packaging with + operating system-specific tools. If no command is specified, then ksh + and shcomp are assumed. make [ package ] [ option ... ] [ target ... ] Build and install. The default target is install, which makes and installs package. If the standard output is a terminal then the @@ -468,23 +485,23 @@ DESCRIPTION $HOME/.pkgresults, if it exists, must contain an egrep(1) expression of result lines to be ignored. failed lists failures only and path lists the results file path name only. - test [ argument ... ] - Run the regression tests for ksh. If the standard output is a - terminal then the output is also captured in - $INSTALLROOT/lib/package/gen/test.out. ksh must be made before it can - be tested. All arguments following test are passed to bin/shtests. - See bin/shtests --man for more information. - use [ uid | package | . [ 32 | 64 ] | 32 | 64 | - ] [ command ...] + test [ dir ] + Run all available default regression tests. If the optional dir + argument (such as src/cmd/ksh93) is given, only the tests in that + directory are run. If the standard output is a terminal then the + output is also captured in $INSTALLROOT/lib/package/gen/test.out. + Programs must be made before they can be tested. For ksh, a separate + shtests command is available that allows passing arguments to select + and tune the regression tests. See bin/shtests --man for more + information. + use [ uid | package | . | - [ command ... ] ] Run command, or an interactive shell if command is omitted, with the - environment initialized for using the package (can you say shared - library or dll without cussing?) If uid or package or . is specified - then it is used to determine a $PACKAGEROOT, possibly different from - the current directory. For example, to try out bozo'\''s package: - package use bozo. The use action may be run from any directory. If - the file $INSTALLROOT/lib/package/profile is readable then it is - sourced to initialize the environment. 32 or 64 implies $PACKAGEROOT - of . and specifies the target architecture word size (which may be - silently ignored). + environment initialized for using the package. If uid or package or . + is specified then it is used to determine a $PACKAGEROOT, possibly + different from the current directory. For example, to try out bozo'\''s + package: package use bozo. The use action may be run from any + directory. If the file $INSTALLROOT/lib/package/profile is readable + then it is sourced to initialize the environment. view Initialize the architecture specific viewpath hierarchy. The make action implicitly calls this action. @@ -500,7 +517,7 @@ DETAILS $INSTALLROOT:$PACKAGEROOT pairs to VPATH. The VPATH viewing order is from left to right. - $HOSTYPE names the current binary architecture and is determined by the + $HOSTTYPE names the current binary architecture and is determined by the output of package (no arguments). The $HOSTTYPE naming scheme is used to separate incompatible executable and object formats. All architecture specific binaries are placed under $INSTALLROOT @@ -509,7 +526,7 @@ DETAILS workarounds, e.g., if $HOSTTYPE matches hp.* then turn off the optimizer for these objects. All other architecture dependent logic is handled either by the AST iffe(1) command or by component specific configure scripts. Explicit - $HOSTYPE values matching *,*cc*[,-*,...] optionally set the default CC and + $HOSTTYPE values matching *,*cc*[,-*,...] optionally set the default CC and CCFLAGS. This is handy for build farms that support different compilers on the same architecture. @@ -529,12 +546,12 @@ SEE ALSO mamake(1), pax(1), pkgadd(1), pkgmk(1), rpm(1), sh(1), tar(1), optget(3) IMPLEMENTATION - version package (ksh 93u+m) 2021-12-31 + version package (ksh 93u+m) 2022-08-20 author Glenn Fowler author Contributors to https://github.com/ksh93/ksh copyright (c) 1994-2012 AT&T Intellectual Property - copyright (c) 2020-2021 Contributors to https://github.com/ksh93/ksh - license http://www.eclipse.org/org/documents/epl-v10.html' + copyright (c) 2020-2022 Contributors to https://github.com/ksh93/ksh + license https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html' case $1 in html) echo "" ;; esac @@ -599,7 +616,7 @@ case $_PACKAGE_HOSTTYPE_ in ;; esac KEEP_PACKAGEROOT=0 -KEEP_SHELL=0 +KEEP_SHELL=0 # set to 1 if SHELL is a known-good system shell, 2 if SHELL supplied by user USER_VPATH= args= assign= @@ -637,7 +654,7 @@ do case $i in ;; SHELL=*)eval $n='$'v case $SHELL in - ?*) KEEP_SHELL=1 ;; + ?*) KEEP_SHELL=2 ;; esac ;; VPATH=*)eval USER_$n='$'v @@ -665,111 +682,11 @@ case $CC in *) export CC ;; esac -# Add build type flags via KSH_RELFLAGS, which is used in src/cmd/ksh93/Mamfile. -# (Avoid using CCFLAGS; setting it would overwrite autodetected optimization flags.) -ksh_relflags= -case $(git branch 2>/dev/null) in -'' | *\*\ [0-9]*.[0-9]*) - # If we're not on a git branch (tarball) or on a branch that starts - # with a number (release branch), then compile as a release version - ksh_relflags="${ksh_relflags:+$ksh_relflags }-D_AST_ksh_release" ;; -*) # Otherwise, add 8-character git commit hash if available, and if the working dir is clean - git_commit=$(git status >/dev/null 2>&1 && git diff-index --quiet HEAD && git rev-parse --short=8 HEAD) - case $git_commit in - ????????) - ksh_relflags="${ksh_relflags:+$ksh_relflags }-D_AST_git_commit=\\\"$git_commit\\\"" ;; - esac - unset git_commit ;; -esac -case $ksh_relflags in -?*) # add the extra flags as an argument to mamake - assign="${assign:+$assign }KSH_RELFLAGS=\"\$ksh_relflags\"" ;; -esac - -# Add ksh compile-options via KSH_SHOPTFLAGS. -SHOPT() -{ - case $1 in - *=?*) ksh_shoptflags="${ksh_shoptflags:+$ksh_shoptflags }-DSHOPT_$1" ;; - esac -} -ksh_shoptflags= -shopt_sh='src/cmd/ksh93/SHOPT.sh' # this script calls SHOPT() to set options -if test -f "$shopt_sh" -then . "$shopt_sh" -else echo "WARNING: $shopt_sh is missing" >&2 -fi -case $ksh_shoptflags in -?*) # add the extra flags as an argument to mamake - assign="${assign:+$assign }KSH_SHOPTFLAGS=\"\$ksh_shoptflags\"" ;; -esac - # grab action specific args case $action in use) case $1 in - .|32|64)case $1 in - 32|64) bit=$1 ;; - esac - shift - - # HOSTTYPE specific setup - - case $HOSTTYPE in - win32.*)sys=uwin - wow=$(uname -i) - case $bit in - 32) case $HOSTTYPE in - *-64) HOSTTYPE=${HOSTTYPE%-64} ;; - esac - ;; - 64) case $HOSTTYPE in - *-64) ;; - *) HOSTTYPE=$HOSTTYPE-64 ;; - esac - case $wow in - */32) err_out "cannot build $bit-bit on $wow $sys" ;; - esac - ;; - esac - case $bit in - '') PS1="($sys) " ;; - *) PS1="($sys-$bit) " ;; - esac - - $exec umask 002 - $exec unset MAKESKIP - - P=$PWD - A=$P/arch/$HOSTTYPE - - $exec export CDPATH=:..:$A/src/cmd:$A/src/lib:$A/src/uwin:$P/lib/package - $exec export INSTALLROOT=$A - $exec export PACKAGEROOT=$P - $exec export PATH=$A/bin:$P/bin:$PATH - $exec export PS1="$PS1" - $exec export VPATH=$A:$P - $exec export nativepp=/usr/lib - - if test '' != "$INSTALLROOT" -a -d $INSTALLROOT/include/ast - then $exec export PACKAGE_ast=$INSTALLROOT - elif test -d ${PWD%/*}/ast/arch/$HOSTTYPE - then $exec export PACKAGE_ast=${PWD%/*}/ast/arch/$HOSTTYPE - fi - - # run the command - - case $# in - 0) case $show in - ':') $exec exec $SHELL ;; - esac - ;; - *) $exec exec $SHELL -c "$@" - ;; - esac - exit - ;; - esac + .) shift PACKAGEROOT=$PWD $show export PACKAGEROOT esac @@ -780,7 +697,7 @@ esac packageroot() # dir { - test -d $1/lib/$command -o -x $1/bin/$command + test -d "$1/lib/$command" || test -x "$1/bin/$command" } # true if arg is executable @@ -788,8 +705,8 @@ packageroot() # dir executable() # [!] command { case $1 in - '!') test ! -x "$2" -a ! -x "$2.exe"; return ;; - *) test -x "$1" -o -x "$1.exe"; return ;; + '!') test ! -x "$2" && test ! -x "$2.exe" ;; + *) test -x "$1" || test -x "$1.exe" ;; esac } @@ -1490,7 +1407,7 @@ int main() type=unixware ;; UTS*|uts*) - if test -x /bin/u370 -o -x /bin/u390 + if test -x /bin/u370 || test -x /bin/u390 then type=uts.390 else case $arch in '') arch=$mach ;; @@ -1796,6 +1713,14 @@ err_out() exit 1 } +trace() +( + PS4="${action}: executing: " + exec 2>&1 # trace to standard output + set -o xtrace + "$@" +) + # cc checks # # CC: compiler base name name @@ -1876,12 +1801,6 @@ esac run=- case $x in 1) : accept the current package use environment - - OK=ok - KSH=$EXECROOT/bin/ksh - MAKE=mamake - SUM=$EXECROOT/bin/sum - TEE=$EXECROOT/bin/tee INITROOT=$PACKAGEROOT/src/cmd/INIT checkcc ;; @@ -2291,17 +2210,8 @@ cat $INITROOT/$i.sh $show export EXECROOT export EXECROOT - # use these if possible - - OK=ok - KSH=$EXECROOT/bin/ksh - MAKE=mamake - SUM=$EXECROOT/bin/sum - TEE=$EXECROOT/bin/tee - # grab a decent default shell - checksh "$SHELL" || KEEP_SHELL=0 case $KEEP_SHELL in 0) save_PATH=$PATH if PATH=$(getconf PATH 2>/dev/null) @@ -2536,7 +2446,7 @@ checkaout() # cmd ... '') _PACKAGE_cc=0 ;; *) _PACKAGE_cc=1 - test -f $INITROOT/hello.c -a -f $INITROOT/p.c || { + test -f "$INITROOT/hello.c" && test -f "$INITROOT/p.c" || { note "$INITROOT: INIT package source not found" return 1 } @@ -2686,7 +2596,7 @@ capture() # file command ... cmd='case $error_status in 0) r=done;; *) r=failed;; esac;' cmd=$cmd' echo "$command: $action $r at $(date) in $INSTALLROOT"' case $quiet in - 0) cmd="$cmd 2>&1 | \$TEE -a $o" ;; + 0) cmd="$cmd 2>&1 | tee -a $o" ;; *) cmd="$cmd >> $o" ;; esac trap "$cmd" 0 @@ -2695,10 +2605,7 @@ capture() # file command ... ;; esac case $quiet in - 0) if executable ! $TEE - then TEE=tee - fi - # Connect 'tee' to a FIFO instead of a pipe, so that we can obtain + 0) # Connect 'tee' to a FIFO instead of a pipe, so that we can obtain # the build's exit status and use it for $error_status rm -f $o.fifo mkfifo -m 600 $o.fifo || exit @@ -2707,7 +2614,7 @@ capture() # file command ... # unlink early exec rm $o.fifo ) & - $TEE -a $o < $o.fifo & + tee -a $o < $o.fifo & tee_pid=$! o=$o.fifo ;; @@ -2743,6 +2650,48 @@ make_recurse() # dir done } +do_install() # dir [ command ... ] +{ + cd "$INSTALLROOT" + printf 'install: installing from %s\n' "$PWD" + set -o errexit + dd=$1 + shift + case $dd in + '' | [!/]*) + err_out "ERROR: destination directory '$dd' must begin with a /" ;; + esac + # commands to install by default + test "$#" -eq 0 && set -- ksh shcomp # pty suid_exec + for f + do test -f "bin/$f" || err_out "Not found: $f" "Build first? Run $0 make" + done + # set install directories + bindir=$dd/bin + mandir=$dd/share/man + man1dir=$mandir/man1 + # and off we go + trace mkdir -p "$bindir" "$man1dir" + for f + do # install executable + trace cp "bin/$f" "$bindir/" + # install manual + case $f in + ksh) trace cp "$PACKAGEROOT/src/cmd/ksh93/sh.1" "$man1dir/ksh.1" + ;; + *) # AT&T --man, etc. is a glorified error message: writes to stderr and exits with status 2 :-/ + manfile=$man1dir/${f##*/}.1 + bin/ksh -c '"$@" 2>&1; exit 0' _ "bin/$f" --nroff >$manfile + # ...so we cannot check for success; instead, check the result. + if grep -q '^.TH .* 1' "$manfile" + then printf "install: wrote '%s --nroff' output into %s\n" "bin/$f" "$manfile" + else rm "$manfile" + fi + ;; + esac + done +} + # check for native ASCII 0:yes 1:no __isascii__= @@ -2778,7 +2727,7 @@ clean|clobber) then set -- "$@" "$p" # add to new PPs fi done - exec rm -f "$@" # rm all at once: fast + exec rm -f -- "$@" # rm all at once: fast ' "$0" {} + case $flat in 0) note "deleting arch/$HOSTTYPE" @@ -2813,9 +2762,9 @@ export) case $INSTALLROOT in ;; install)cd $PACKAGEROOT - echo "A proper installation command is coming back soon, sorry." >&2 - echo "Meanwhile, copy ksh and shcomp from: $INSTALLROOT/arch/$HOSTTYPE/bin" >&2 - exit 1 + # TODO: breaks on directories with spaces or glob characters; make arguments handling robust + test -n "$args" || err_out "Usage: $0 install ROOTDIR [ COMMANDNAME ... ]" + capture do_install $args ;; make|view) @@ -2824,7 +2773,7 @@ make|view) # check for some required commands must="$AR" - warn="$NM yacc bison" + warn="$NM" test="$must $warn" have= IFS=: @@ -2848,14 +2797,6 @@ make|view) esac done done - case " $have " in - *" bison "*) ;; - *" yacc "*) have="$have bison" ;; - esac - case " $have " in - *" yacc "*) ;; - *" bison "*) have="$have yacc" ;; - esac for t in $test do case " $have " in *" $t "*) @@ -2882,7 +2823,7 @@ make|view) for i in arch arch/$HOSTTYPE do test -d $PACKAGEROOT/$i || $exec mkdir $PACKAGEROOT/$i || exit done - for i in bin bin/$OK bin/$OK/lib fun include lib lib/package lib/package/gen src man man/man1 man/man3 man/man8 + for i in bin bin/ok bin/ok/lib fun include lib lib/package lib/package/gen src man man/man1 man/man3 man/man8 do test -d $INSTALLROOT/$i || $exec mkdir $INSTALLROOT/$i || exit done make_recurse src @@ -3084,7 +3025,7 @@ make|view) k=$INITROOT/make.probe case $(ls -t $i $j $k 2>/dev/null) in $i*) ;; - *) if test -f $j -a -f $k + *) if test -f "$j" && test -f "$k" then note "update $i" shellmagic case $exec in @@ -3117,19 +3058,19 @@ cat $j $k then execrate=execrate $make cd $INSTALLROOT/bin for i in chmod chgrp cmp cp ln mv rm - do if test ! -x $OK/$i -a -x /bin/$i.exe + do if test ! -x "ok/$i" && test -x "/bin/$i.exe" then shellmagic case $exec in - '') echo "$SHELLMAGIC"'execrate /bin/'$i' "$@"' > $OK/$i - chmod +x $OK/$i + '') echo "$SHELLMAGIC"'execrate /bin/'$i' "$@"' > ok/$i + chmod +x ok/$i ;; - *) $exec echo \'"$SHELLMAGIC"'execrate /bin/'$i' "$@"'\'' >' $OK/$i - $exec chmod +x $OK/$i + *) $exec echo \'"$SHELLMAGIC"'execrate /bin/'$i' "$@"'\'' >' ok/$i + $exec chmod +x ok/$i ;; esac fi done - PATH=$INSTALLROOT/bin/$OK:$PATH + PATH=$INSTALLROOT/bin/ok:$PATH export PATH else execrate= fi @@ -3140,7 +3081,7 @@ cat $j $k # check against previous compiler and flags err= - for var in CC CCFLAGS CCLDFLAGS LDFLAGS KSH_RELFLAGS + for var in CC CCFLAGS CCLDFLAGS LDFLAGS do store=$INSTALLROOT/lib/package/gen/$var eval "new=\$$var" if test -f $store @@ -3202,7 +3143,7 @@ cat $j $k # mamprobe data should have been generated by this point case $exec in - '') if test ! -f $INSTALLROOT/bin/.paths -o -w $INSTALLROOT/bin/.paths + '') if test ! -f "$INSTALLROOT/bin/.paths" || test -w "$INSTALLROOT/bin/.paths" then N=' ' b= f= h= n= p= u= B= L= @@ -3294,32 +3235,29 @@ cat $j $k ksh tee cp ln mv rm \ *ast*.dll *cmd*.dll *dll*.dll *shell*.dll do executable $i && { - cmp -s $i $OK/$i 2>/dev/null || { - test -f $OK/$i && - $exec $execrate $rm $OK/$i /dev/null || { + test -f ok/$i && + $exec $execrate $rm ok/$i /dev/null || ln -sf "$h" "$p" || exit + ln -f "$h" "$p" 2>/dev/null || ln -sf "$INSTALLROOT/$p" "$p" || exit done ' "$0" {} + ;; @@ -3396,10 +3339,6 @@ results)set '' $target ;; make|test|view) def=$1 - case $filter:$1:$SHELL in - errors:*:*) ;; - *:test:*/ksh*) filter=rt ;; - esac ;; old) suf=old ;; @@ -3416,7 +3355,6 @@ results)set '' $target path) path=1 ;; test) def=test - filter=rt ;; *) break ;; @@ -3469,8 +3407,6 @@ results)set '' $target ;; errors) $exec egrep -i '\*\*\*|FAIL[ES]|^TEST.* [123456789][0123456789]* error|core.*dump' $j | sed -e '/^TEST.\//s,/[^ ]*/,,' ;; - rt) $exec $KSH rt - $j - ;; *) $exec egrep -i '^TEST|FAIL' $j ;; esac @@ -3514,12 +3450,25 @@ results)set '' $target esac ;; -test) # pass control to ksh 93u+m test script - capture "$PACKAGEROOT/bin/shtests" $args +test) # run all available default regression tests, using our newly compiled shell unless overridden + + cd "$INSTALLROOT" || err_out "run '$0 make' first" + if test "$KEEP_SHELL" -lt 2 + then executable bin/ksh || err_out "build ksh first, or supply a SHELL=/path/to/ksh argument" + SHELL=$INSTALLROOT/bin/ksh + fi + export SHELL + set -f + set -- ${args:-src} + cd "$1" || exit + capture mamake test ;; use) # finalize the environment + if test "$KEEP_SHELL" -lt 2 && executable "$INSTALLROOT/bin/ksh" + then SHELL=$INSTALLROOT/bin/ksh + fi x=:.. for d in $( cd $PACKAGEROOT; ls src/*/Mamfile 2>/dev/null | sed 's,/[^/]*$,,' | sort -u ) do x=$x:$INSTALLROOT/$d diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/probe.win32 b/cde/programs/dtksh/ksh93/src/cmd/INIT/probe.win32 index 2774bb34c..4c449ec2b 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/probe.win32 +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/probe.win32 @@ -37,9 +37,6 @@ done for i in $probe_header do echo "#include <$i>" done -echo '#ifdef _UWIN' -echo "int _Pr0b3_uwin=_UWIN;" -echo '#endif' echo '#ifdef __BORLANDC__' echo "int _Pr0b3_version_BORLAND=__BORLANDC__;" echo '#endif' @@ -67,7 +64,6 @@ echo '#endif' } > easy.c include= -uwin= $cc -E easy.c 2>&1 | egrep -i '^(#(line)? 1 .*\.[hH]| *int +_Pr0b3_[a-zA-Z_]* *= *[0-9])' | @@ -213,18 +209,10 @@ CC.STATIC = -Bstatic then stdlib="$stdlib $d" fi done - case $uwin in - [0-9]*) cat < # # and is licensed under the # -# Eclipse Public License, Version 1.0 # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Martijn Dekker # # # diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/regress.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/regress.sh index a53ab61ff..38c64af6b 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/regress.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/regress.sh @@ -2,20 +2,17 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2012 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # +# Johnothan King # # # ######################################################################## : regress - run regression tests in command.tst @@ -28,7 +25,7 @@ case $(getopts '[-][123:xyz]' opt --xyz 2>/dev/null; echo 0$opt) in ] [-author?Glenn Fowler ] [-copyright?Copyright (c) 1995-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] +[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html] [+NAME?regress - run regression tests] [+DESCRIPTION?\bregress\b runs the tests in \aunit\a, or \aunit\a\b.tst\b if \aunit\a does not exist. If \acommand\a is omitted @@ -128,7 +125,7 @@ unit [ command [ arg ... ] ] the files.] [+INFO \b\adescription\a?\adescription\a is printed on the standard error.] - [+INITIALIZE?Called by \bregress\b to initialize a each + [+INITIALIZE?Called by \bregress\b to initialize each \bTEST\b group.] [+INPUT \b[ \b-e\b \afilter\a ]] [ \b-n\b ]] \afile\a | - \adata\a ...?The standard input is set to either the contents of \afile\a diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/rt.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/rt.sh deleted file mode 100644 index 84484a7c9..000000000 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/rt.sh +++ /dev/null @@ -1,482 +0,0 @@ -######################################################################## -# # -# This software is part of the ast package # -# Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # -# and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # -# # -# A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # -# # -# Glenn Fowler # -# # -######################################################################## -: rt - nmake test output filter - -command=rt -flags='--silent --keepgoing' -failed=0 -heading=1 -verbose=0 - -case `(getopts '[-][123:xyz]' opt --xyz; echo 0$opt) 2>/dev/null` in -0123) ARGV0="-a $command" - USAGE=$' -[-? -@(#)$Id: rt (AT&T Research) 2010-07-27 $ -] -[-author?Glenn Fowler ] -[-copyright?Copyright (c) 2005-2012 AT&T Intellectual Property] -[-license?http://www.eclipse.org/org/documents/epl-v10.html] -[+NAME?rt - run "nmake test" and filter output] -[+DESCRIPTION?\brt\b runs \bnmake test\b and filters the regression - test output to contain only test summary lines. If no \atest\a - operands are specified then \btest\b is assumed. If \b-\b is - specified then the \afile\a operands, or the standard input - if no \afile\a operands are specified, are filtered instead - of the output from \bnmake\b.] -[f:failed?Only list failed test results.] -[h!:heading?Enable per-file heading when more than one \afile\a operand - follows \b-\b.] -[v:verbose?Run with \bREGRESSFLAGS=-v\b.] - -[ test ... | - [ file ... ] ] - -[+SEE ALSO?\bnmake\b(1), \bregress\b(1)] -[+CAVEATS?\brt\b guesses the regression test output style. Garbled - output indicates a bad guess.] -' - ;; -*) ARGV0="" - USAGE="fhv" - ;; -esac - -function usage -{ - OPTIND=0 - getopts $ARGV0 "$USAGE" OPT '-?' - exit 2 -} - -while getopts $ARGV0 "$USAGE" OPT -do case $OPT in - f) failed=1 ;; - h) heading=0 ;; - v) (( verbose=$OPTARG )) && flags="$flags REGRESSFLAGS=-v" ;; - esac -done -shift `expr $OPTIND - 1` - -ifs=${IFS:-$' \t\n'} -set -o noglob -component= -dots='............................................' -bad=' ***' -style=unknown -integer tests errors signals lineno=0 skip=0 -typeset -l lower - -function results # tests errors signals -{ - integer t=$1 e=$2 s=$3 - typeset label note - if [[ $style != unknown ]] && (( errors >= 0 )) - then style=unknown - if (( !failed || errors )) - then if (( failed )) - then print -r -n -- "$unit" - fi - if (( t >= 0 )) - then if (( t == 1)) - then label="test " - else label=tests - fi - printf $'%s%5d %s' "$prefix" "$t" "$label" - prefix= - else prefix="$prefix..........." - fi - if (( s )) - then label=signal - (( e=s )) - else label=error - fi - if (( e != 1)) - then label=${label}s - fi - if (( e == 1 )) - then note=" $bad" - elif (( e > 1 )) - then note=$bad - fi - printf $'%s%5d %s%s\n' "$prefix" "$e" "$label" "$note" - fi - fi -} - -function unit -{ - typeset x - if [[ $component ]] - then x=${component##*/} - if [[ " $x " != *' '$unit' '* && " $unit " != *' '$x' '* ]] - then if [[ $component == cmd/?*lib/* ]] - then unit="$unit $x" - else unit="$x $unit" - fi - fi - fi - unit="$unit ${dots:1:${#dots}-${#unit}}" - if [[ $1 ]] - then unit="$unit..........." - fi - if (( ! failed )) - then print -r -n -- "$unit" - fi -} - -if [[ $1 == - ]] -then shift - if (( $# <= 1 )) - then heading=0 - fi - if (( heading )) - then for i - do print test heading $i - cat -- "$i" - done - else cat "$@" - fi -else if [[ $1 == *=* ]] - then set test "$@" - elif (( ! $# )) - then set test - fi - nmake "$@" $flags 2>&1 -fi | -while read -r line -do set '' $line - shift - case $line in - TEST[' ']*', '*' error'*) - IFS=${IFS}"," - set '' $line - IFS=$ifs - set '' $* - while : - do case $2 in - '') break - ;; - error|errors) - errors=$1 - break - ;; - test|tests) - tests=$1 - ;; - esac - shift - done - results $tests $errors - continue - ;; - TEST[' ']*) - results $tests $errors - IFS=${IFS}"," - set '' $line - IFS=$ifs - set '' $* - unit=${3##*/} - case $4 in - [a-zA-Z]*) unit="$unit $4" ;; - esac - unit - prefix= - errors=0 - signals=0 - style=regress - continue - ;; - 'pathname and options of item under test') - read -r line || break - results $tests $errors $signals - set '' $line - unit=${2##*/} - unit - tests=0 - errors=0 - signals=0 - style=script - continue - ;; - 'test heading '*) - if (( heading )) - then if (( heading > 1 )) - then print - else heading=2 - fi - set '' $line - shift 3 - print -r -- "==> $* <==" - fi - continue - ;; - 'test '*' begins at '????-??-??+??:??:??|'test '*' begins at '*' '*' '*' '*' '*) - results $tests $errors $signals - unit=${2##*/} - unit=${unit%.sh} - unit - prefix= - tests=-1 - errors=0 - signals=0 - style=shell - continue - ;; - 'test '*' at '????-??-??+??:??:??' [ '*' ]'|'test '*' at '*' '*' '*' '*' '*) - case $line in - *' [ '*test*error*' ]') - while : - do case $1 in - '[') tests=$2 - errors=$4 - if (( errors > 256 )) - then (( signals++ )) - fi - break - ;; - esac - shift - done - ;; - *' [ '*test*signal*' ]') - while : - do case $1 in - '[') tests=$2 - signals=$4 - if (( signals )) - then (( errors++ )) - fi - break - ;; - esac - shift - done - ;; - *) if [[ $3 != passed ]] - then (( errors )) || (( errors++ )) - fi - ;; - esac - results $tests $errors $signals - continue - ;; - '## ---'*(-)'--- ##') - (( ++lineno > skip )) || continue - read -r line || break - lower=$line - set '' $lower - case $lower in - '##'*'test suite:'*'##') - results $tests $errors $signals - set -- ${lower//*suite:} - set -- ${*//[.#]/} - unit=$* - if [[ $unit == *' tests' ]] - then unit=${unit/' tests'/} - fi - main=$unit - prefix= - tests=0 - errors=0 - signals=0 - category= - style=autotest - (( skip = lineno + 1 )) - unit - continue - ;; - esac - ;; - +(-)) case $style in - regress) continue ;; - esac - (( ++lineno > skip )) || continue - read -r line || break - set '' $line - case $line in - 'Running tests for '*) - results $tests $errors $signals - shift 4 - unit= - while (( $# )) - do if [[ $1 == on ]] - then break - fi - if [[ $unit ]] - then unit="$unit " - fi - unit=$unit${1##*/} - shift - done - main=$unit - prefix= - tests=-1 - errors=-1 - category= - style=perl - (( skip = lineno + 1 )) - continue - ;; - *' : '*)results $tests $errors $signals - unit=${2##*/} - unit=${unit%.sh} - unit - prefix= - tests=0 - errors=0 - signals=0 - style=timing - (( skip = lineno + 1 )) - continue - ;; - esac - ;; - +([0-9])*([a-zA-Z0-9])' '*) - case $style in - script) case $line in - *FAILED*|*failed*) - (( errors++ )) - ;; - *) (( tests++ )) - ;; - esac - ;; - esac - ;; - make:*|'make ['*']:'*) - case $line in - *': warning:'*|*'making test'*|*'action'?(s)' failed'*|*': *** '*) - ;; - *) results $tests $errors $signals - print -r -u2 -- "$line" - ;; - esac - continue - ;; - +([/a-zA-Z_0-9]):) - component=${line%:} - ;; - '') continue - ;; - esac - case $style in - autotest) - case $line in - +([0-9]):*ok) - (( tests++ )) - ;; - +([0-9]):*FAILED*) - (( tests++ )) - (( errors++ )) - if (( $verbose )) - then if [[ ! $prefix ]] - then prefix=$unit - print - fi - print -r -- " ${line//*'FAILED '/}" - fi - ;; - esac - continue - ;; - perl) case $line in - *'........ '*) - if [[ $1 == */* ]] - then cat=${1%%/*} - if [[ $cat != $category ]] - then results $tests $errors $signals - category=$cat - unit="$main $category" - unit - prefix= - tests=0 - errors=0 - signals=0 - fi - (( tests++ )) - case $line in - *' ok') ;; - *) (( errors++ )) - if (( $verbose )) - then if [[ ! $prefix ]] - then prefix=$unit - print - fi - print -r -- "$line" - fi - ;; - esac - else results $tests $errors $signals - case $line in - *' ok') errors=0 ;; - *) errors=1 ;; - esac - unit="$main $1" - unit - if (( $verbose && errors )) - then prefix=$unit - print - shift 2 - print -r -- "$@" - else prefix= - fi - results $tests $errors $signals - tests=-1 - errors=-1 - category= - fi - style=perl - ;; - esac - continue - ;; - esac - case $line in - *FAILED*|*failed*) - (( errors++ )) - ;; - *) case $style in - regress)case $line in - ['<>']*);; - *) continue ;; - esac - ;; - script) continue - ;; - shell) ((errors++ )) - ;; - timing) (( tests++ )) - continue - ;; - unknown)continue - ;; - esac - ;; - esac - if (( $verbose )) - then if [[ ! $prefix ]] - then prefix=$unit - print - fi - print -r -- "$line" - fi -done -results $tests $errors $signals diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/silent.sh b/cde/programs/dtksh/ksh93/src/cmd/INIT/silent.sh index 4ae93a22b..3291fa865 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/silent.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/silent.sh @@ -2,20 +2,16 @@ # # # This software is part of the ast package # # Copyright (c) 1994-2011 AT&T Intellectual Property # -# Copyright (c) 2020-2021 Contributors to ksh 93u+m # +# Copyright (c) 2020-2022 Contributors to ksh 93u+m # # and is licensed under the # -# Eclipse Public License, Version 1.0 # -# by AT&T Intellectual Property # +# Eclipse Public License, Version 2.0 # # # # A copy of the License is available at # -# http://www.eclipse.org/org/documents/epl-v10.html # -# (with md5 checksum b35adb5213ca9657e911e9befb180842) # -# # -# Information and Software Systems Research # -# AT&T Research # -# Florham Park NJ # +# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html # +# (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) # # # # Glenn Fowler # +# Martijn Dekker # # # ######################################################################## # non-ksh stub for the nmake silent prefix diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/socket.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/socket.c index 05d0435f9..d71d98f58 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/socket.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/socket.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ /* diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/w.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/w.c index 8e0c76787..07bbb2faa 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/w.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/w.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #ifndef DONTCARE diff --git a/cde/programs/dtksh/ksh93/src/cmd/INIT/w2.c b/cde/programs/dtksh/ksh93/src/cmd/INIT/w2.c index 909306234..3c82b9d2f 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/INIT/w2.c +++ b/cde/programs/dtksh/ksh93/src/cmd/INIT/w2.c @@ -2,20 +2,16 @@ * * * This software is part of the ast package * * Copyright (c) 1994-2011 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * +* Martijn Dekker * * * ***********************************************************************/ #include diff --git a/cde/programs/dtksh/ksh93/src/cmd/Mamfile b/cde/programs/dtksh/ksh93/src/cmd/Mamfile index 3d2449604..17a6e7357 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/Mamfile +++ b/cde/programs/dtksh/ksh93/src/cmd/Mamfile @@ -1,16 +1,15 @@ -info mam static note * note * This build file is in the Make Abstract Machine (MAM) language. It was note * first generated by nmake, but in the ksh 93u+m distribution we maintain note * it manually because nmake had too many problems to keep using. The note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added -note * support for indentation to improve readability. The language is -note * documented in Glenn Fowler's paper "A Make Abstract Machine": -note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html +note * indentation to improve readability. The language is documented in +note * src/cmd/INIT/README-mamake.md. note * -note component level :MAKE: equivalent -make install - make all - exec - ${MAMAKE} -r '*' ${MAMAKEARGS} - done all virtual -done install virtual +make test + make install + make all + exec - ${MAMAKE} -r '*' ${MAMAKEARGS} + done all virtual + done install virtual +done test virtual diff --git a/cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile b/cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile index 4f2993ed2..c8d101978 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile +++ b/cde/programs/dtksh/ksh93/src/cmd/builtin/Mamfile @@ -1,12 +1,10 @@ -info mam static 00000 1994-07-17 make (AT&T Research) 5.7 2012-06-20 note * note * This build file is in the Make Abstract Machine (MAM) language. It was note * first generated by nmake, but in the ksh 93u+m distribution we maintain note * it manually because nmake had too many problems to keep using. The note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added -note * support for indentation to improve readability. The language is -note * documented in Glenn Fowler's paper "A Make Abstract Machine": -note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html +note * indentation to improve readability. The language is documented in +note * src/cmd/INIT/README-mamake.md. note * setv INSTALLROOT ../../.. setv PACKAGE_ast_INCLUDE ${INSTALLROOT}/include/ast @@ -14,7 +12,6 @@ setv PACKAGE_cmd ${INSTALLROOT} setv PACKAGEROOT ../../../../.. setv CC cc setv mam_cc_FLAGS -setv KSH_RELFLAGS setv CCFLAGS ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${mam_cc_OPTIMIZE}?} setv CCLDFLAGS ${-strip-symbols?1?${mam_cc_LD_STRIP}??} setv IFFEFLAGS @@ -30,10 +27,9 @@ make install make pty.o make pty.c make FEATURE/pty implicit - meta FEATURE/pty features/%>FEATURE/% features/pty pty make features/pty done features/pty - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libast} ${mam_libcmd} : run features/pty + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libast} ${mam_libcmd} : run features/pty done FEATURE/pty generated make ${PACKAGE_ast_INCLUDE}/ast_time.h implicit done ${PACKAGE_ast_INCLUDE}/ast_time.h @@ -45,12 +41,11 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/cmd.h implicit done pty.c - meta pty.o %.c>%.o pty.c pty prev pty.c - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} -I. -I${PACKAGE_ast_INCLUDE} -DERROR_CATALOG=\""builtin"\" -D_PACKAGE_ast -DCMD_STANDALONE=b_pty -c pty.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -I${PACKAGE_ast_INCLUDE} -DERROR_CATALOG=\""builtin"\" -D_PACKAGE_ast -DCMD_STANDALONE=b_pty -c pty.c done pty.o generated bind -lutil dontcare - exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${CCFLAGS} ${LDFLAGS} -lm ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o pty pty.o ${mam_libutil} ${mam_libast} ${mam_libcmd} + exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o pty pty.o ${mam_libutil} ${mam_libast} -lm ${mam_libcmd} done pty generated make ${INSTALLROOT}/bin exec - if silent test ! -d ${INSTALLROOT}/bin @@ -59,7 +54,7 @@ make install done ${INSTALLROOT}/bin generated make ${INSTALLROOT}/bin/pty prev pty - exec - test '' = 'pty' || ${STDCMP} 2>/dev/null -s pty ${INSTALLROOT}/bin/pty || { ${STDMV} ${INSTALLROOT}/bin/pty ${INSTALLROOT}/bin/pty.old 2>/dev/null || true; ${STDCP} pty ${INSTALLROOT}/bin/pty ;} + exec - ${STDCMP} 2>/dev/null -s pty ${INSTALLROOT}/bin/pty || { ${STDMV} ${INSTALLROOT}/bin/pty ${INSTALLROOT}/bin/pty.old 2>/dev/null || true; ${STDCP} pty ${INSTALLROOT}/bin/pty ;} done ${INSTALLROOT}/bin/pty generated make ${INSTALLROOT}/bin exec - if silent test ! -d ${INSTALLROOT}/bin @@ -67,3 +62,5 @@ make install exec - fi done ${INSTALLROOT}/bin virtual done install virtual +make test +done test dontcare virtual diff --git a/cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE b/cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE index bb5a5bb70..1db083047 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE +++ b/cde/programs/dtksh/ksh93/src/cmd/builtin/RELEASE @@ -1,3 +1,7 @@ +This file is of historical interest only. For recent changes in both ksh 93u+m +and the accompanying libraries, see the file NEWS in the top-level directory. +____ + 12-02-28 pty.c: change --verbose[=level] to --debug=level 12-01-26 pty.c: fix --man docs 10-06-21 pty.c: add 4 sec timeout for initial handshake -- fix me!! diff --git a/cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty b/cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty index 317816c2c..ac3467f0f 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty +++ b/cde/programs/dtksh/ksh93/src/cmd/builtin/features/pty @@ -11,7 +11,8 @@ lib openpty,_getpty,ptsname -lutil lib grantpt,unlockpt,posix_openpt stdlib.h lib cfmakeraw termios.h -tst - -lm output{ +# try once with -lm, once without +tst - -lm - - output{ #include #if _lib_ptsname #include @@ -50,8 +51,11 @@ tst - -lm output{ return 0; } }end fail{ - echo "$0: Output block failed to compile. Export IFFEFLAGS=-d1 to debug." >&2 - exit 1 + case ${_features_pty_TRIEDONCE-no} in + no) _features_pty_TRIEDONCE=yes ;; + *) echo "$0: Output block failed to compile. Export IFFEFLAGS=-d1 to debug." >&2 + exit 1 ;; + esac }end extern _getpty char* (int*, int, mode_t, int) diff --git a/cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c b/cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c index 8aaa3ef3f..efd364d26 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c +++ b/cde/programs/dtksh/ksh93/src/cmd/builtin/pty.c @@ -2,21 +2,17 @@ * * * This software is part of the ast package * * Copyright (c) 1992-2013 AT&T Intellectual Property * -* Copyright (c) 2020-2021 Contributors to ksh 93u+m * +* Copyright (c) 2020-2022 Contributors to ksh 93u+m * * and is licensed under the * -* Eclipse Public License, Version 1.0 * -* by AT&T Intellectual Property * +* Eclipse Public License, Version 2.0 * * * * A copy of the License is available at * -* http://www.eclipse.org/org/documents/epl-v10.html * -* (with md5 checksum b35adb5213ca9657e911e9befb180842) * -* * -* Information and Software Systems Research * -* AT&T Research * -* Florham Park NJ * +* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html * +* (with md5 checksum 84283fa8859daf213bdda5a9f8d1be1d) * * * * Glenn Fowler * * David Korn * +* Martijn Dekker * * * ***********************************************************************/ @@ -25,7 +21,7 @@ static const char usage[] = "[-author?Glenn Fowler ]" "[-author?David Korn ]" "[-copyright?Copyright (c) 2001-2013 AT&T Intellectual Property]" -"[-license?http://www.eclipse.org/org/documents/epl-v10.html]" +"[-license?https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html]" "[--catalog?builtin]" "[+NAME?pty - create pseudo terminal and run command]" "[+DESCRIPTION?\bpty\b creates a pseudo pty and then runs \bcommand\b " diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/COMPATIBILITY b/cde/programs/dtksh/ksh93/src/cmd/ksh93/COMPATIBILITY index f80020aea..ff7751df3 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/COMPATIBILITY +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/COMPATIBILITY @@ -1,4 +1,4 @@ - ksh 93u+m vs. ksh 93u+ + ksh 93u+m/1.0.0 vs. ksh 93u+ The following is a list of changes between ksh 93u+ 2012-08-01 and the new ksh 93u+m reboot that could cause incompatibilities in rare corner cases. @@ -168,6 +168,13 @@ For more details, see the NEWS file and for complete details, see the git log. return value that fits in a signed integer, typically a 32-bit value. Note that $? is truncated to 8 bits when the current (sub)shell exits. +31. The 'enum' and 'typeset -T' commands are no longer allowed to + override and replace special built-in commands, except for type + definition commands previously created by these commands. + +32. The .sh.level variable is now read-only except inside a DEBUG trap. + The current level/scope is now restored when the DEBUG trap run ends. + ____________________________________________________________________________ KSH-93 VS. KSH-88 diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/DESIGN b/cde/programs/dtksh/ksh93/src/cmd/ksh93/DESIGN index 022d6870e..21c6b01a5 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/DESIGN +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/DESIGN @@ -106,8 +106,7 @@ sh directory: 3. array.c contains the code for indexed and associative arrays. 4. defs.c contains the data definitions for global symbols. - 5. deparse.c contains code to generate shell script from - a parse tree. + 5. (removed) 6. expand.c contains code for file name expansion and pathname expansion. 7. fault.c contains code for signal processing, trap @@ -153,12 +152,10 @@ sh directory: 28. timers.c contains code for multiple event timeouts. 29. trestore contains the code for restoring the parse tree from the file created by tdump. - 30. userinit.c contains a dummy userinit() function. - This is now obsolete with the new version of sh_main(). - 31. waitevent.c contains the sh_waitnotify function so + 30. waitevent.c contains the sh_waitnotify function so that builtins can handle processing events when the shell is waiting for input or for process completion. - 32. xec.c is the main shell execution loop. + 31. xec.c is the main shell execution loop. edit directory: 1. completion.c contains code for command and file generation and diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/Mamfile b/cde/programs/dtksh/ksh93/src/cmd/ksh93/Mamfile index d604c138e..8dc45e956 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/Mamfile +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/Mamfile @@ -1,12 +1,10 @@ -info mam static 00000 1994-07-17 make (AT&T Research) 5.7 2012-06-20 note * note * This build file is in the Make Abstract Machine (MAM) language. It was note * first generated by nmake, but in the ksh 93u+m distribution we maintain note * it manually because nmake had too many problems to keep using. The note * Mamfiles are processed by mamake (src/cmd/INIT/mamake.c); we added -note * support for indentation to improve readability. The language is -note * documented in Glenn Fowler's paper "A Make Abstract Machine": -note * http://web.archive.org/web/20041227143022/http://www2.research.att.com/~gsf/mam/mam.html +note * indentation to improve readability. The language is documented in +note * src/cmd/INIT/README-mamake.md. note * setv INSTALLROOT ../../.. setv PACKAGE_ast_INCLUDE ${INSTALLROOT}/include/ast @@ -14,8 +12,6 @@ setv PACKAGEROOT ../../../../.. setv AR ${mam_cc_AR} ${mam_cc_AR_ARFLAGS} setv CC cc setv mam_cc_FLAGS -setv KSH_RELFLAGS -setv KSH_SHOPTFLAGS setv CCFLAGS ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${mam_cc_OPTIMIZE}?} setv CCLDFLAGS ${-strip-symbols?1?${mam_cc_LD_STRIP}??} setv COTEMP $$ @@ -24,18 +20,38 @@ setv LDFLAGS setv SH_DICT \"libshell\" make install make ksh - make SHOPT.sh implicit - done SHOPT.sh generated + make shopt.h implicit + make SHOPT.sh implicit + done SHOPT.sh generated + note * the SHOPT.sh file calls the SHOPT function once for each option + exec - SHOPT() + exec - { + exec - case $1 in + exec - 'MULTIBYTE=') + exec - echo + exec - echo '#if !defined(SHOPT_MULTIBYTE) && !AST_NOMULTIBYTE' + exec - echo '#define SHOPT_MULTIBYTE 1' + exec - echo '#endif' + exec - ;; + exec - *=?*) echo + exec - echo "#ifndef SHOPT_${1%%=*}" + exec - echo "#define SHOPT_${1%%=*} ${1#*=}" + exec - echo "#endif" + exec - ;; + exec - esac + exec - } + exec - echo "/* Generated from ksh93/SHOPT.sh by ksh93/Mamfile */" > shopt.h + exec - . "$PACKAGEROOT/src/cmd/ksh93/SHOPT.sh" >> shopt.h + done shopt.h generated make pmain.o make sh/pmain.c make FEATURE/externs implicit - meta FEATURE/externs features/%>FEATURE/% features/externs externs make features/externs done features/externs exec - set - exec - echo 'int main(){return 0;}' > 1.${COTEMP}.c - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -c 1.${COTEMP}.c && - exec - x=`${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l'*' 2>&1 | sed -e 's/[][()+@?]/#/g' || :` && + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -c 1.${COTEMP}.c && + exec - x=`${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l'*' 2>&1 | sed -e 's/[][()+@?]/#/g' || :` && exec - { exec - case "" in exec - *?) echo " " ;; @@ -51,8 +67,8 @@ make install exec - esac exec - continue exec - elif test ! -f ${INSTALLROOT}/lib/lib$i.a - exec - then case `{ ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -L${INSTALLROOT}/lib ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l$i 2>&1 || echo '' "$x" ;} | sed -e 's/[][()+@?]/#/g' || :` in - exec - *$x*) case `{ ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l$i 2>&1 || echo '' "$x" ;} | sed -e 's/[][()+@?]/#/g' || :` in + exec - then case `{ ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -L${INSTALLROOT}/lib ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l$i 2>&1 || echo '' "$x" ;} | sed -e 's/[][()+@?]/#/g' || :` in + exec - *$x*) case `{ ${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} -o 1.${COTEMP}.x 1.${COTEMP}.o -l$i 2>&1 || echo '' "$x" ;} | sed -e 's/[][()+@?]/#/g' || :` in exec - *$x*) continue ;; exec - esac exec - ;; @@ -69,21 +85,19 @@ make install bind -last bind -lm dontcare bind -lnsl dontcare - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/externs + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/externs done FEATURE/externs generated make include/shell.h implicit make include/fault.h implicit make FEATURE/sigfeatures implicit - meta FEATURE/sigfeatures features/%>FEATURE/% features/sigfeatures sigfeatures make features/sigfeatures done features/sigfeatures - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/sigfeatures + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/sigfeatures done FEATURE/sigfeatures dontcare generated make FEATURE/setjmp implicit - meta FEATURE/setjmp features/%>FEATURE/% features/setjmp setjmp make features/setjmp done features/setjmp - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/setjmp + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/setjmp done FEATURE/setjmp dontcare generated prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit @@ -184,10 +198,6 @@ make install done ${PACKAGE_ast_INCLUDE}/cmd.h dontcare prev ${PACKAGE_ast_INCLUDE}/shcmd.h implicit make include/nval.h implicit - make ${PACKAGE_ast_INCLUDE}/hash.h implicit - make ${PACKAGE_ast_INCLUDE}/hashpart.h implicit - done ${PACKAGE_ast_INCLUDE}/hashpart.h dontcare - done ${PACKAGE_ast_INCLUDE}/hash.h dontcare prev ${PACKAGE_ast_INCLUDE}/option.h implicit make ${PACKAGE_ast_INCLUDE}/cdt.h implicit prev ${PACKAGE_ast_INCLUDE}/ast_common.h implicit @@ -203,75 +213,33 @@ make install prev ${PACKAGE_ast_INCLUDE}/cdt.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit done include/shell.h + prev shopt.h implicit done sh/pmain.c - meta pmain.o %.c>%.o sh/pmain.c pmain prev sh/pmain.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/pmain.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/pmain.c done pmain.o generated make libshell.a archive prev shell.req - make alarm.o - make bltins/alarm.c - make FEATURE/time implicit - meta FEATURE/time features/%>FEATURE/% features/time time - make features/time - done features/time - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/time - make ${PACKAGE_ast_INCLUDE}/times.h implicit - make ${PACKAGE_ast_INCLUDE}/ast_time.h implicit - done ${PACKAGE_ast_INCLUDE}/ast_time.h dontcare - prev ${PACKAGE_ast_INCLUDE}/ast.h implicit - done ${PACKAGE_ast_INCLUDE}/times.h dontcare - done FEATURE/time generated - make include/builtins.h implicit - make include/shtable.h implicit - done include/shtable.h dontcare - make FEATURE/dynamic implicit - meta FEATURE/dynamic features/%>FEATURE/% features/dynamic dynamic - make features/dynamic - done features/dynamic - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/dynamic - prev ${PACKAGE_ast_INCLUDE}/dlldefs.h implicit - done FEATURE/dynamic dontcare generated - make FEATURE/options implicit - meta FEATURE/options features/%>FEATURE/% features/options options - make features/options - done features/options - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/options - done FEATURE/options dontcare generated - prev ${PACKAGE_ast_INCLUDE}/option.h implicit - done include/builtins.h - prev ${PACKAGE_ast_INCLUDE}/stak.h implicit - prev ${PACKAGE_ast_INCLUDE}/error.h implicit - make include/defs.h implicit - make include/regress.h implicit - done include/regress.h dontcare - prev include/shtable.h implicit - prev include/shell.h implicit - prev ${PACKAGE_ast_INCLUDE}/endian.h implicit - prev include/name.h implicit - make include/argnod.h implicit - prev ${PACKAGE_ast_INCLUDE}/stak.h implicit - done include/argnod.h dontcare - prev ${PACKAGE_ast_INCLUDE}/cdt.h implicit - prev FEATURE/options implicit - prev FEATURE/externs implicit - prev ${PACKAGE_ast_INCLUDE}/error.h implicit - prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit - prev ${PACKAGE_ast_INCLUDE}/ast.h implicit - done include/defs.h - done bltins/alarm.c - meta alarm.o %.c>%.o bltins/alarm.c alarm - prev bltins/alarm.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/alarm.c - done alarm.o generated make cd_pwd.o make bltins/cd_pwd.c make include/test.h implicit prev include/shtable.h implicit - prev include/defs.h implicit + make include/defs.h implicit + make include/regress.h implicit + done include/regress.h dontcare + prev include/shtable.h implicit + prev include/shell.h implicit + prev ${PACKAGE_ast_INCLUDE}/endian.h implicit + prev include/name.h implicit + make include/argnod.h implicit + prev ${PACKAGE_ast_INCLUDE}/stak.h implicit + done include/argnod.h dontcare + prev ${PACKAGE_ast_INCLUDE}/cdt.h implicit + prev FEATURE/options implicit + prev ${PACKAGE_ast_INCLUDE}/error.h implicit + prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit + prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + done include/defs.h prev FEATURE/options implicit done include/test.h make ${PACKAGE_ast_INCLUDE}/ls.h implicit @@ -280,12 +248,26 @@ make install prev ${PACKAGE_ast_INCLUDE}/ast_fs.h implicit prev ${PACKAGE_ast_INCLUDE}/ast_std.h implicit done ${PACKAGE_ast_INCLUDE}/ls.h - prev include/builtins.h implicit + make include/builtins.h implicit + make include/shtable.h implicit + done include/shtable.h dontcare + make FEATURE/dynamic implicit + make features/dynamic + done features/dynamic + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/dynamic + prev ${PACKAGE_ast_INCLUDE}/dlldefs.h implicit + done FEATURE/dynamic dontcare generated + make FEATURE/options implicit + make features/options + done features/options + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/options + done FEATURE/options dontcare generated + prev ${PACKAGE_ast_INCLUDE}/option.h implicit + done include/builtins.h prev include/name.h implicit make include/path.h implicit make FEATURE/acct implicit - meta FEATURE/acct >FEATURE/% acct - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def acct + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def acct done FEATURE/acct dontcare generated prev include/defs.h implicit prev include/nval.h implicit @@ -300,11 +282,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/cd_pwd.c - meta cd_pwd.o %.c>%.o bltins/cd_pwd.c cd_pwd prev bltins/cd_pwd.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/cd_pwd.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/cd_pwd.c done cd_pwd.o generated make cflow.o make bltins/cflow.c @@ -316,31 +297,18 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/cflow.c - meta cflow.o %.c>%.o bltins/cflow.c cflow prev bltins/cflow.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/cflow.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/cflow.c done cflow.o generated - make deparse.o - make sh/deparse.c - prev include/test.h implicit - prev include/shnodes.h implicit - prev include/defs.h implicit - done sh/deparse.c - meta deparse.o %.c>%.o sh/deparse.c deparse - prev sh/deparse.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/deparse.c - done deparse.o generated make enum.o make bltins/enum.c prev include/defs.h implicit + prev shopt.h implicit done bltins/enum.c - meta enum.o %.c>%.o bltins/enum.c enum prev bltins/enum.c - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DERROR_CATALOG=${SH_DICT} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/enum.c - prev SHOPT.sh + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DERROR_CATALOG=${SH_DICT} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/enum.c done enum.o generated make getopts.o make bltins/getopts.c @@ -349,11 +317,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/variables.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/getopts.c - meta getopts.o %.c>%.o bltins/getopts.c getopts prev bltins/getopts.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/getopts.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/getopts.c done getopts.o generated make hist.o make bltins/hist.c @@ -362,19 +329,17 @@ make install done include/national.h dontcare make include/terminal.h implicit make FEATURE/ttys implicit - meta FEATURE/ttys features/%>FEATURE/% features/ttys ttys make features/ttys done features/ttys - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/ttys + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/ttys done FEATURE/ttys dontcare generated done include/terminal.h dontcare prev FEATURE/setjmp implicit prev ${PACKAGE_ast_INCLUDE}/sig.h implicit make FEATURE/locale implicit - meta FEATURE/locale features/%>FEATURE/% features/locale locale make features/locale done features/locale - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/locale + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/locale done FEATURE/locale dontcare generated prev FEATURE/options implicit done include/edit.h dontcare @@ -390,20 +355,31 @@ make install prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/hist.c - meta hist.o %.c>%.o bltins/hist.c hist prev bltins/hist.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/hist.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/hist.c done hist.o generated make misc.o make bltins/misc.c prev ${PACKAGE_ast_INCLUDE}/times.h implicit - prev FEATURE/time implicit + make FEATURE/time implicit + make features/time + done features/time + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/time + make ${PACKAGE_ast_INCLUDE}/times.h implicit + make ${PACKAGE_ast_INCLUDE}/ast_time.h implicit + done ${PACKAGE_ast_INCLUDE}/ast_time.h dontcare + prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + done ${PACKAGE_ast_INCLUDE}/times.h dontcare + done FEATURE/time generated prev FEATURE/locale implicit make include/jobs.h implicit prev ${PACKAGE_ast_INCLUDE}/vmalloc.h implicit prev include/terminal.h implicit + make ${PACKAGE_ast_INCLUDE}/aso.h implicit + prev ${PACKAGE_ast_INCLUDE}/ast_common.h implicit + done ${PACKAGE_ast_INCLUDE}/aso.h implicit prev FEATURE/options implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit @@ -416,11 +392,10 @@ make install prev include/shnodes.h implicit prev include/variables.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/misc.c - meta misc.o %.c>%.o bltins/misc.c misc prev bltins/misc.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/misc.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/misc.c done misc.o generated make mkservice.o make bltins/mkservice.c @@ -428,11 +403,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/nval.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/mkservice.c - meta mkservice.o %.c>%.o bltins/mkservice.c mkservice prev bltins/mkservice.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=${SH_DICT} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/mkservice.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=${SH_DICT} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/mkservice.c done mkservice.o generated make print.o make bltins/print.c @@ -466,11 +440,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/print.c - meta print.o %.c>%.o bltins/print.c print prev bltins/print.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/print.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/print.c done print.o generated make read.o make bltins/read.c @@ -489,41 +462,37 @@ make install prev include/defs.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done bltins/read.c - meta read.o %.c>%.o bltins/read.c read prev bltins/read.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/read.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/read.c done read.o generated make sleep.o make bltins/sleep.c make FEATURE/poll implicit - meta FEATURE/poll features/%>FEATURE/% features/poll poll make features/poll done features/poll - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/poll + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/poll done FEATURE/poll generated prev FEATURE/time implicit prev include/builtins.h implicit prev ${PACKAGE_ast_INCLUDE}/tmx.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/sleep.c - meta sleep.o %.c>%.o bltins/sleep.c sleep prev bltins/sleep.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/sleep.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/sleep.c done sleep.o generated make trap.o make bltins/trap.c prev include/builtins.h implicit prev include/jobs.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/trap.c - meta trap.o %.c>%.o bltins/trap.c trap prev bltins/trap.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/trap.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/trap.c done trap.o generated make test.o make bltins/test.c @@ -538,11 +507,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/test.c - meta test.o %.c>%.o bltins/test.c test prev bltins/test.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/test.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/test.c done test.o generated make typeset.o make bltins/typeset.c @@ -554,20 +522,18 @@ make install prev include/path.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/typeset.c - meta typeset.o %.c>%.o bltins/typeset.c typeset prev bltins/typeset.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/typeset.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/typeset.c done typeset.o generated make ulimit.o make bltins/ulimit.c make include/ulimit.h implicit make FEATURE/rlimits implicit - meta FEATURE/rlimits features/%>FEATURE/% features/rlimits rlimits make features/rlimits done features/rlimits - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/rlimits + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/rlimits done FEATURE/rlimits dontcare generated prev FEATURE/time implicit done include/ulimit.h @@ -577,11 +543,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done bltins/ulimit.c - meta ulimit.o %.c>%.o bltins/ulimit.c ulimit prev bltins/ulimit.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/ulimit.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/ulimit.c done ulimit.o generated make umask.o make bltins/umask.c @@ -591,11 +556,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done bltins/umask.c - meta umask.o %.c>%.o bltins/umask.c umask prev bltins/umask.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/umask.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/umask.c done umask.o generated make whence.o make bltins/whence.c @@ -612,11 +576,10 @@ make install prev include/shtable.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/whence.c - meta whence.o %.c>%.o bltins/whence.c whence prev bltins/whence.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/whence.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c bltins/whence.c done whence.o generated make main.o make sh/main.c @@ -626,16 +589,13 @@ make install done nc.h dontcare virtual prev FEATURE/externs implicit make FEATURE/execargs implicit - meta FEATURE/execargs >FEATURE/% execargs - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def execargs + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def execargs done FEATURE/execargs generated make FEATURE/pstat implicit - meta FEATURE/pstat >FEATURE/% pstat - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def pstat + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def pstat done FEATURE/pstat generated make FEATURE/setproctitle implicit - meta FEATURE/setproctitle >FEATURE/% setproctitle - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def setproctitle + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : def setproctitle done FEATURE/setproctitle generated prev FEATURE/time implicit make include/timeout.h implicit @@ -655,11 +615,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done sh/main.c - meta main.o %.c>%.o sh/main.c main prev sh/main.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${SHOPT_TIMEOUT+-DSHOPT_TIMEOUT=${SHOPT_TIMEOUT}} ${SHOPT_ACCT+-DSHOPT_ACCT=${SHOPT_ACCT}} ${SHOPT_SYSRC+-DSHOPT_SYSRC=${SHOPT_SYSRC}} ${SHOPT_REMOTE+-DSHOPT_REMOTE=${SHOPT_REMOTE}} ${SHOPT_OLDTERMIO+-DSHOPT_OLDTERMIO=${SHOPT_OLDTERMIO}} ${SHOPT_SPAWN+-DSHOPT_SPAWN=${SHOPT_SPAWN}} ${SHOPT_P_SUID+-DSHOPT_P_SUID=${SHOPT_P_SUID}} ${SHOPT_REGRESS+-DSHOPT_REGRESS=${SHOPT_REGRESS}} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${DEBUG+-DDEBUG=${DEBUG}} -DSH_DICT=${SH_DICT} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/main.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${DEBUG+-DDEBUG=${DEBUG}} -DSH_DICT=${SH_DICT} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/main.c done main.o generated make nvdisc.o make sh/nvdisc.c @@ -669,22 +628,20 @@ make install prev include/builtins.h implicit prev include/variables.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/nvdisc.c - meta nvdisc.o %.c>%.o sh/nvdisc.c nvdisc prev sh/nvdisc.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/nvdisc.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/nvdisc.c done nvdisc.o generated make nvtype.o make sh/nvtype.c prev include/variables.h implicit prev include/io.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/nvtype.c - meta nvtype.o %.c>%.o sh/nvtype.c nvtype prev sh/nvtype.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/nvtype.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/nvtype.c done nvtype.o generated make arith.o make sh/arith.c @@ -694,11 +651,10 @@ make install prev include/name.h implicit prev include/lexstates.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/arith.c - meta arith.o %.c>%.o sh/arith.c arith prev sh/arith.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/arith.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/arith.c done arith.o generated make args.o make sh/args.c @@ -711,22 +667,20 @@ make install prev include/jobs.h implicit prev include/path.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/args.c - meta args.o %.c>%.o sh/args.c args prev sh/args.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/args.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/args.c done args.o generated make array.o make sh/array.c prev include/name.h implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/array.c - meta array.o %.c>%.o sh/array.c array prev sh/array.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/array.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/array.c done array.o generated make completion.o make edit/completion.c @@ -737,11 +691,10 @@ make install prev include/lexstates.h implicit prev ${PACKAGE_ast_INCLUDE}/ast_wchar.h implicit prev include/defs.h implicit + prev shopt.h implicit done edit/completion.c - meta completion.o %.c>%.o edit/completion.c completion prev edit/completion.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/completion.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/completion.c done completion.o generated make defs.o make sh/defs.c @@ -750,11 +703,10 @@ make install prev include/shlex.h implicit prev include/jobs.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/defs.c - meta defs.o %.c>%.o sh/defs.c defs prev sh/defs.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/defs.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/defs.c done defs.o generated make edit.o make edit/edit.c @@ -767,21 +719,19 @@ make install prev include/defs.h implicit prev ${PACKAGE_ast_INCLUDE}/ls.h implicit make FEATURE/cmds implicit - meta FEATURE/cmds features/%>FEATURE/% features/cmds cmds make features/cmds done features/cmds - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/cmds + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/cmds done FEATURE/cmds generated prev FEATURE/time implicit prev FEATURE/options implicit prev include/fault.h implicit prev ${PACKAGE_ast_INCLUDE}/ccode.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done edit/edit.c - meta edit.o %.c>%.o edit/edit.c edit prev edit/edit.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/edit.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/edit.c done edit.o generated make expand.o make sh/expand.c @@ -805,11 +755,10 @@ make install prev include/test.h implicit prev include/variables.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/expand.c - meta expand.o %.c>%.o sh/expand.c expand prev sh/expand.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/expand.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/expand.c done expand.o generated make regress.o make bltins/regress.c @@ -819,11 +768,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/defs.h implicit + prev shopt.h implicit done bltins/regress.c - meta regress.o %.c>%.o bltins/regress.c regress prev bltins/regress.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/regress.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c bltins/regress.c done regress.o generated make fault.o make sh/fault.c @@ -838,11 +786,10 @@ make install prev include/io.h implicit prev include/fcin.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/fault.c - meta fault.o %.c>%.o sh/fault.c fault prev sh/fault.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/fault.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/fault.c done fault.o generated make fcin.o make sh/fcin.c @@ -850,11 +797,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done sh/fcin.c - meta fcin.o %.c>%.o sh/fcin.c fcin prev sh/fcin.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/fcin.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/fcin.c done fcin.o generated make history.o make edit/history.c @@ -870,17 +816,18 @@ make install prev FEATURE/time implicit prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done edit/history.c - meta history.o %.c>%.o edit/history.c history prev edit/history.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/history.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/history.c done history.o generated make init.o make sh/init.c prev ${PACKAGE_ast_INCLUDE}/wctype.h implicit prev ${PACKAGE_ast_INCLUDE}/ast_wchar.h implicit make include/version.h implicit + make ${PACKAGE_ast_INCLUDE}/releaseflags.h implicit + done ${PACKAGE_ast_INCLUDE}/releaseflags.h done include/version.h prev include/lexstates.h implicit prev FEATURE/externs implicit @@ -900,11 +847,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ccode.h implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/init.c - meta init.o %.c>%.o sh/init.c init prev sh/init.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/init.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/init.c done init.o generated make io.o make sh/io.c @@ -925,11 +871,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev include/fcin.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/io.c - meta io.o %.c>%.o sh/io.c io prev sh/io.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/io.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/io.c done io.o generated make jobs.o make sh/jobs.c @@ -942,11 +887,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ast.h implicit done ${PACKAGE_ast_INCLUDE}/wait.h prev include/defs.h implicit + prev shopt.h implicit done sh/jobs.c - meta jobs.o %.c>%.o sh/jobs.c jobs prev sh/jobs.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/jobs.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/jobs.c done jobs.o generated make lex.o make sh/lex.c @@ -961,12 +905,12 @@ make install prev include/nval.h implicit prev include/fcin.h implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit + prev ${PACKAGE_ast_INCLUDE}/releaseflags.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done sh/lex.c - meta lex.o %.c>%.o sh/lex.c lex prev sh/lex.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/lex.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/lex.c done lex.o generated make macro.o make sh/macro.c @@ -982,11 +926,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/regex.h implicit prev include/fcin.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/macro.c - meta macro.o %.c>%.o sh/macro.c macro prev sh/macro.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/macro.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/macro.c done macro.o generated make name.o make sh/name.c @@ -999,11 +942,10 @@ make install prev include/path.h implicit prev include/variables.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/name.c - meta name.o %.c>%.o sh/name.c name prev sh/name.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/name.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c sh/name.c done name.o generated make nvtree.o make sh/nvtree.c @@ -1011,11 +953,10 @@ make install prev include/argnod.h implicit prev include/name.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/nvtree.c - meta nvtree.o %.c>%.o sh/nvtree.c nvtree prev sh/nvtree.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/nvtree.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/nvtree.c done nvtree.o generated make parse.o make sh/parse.c @@ -1029,11 +970,10 @@ make install prev include/shell.h implicit prev include/defs.h implicit prev include/version.h implicit + prev shopt.h implicit done sh/parse.c - meta parse.o %.c>%.o sh/parse.c parse prev sh/parse.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/parse.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/parse.c done parse.o generated make path.o make sh/path.c @@ -1055,11 +995,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev include/fcin.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/path.c - meta path.o %.c>%.o sh/path.c path prev sh/path.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/path.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/path.c done path.o generated make string.o make sh/string.c @@ -1072,24 +1011,21 @@ make install prev include/defs.h implicit prev ${PACKAGE_ast_INCLUDE}/ast_wchar.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done sh/string.c - meta string.o %.c>%.o sh/string.c string prev sh/string.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/string.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/string.c done string.o generated make streval.o make sh/streval.c - prev include/defs.h implicit prev FEATURE/externs implicit prev ${PACKAGE_ast_INCLUDE}/stak.h implicit prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev include/streval.h implicit + prev shopt.h implicit done sh/streval.c - meta streval.o %.c>%.o sh/streval.c streval prev sh/streval.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/streval.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/streval.c done streval.o generated make subshell.o make sh/subshell.c @@ -1102,11 +1038,10 @@ make install prev include/io.h implicit prev ${PACKAGE_ast_INCLUDE}/ls.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/subshell.c - meta subshell.o %.c>%.o sh/subshell.c subshell prev sh/subshell.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/subshell.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/subshell.c done subshell.o generated make tdump.o make sh/tdump.c @@ -1115,11 +1050,10 @@ make install prev include/path.h implicit prev include/shnodes.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/tdump.c - meta tdump.o %.c>%.o sh/tdump.c tdump prev sh/tdump.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/tdump.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/tdump.c done tdump.o generated make timers.o make sh/timers.c @@ -1130,11 +1064,10 @@ make install prev ${PACKAGE_ast_INCLUDE}/error.h implicit prev ${PACKAGE_ast_INCLUDE}/sig.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done sh/timers.c - meta timers.o %.c>%.o sh/timers.c timers prev sh/timers.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/timers.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/timers.c done timers.o generated make trestore.o make sh/trestore.c @@ -1143,20 +1076,18 @@ make install prev include/path.h implicit prev include/shnodes.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/trestore.c - meta trestore.o %.c>%.o sh/trestore.c trestore prev sh/trestore.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${SHOPT_SYSRC+-DSHOPT_SYSRC=${SHOPT_SYSRC}} ${SHOPT_ACCT+-DSHOPT_ACCT=${SHOPT_ACCT}} ${SHOPT_SPAWN+-DSHOPT_SPAWN=${SHOPT_SPAWN}} ${SHOPT_P_SUID+-DSHOPT_P_SUID=${SHOPT_P_SUID}} ${SHOPT_REGRESS+-DSHOPT_REGRESS=${SHOPT_REGRESS}} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/trestore.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/trestore.c done trestore.o generated make waitevent.o make sh/waitevent.c prev include/defs.h implicit + prev shopt.h implicit done sh/waitevent.c - meta waitevent.o %.c>%.o sh/waitevent.c waitevent prev sh/waitevent.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/waitevent.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/waitevent.c done waitevent.o generated make xec.o make sh/xec.c @@ -1176,21 +1107,19 @@ make install prev include/variables.h implicit prev include/fcin.h implicit prev include/defs.h implicit + prev shopt.h implicit done sh/xec.c - meta xec.o %.c>%.o sh/xec.c xec prev sh/xec.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/xec.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/xec.c done xec.o generated make limits.o make data/limits.c prev include/ulimit.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done data/limits.c - meta limits.o %.c>%.o data/limits.c limits prev data/limits.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -c data/limits.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -c data/limits.c done limits.o generated make msg.o make data/msg.c @@ -1205,21 +1134,19 @@ make install prev include/path.h implicit prev include/defs.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done data/msg.c - meta msg.o %.c>%.o data/msg.c msg prev data/msg.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/msg.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/msg.c done msg.o generated make strdata.o make data/strdata.c make FEATURE/math implicit - meta FEATURE/math features/%.sh>FEATURE/% features/math.sh math make features/math.sh make data/math.tab implicit done data/math.tab done features/math.sh dontcare - exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} : run features/math.sh ${PACKAGEROOT}/src/cmd/ksh93/data/math.tab + exec - iffe ${IFFEFLAGS} -v -c "${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS}" ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libnsl} -lm : run features/math.sh ${PACKAGEROOT}/src/cmd/ksh93/data/math.tab make ${PACKAGE_ast_INCLUDE}/ast_standards.h implicit done ${PACKAGE_ast_INCLUDE}/ast_standards.h dontcare make ${INSTALLROOT}/src/lib/libast/FEATURE/float implicit @@ -1231,68 +1158,63 @@ make install prev include/streval.h implicit prev FEATURE/options implicit prev ${PACKAGE_ast_INCLUDE}/ast_standards.h implicit + prev shopt.h implicit done data/strdata.c - meta strdata.o %.c>%.o data/strdata.c strdata prev data/strdata.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${SHOPT_P_SUID+-DSHOPT_P_SUID=${SHOPT_P_SUID}} ${SHOPT_REGRESS+-DSHOPT_REGRESS=${SHOPT_REGRESS}} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/strdata.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} ${SH_CMDLIB_DIR+-DSH_CMDLIB_DIR=${SH_CMDLIB_DIR}} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/strdata.c done strdata.o generated make testops.o make data/testops.c prev include/test.h implicit prev include/defs.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done data/testops.c - meta testops.o %.c>%.o data/testops.c testops prev data/testops.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/testops.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/testops.c done testops.o generated make keywords.o make data/keywords.c prev FEATURE/options implicit prev include/shlex.h implicit prev include/shell.h implicit + prev shopt.h implicit done data/keywords.c - meta keywords.o %.c>%.o data/keywords.c keywords prev data/keywords.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/keywords.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/keywords.c done keywords.o generated make options.o make data/options.c prev include/shtable.h implicit prev include/name.h implicit prev include/defs.h implicit + prev shopt.h implicit done data/options.c - meta options.o %.c>%.o data/options.c options prev data/options.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/options.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/options.c done options.o generated make signals.o make data/signals.c prev include/jobs.h implicit prev include/defs.h implicit + prev shopt.h implicit done data/signals.c - meta signals.o %.c>%.o data/signals.c signals prev data/signals.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/signals.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/signals.c done signals.o generated make aliases.o make data/aliases.c prev FEATURE/dynamic implicit prev FEATURE/options implicit prev include/defs.h implicit + prev shopt.h implicit done data/aliases.c - meta aliases.o %.c>%.o data/aliases.c aliases prev data/aliases.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/aliases.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/aliases.c done aliases.o generated make builtins.o make data/builtins.c + prev FEATURE/poll implicit prev FEATURE/cmds implicit prev include/jobs.h implicit prev include/builtins.h implicit @@ -1301,11 +1223,10 @@ make install prev include/ulimit.h implicit prev include/shtable.h implicit prev include/defs.h implicit + prev shopt.h implicit done data/builtins.c - meta builtins.o %.c>%.o data/builtins.c builtins prev data/builtins.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/builtins.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -DSH_DICT=${SH_DICT} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/builtins.c done builtins.o generated make variables.o make data/variables.c @@ -1318,22 +1239,20 @@ make install prev FEATURE/dynamic implicit prev FEATURE/options implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done data/variables.c - meta variables.o %.c>%.o data/variables.c variables prev data/variables.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/variables.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c data/variables.c done variables.o generated make lexstates.o make data/lexstates.c prev include/lexstates.h implicit prev FEATURE/options implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done data/lexstates.c - meta lexstates.o %.c>%.o data/lexstates.c lexstates prev data/lexstates.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -c data/lexstates.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -c data/lexstates.c done lexstates.o generated make emacs.o make edit/emacs.c @@ -1343,12 +1262,12 @@ make install prev include/io.h implicit prev include/defs.h implicit prev FEATURE/cmds implicit + prev ${PACKAGE_ast_INCLUDE}/releaseflags.h implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit + prev shopt.h implicit done edit/emacs.c - meta emacs.o %.c>%.o edit/emacs.c emacs prev edit/emacs.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/emacs.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/emacs.c done emacs.o generated make vi.o make edit/vi.c @@ -1361,23 +1280,21 @@ make install prev FEATURE/options implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit prev include/defs.h implicit + prev shopt.h implicit done edit/vi.c - meta vi.o %.c>%.o edit/vi.c vi prev edit/vi.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/vi.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c edit/vi.c done vi.o generated make hexpand.o make edit/hexpand.c prev include/edit.h implicit prev include/defs.h implicit + prev shopt.h implicit done edit/hexpand.c - meta hexpand.o %.c>%.o edit/hexpand.c hexpand prev edit/hexpand.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/hexpand.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_API_ast=20100309 -DERROR_CONTEXT_T=Error_context_t -c edit/hexpand.c done hexpand.o generated - exec - ${AR} rc libshell.a alarm.o cd_pwd.o cflow.o deparse.o enum.o getopts.o hist.o misc.o mkservice.o print.o read.o sleep.o trap.o test.o typeset.o ulimit.o umask.o whence.o main.o nvdisc.o nvtype.o arith.o args.o array.o completion.o defs.o edit.o expand.o regress.o fault.o fcin.o + exec - ${AR} rc libshell.a cd_pwd.o cflow.o enum.o getopts.o hist.o misc.o mkservice.o print.o read.o sleep.o trap.o test.o typeset.o ulimit.o umask.o whence.o main.o nvdisc.o nvtype.o arith.o args.o array.o completion.o defs.o edit.o expand.o regress.o fault.o fcin.o exec - ${AR} rc libshell.a history.o init.o io.o jobs.o lex.o macro.o name.o nvtree.o parse.o path.o string.o streval.o subshell.o tdump.o timers.o trestore.o waitevent.o xec.o limits.o msg.o strdata.o testops.o keywords.o options.o signals.o aliases.o builtins.o variables.o lexstates.o emacs.o vi.o hexpand.o exec - (ranlib libshell.a) >/dev/null 2>&1 || true done libshell.a generated @@ -1386,7 +1303,7 @@ make install prev +li prev ${mam_libsocket} prev ${mam_libsecdb} - exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libnsl} ${mam_libast} + exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libnsl} ${mam_libast} -lm done ksh generated make shcomp make shcomp.o @@ -1397,18 +1314,17 @@ make install prev include/defs.h implicit prev include/shell.h implicit prev include/version.h implicit + prev shopt.h implicit done sh/shcomp.c - meta shcomp.o %.c>%.o sh/shcomp.c shcomp prev sh/shcomp.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=${SH_DICT} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/shcomp.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=${SH_DICT} -D_API_ast=20100309 -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/shcomp.c done shcomp.o generated - prev libshell.a archive + prev ksh prev +ljobs prev +li prev ${mam_libsocket} prev ${mam_libsecdb} - exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libnsl} ${mam_libast} + exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libnsl} ${mam_libast} -lm done shcomp generated make suid_exec make suid_exec.o @@ -1420,16 +1336,14 @@ make install prev FEATURE/externs implicit prev ${PACKAGE_ast_INCLUDE}/ast.h implicit done sh/suid_exec.c - meta suid_exec.o %.c>%.o sh/suid_exec.c suid_exec prev sh/suid_exec.c - prev SHOPT.sh - exec - ${CC} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DERROR_CONTEXT_T=Error_context_t -D_API_ast=20100309 -D_PACKAGE_ast -c sh/suid_exec.c + exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DERROR_CONTEXT_T=Error_context_t -D_API_ast=20100309 -D_PACKAGE_ast -c sh/suid_exec.c done suid_exec.o generated prev +ljobs prev +li prev ${mam_libsocket} prev ${mam_libsecdb} - exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${KSH_RELFLAGS} ${KSH_SHOPTFLAGS} ${CCFLAGS} ${LDFLAGS} -lm ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o suid_exec suid_exec.o ${mam_libast} ${mam_libnsl} ${mam_libast} + exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o suid_exec suid_exec.o ${mam_libast} ${mam_libnsl} ${mam_libast} -lm done suid_exec generated make shell prev libshell.a archive @@ -1443,7 +1357,7 @@ make install make ${INSTALLROOT}/bin/ksh prev ${INSTALLROOT}/bin prev ksh - exec - test '' = 'ksh' || ${STDCMP} 2>/dev/null -s ksh ${INSTALLROOT}/bin/ksh || { ${STDMV} ${INSTALLROOT}/bin/ksh ${INSTALLROOT}/bin/ksh.old 2>/dev/null || true; ${STDCP} ksh ${INSTALLROOT}/bin/ksh ;} + exec - ${STDCMP} 2>/dev/null -s ksh ${INSTALLROOT}/bin/ksh || { ${STDMV} ${INSTALLROOT}/bin/ksh ${INSTALLROOT}/bin/ksh.old 2>/dev/null || true; ${STDCP} ksh ${INSTALLROOT}/bin/ksh ;} done ${INSTALLROOT}/bin/ksh generated make ${INSTALLROOT}/man/man1 exec - if silent test ! -d ${INSTALLROOT}/man/man1 @@ -1454,7 +1368,7 @@ make install prev ${INSTALLROOT}/man/man1 make sh.1 done sh.1 - exec - test '' = 'sh.1' || ${STDCMP} 2>/dev/null -s sh.1 ${INSTALLROOT}/man/man1/sh.1 || { ${STDMV} ${INSTALLROOT}/man/man1/sh.1 ${INSTALLROOT}/man/man1/sh.1.old 2>/dev/null || true; ${STDCP} sh.1 ${INSTALLROOT}/man/man1/sh.1 ;} + exec - ${STDCMP} 2>/dev/null -s sh.1 ${INSTALLROOT}/man/man1/sh.1 || { ${STDMV} ${INSTALLROOT}/man/man1/sh.1 ${INSTALLROOT}/man/man1/sh.1.old 2>/dev/null || true; ${STDCP} sh.1 ${INSTALLROOT}/man/man1/sh.1 ;} done ${INSTALLROOT}/man/man1/sh.1 generated make ${INSTALLROOT}/lib exec - if silent test ! -d ${INSTALLROOT}/lib @@ -1464,7 +1378,7 @@ make install make ${INSTALLROOT}/lib/libshell.a archive prev ${INSTALLROOT}/lib prev libshell.a archive - exec - test '' = 'libshell.a' || ${STDCMP} 2>/dev/null -s libshell.a ${INSTALLROOT}/lib/libshell.a || { ${STDMV} ${INSTALLROOT}/lib/libshell.a ${INSTALLROOT}/lib/libshell.a.old 2>/dev/null || true; ${STDCP} libshell.a ${INSTALLROOT}/lib/libshell.a ;} + exec - ${STDCMP} 2>/dev/null -s libshell.a ${INSTALLROOT}/lib/libshell.a || { ${STDMV} ${INSTALLROOT}/lib/libshell.a ${INSTALLROOT}/lib/libshell.a.old 2>/dev/null || true; ${STDCP} libshell.a ${INSTALLROOT}/lib/libshell.a ;} exec - (ranlib ${INSTALLROOT}/lib/libshell.a) >/dev/null 2>&1 || true done ${INSTALLROOT}/lib/libshell.a generated make ${INSTALLROOT}/man/man3 @@ -1476,12 +1390,12 @@ make install prev ${INSTALLROOT}/man/man3 make shell.3 done shell.3 - exec - test '' = 'shell.3' || ${STDCMP} 2>/dev/null -s shell.3 ${INSTALLROOT}/man/man3/shell.3 || { ${STDMV} ${INSTALLROOT}/man/man3/shell.3 ${INSTALLROOT}/man/man3/shell.3.old 2>/dev/null || true; ${STDCP} shell.3 ${INSTALLROOT}/man/man3/shell.3 ;} + exec - ${STDCMP} 2>/dev/null -s shell.3 ${INSTALLROOT}/man/man3/shell.3 || { ${STDMV} ${INSTALLROOT}/man/man3/shell.3 ${INSTALLROOT}/man/man3/shell.3.old 2>/dev/null || true; ${STDCP} shell.3 ${INSTALLROOT}/man/man3/shell.3 ;} done ${INSTALLROOT}/man/man3/shell.3 generated make ${INSTALLROOT}/man/man3/nval.3 make nval.3 done nval.3 - exec - test '' = 'nval.3' || ${STDCMP} 2>/dev/null -s nval.3 ${INSTALLROOT}/man/man3/nval.3 || { ${STDMV} ${INSTALLROOT}/man/man3/nval.3 ${INSTALLROOT}/man/man3/nval.3.old 2>/dev/null || true; ${STDCP} nval.3 ${INSTALLROOT}/man/man3/nval.3 ;} + exec - ${STDCMP} 2>/dev/null -s nval.3 ${INSTALLROOT}/man/man3/nval.3 || { ${STDMV} ${INSTALLROOT}/man/man3/nval.3 ${INSTALLROOT}/man/man3/nval.3.old 2>/dev/null || true; ${STDCP} nval.3 ${INSTALLROOT}/man/man3/nval.3 ;} done ${INSTALLROOT}/man/man3/nval.3 generated make ${INSTALLROOT}/lib/lib exec - if silent test ! -d ${INSTALLROOT}/lib/lib @@ -1491,7 +1405,7 @@ make install make ${INSTALLROOT}/lib/lib/shell prev ${INSTALLROOT}/lib/lib prev shell.req - exec - test '' = 'shell.req' || ${STDCMP} 2>/dev/null -s shell.req ${INSTALLROOT}/lib/lib/shell || { ${STDMV} ${INSTALLROOT}/lib/lib/shell ${INSTALLROOT}/lib/lib/shell.old 2>/dev/null || true; ${STDCP} shell.req ${INSTALLROOT}/lib/lib/shell ;} + exec - ${STDCMP} 2>/dev/null -s shell.req ${INSTALLROOT}/lib/lib/shell || { ${STDMV} ${INSTALLROOT}/lib/lib/shell ${INSTALLROOT}/lib/lib/shell.old 2>/dev/null || true; ${STDCP} shell.req ${INSTALLROOT}/lib/lib/shell ;} done ${INSTALLROOT}/lib/lib/shell generated make ${PACKAGE_ast_INCLUDE} exec - if silent test ! -d ${PACKAGE_ast_INCLUDE} @@ -1501,64 +1415,69 @@ make install make ${PACKAGE_ast_INCLUDE}/nval.h prev ${PACKAGE_ast_INCLUDE} prev include/nval.h - exec - if cmp 2>/dev/null -s include/nval.h ${PACKAGE_ast_INCLUDE}/nval.h - exec - then : - exec - else ${STDCP} include/nval.h ${PACKAGE_ast_INCLUDE}/nval.h + exec - if ! cmp -s include/nval.h ${PACKAGE_ast_INCLUDE}/nval.h + exec - then ${STDCP} include/nval.h ${PACKAGE_ast_INCLUDE}/nval.h exec - fi done ${PACKAGE_ast_INCLUDE}/nval.h generated make ${PACKAGE_ast_INCLUDE}/shell.h prev include/shell.h - exec - if cmp 2>/dev/null -s include/shell.h ${PACKAGE_ast_INCLUDE}/shell.h - exec - then : - exec - else ${STDCP} include/shell.h ${PACKAGE_ast_INCLUDE}/shell.h + exec - if ! cmp -s include/shell.h ${PACKAGE_ast_INCLUDE}/shell.h + exec - then ${STDCP} include/shell.h ${PACKAGE_ast_INCLUDE}/shell.h exec - fi done ${PACKAGE_ast_INCLUDE}/shell.h generated make ${PACKAGE_ast_INCLUDE}/history.h prev include/history.h - exec - if cmp 2>/dev/null -s include/history.h ${PACKAGE_ast_INCLUDE}/history.h - exec - then : - exec - else ${STDCP} include/history.h ${PACKAGE_ast_INCLUDE}/history.h + exec - if ! cmp -s include/history.h ${PACKAGE_ast_INCLUDE}/history.h + exec - then ${STDCP} include/history.h ${PACKAGE_ast_INCLUDE}/history.h exec - fi done ${PACKAGE_ast_INCLUDE}/history.h generated make ${INSTALLROOT}/bin/suid_exec prev suid_exec - exec - test '' = 'suid_exec' || ${STDCMP} 2>/dev/null -s suid_exec ${INSTALLROOT}/bin/suid_exec || { ${STDMV} ${INSTALLROOT}/bin/suid_exec ${INSTALLROOT}/bin/suid_exec.old 2>/dev/null || true; ${STDCP} suid_exec ${INSTALLROOT}/bin/suid_exec ;} + exec - ${STDCMP} 2>/dev/null -s suid_exec ${INSTALLROOT}/bin/suid_exec || { ${STDMV} ${INSTALLROOT}/bin/suid_exec ${INSTALLROOT}/bin/suid_exec.old 2>/dev/null || true; ${STDCP} suid_exec ${INSTALLROOT}/bin/suid_exec ;} done ${INSTALLROOT}/bin/suid_exec generated make ${INSTALLROOT}/bin/shcomp prev shcomp - exec - test '' = 'shcomp' || ${STDCMP} 2>/dev/null -s shcomp ${INSTALLROOT}/bin/shcomp || { ${STDMV} ${INSTALLROOT}/bin/shcomp ${INSTALLROOT}/bin/shcomp.old 2>/dev/null || true; ${STDCP} shcomp ${INSTALLROOT}/bin/shcomp ;} + exec - ${STDCMP} 2>/dev/null -s shcomp ${INSTALLROOT}/bin/shcomp || { ${STDMV} ${INSTALLROOT}/bin/shcomp ${INSTALLROOT}/bin/shcomp.old 2>/dev/null || true; ${STDCP} shcomp ${INSTALLROOT}/bin/shcomp ;} done ${INSTALLROOT}/bin/shcomp generated make ${INSTALLROOT}/fun exec - if silent test ! -d ${INSTALLROOT}/fun exec - then mkdir -p ${INSTALLROOT}/fun exec - fi done ${INSTALLROOT}/fun generated + make ${INSTALLROOT}/fun/autocd + prev ${INSTALLROOT}/fun + make fun/autocd + done fun/autocd + exec - ${STDCMP} 2>/dev/null -s fun/autocd ${INSTALLROOT}/fun/autocd || { ${STDMV} ${INSTALLROOT}/fun/autocd ${INSTALLROOT}/fun/autocd.old 2>/dev/null || true; ${STDCP} fun/autocd ${INSTALLROOT}/fun/autocd && chmod ugo+x ${INSTALLROOT}/fun/autocd ;} + done ${INSTALLROOT}/fun/autocd generated make ${INSTALLROOT}/fun/dirs prev ${INSTALLROOT}/fun make fun/dirs done fun/dirs - exec - test '' = 'fun/dirs' || ${STDCMP} 2>/dev/null -s fun/dirs ${INSTALLROOT}/fun/dirs || { ${STDMV} ${INSTALLROOT}/fun/dirs ${INSTALLROOT}/fun/dirs.old 2>/dev/null || true; ${STDCP} fun/dirs ${INSTALLROOT}/fun/dirs && chmod ugo+x ${INSTALLROOT}/fun/dirs ;} + exec - ${STDCMP} 2>/dev/null -s fun/dirs ${INSTALLROOT}/fun/dirs || { ${STDMV} ${INSTALLROOT}/fun/dirs ${INSTALLROOT}/fun/dirs.old 2>/dev/null || true; ${STDCP} fun/dirs ${INSTALLROOT}/fun/dirs && chmod ugo+x ${INSTALLROOT}/fun/dirs ;} done ${INSTALLROOT}/fun/dirs generated + make ${INSTALLROOT}/fun/man + prev ${INSTALLROOT}/fun + make fun/man + done fun/man + exec - ${STDCMP} 2>/dev/null -s fun/man ${INSTALLROOT}/fun/man || { ${STDMV} ${INSTALLROOT}/fun/man ${INSTALLROOT}/fun/man.old 2>/dev/null || true; ${STDCP} fun/man ${INSTALLROOT}/fun/man && chmod ugo+x ${INSTALLROOT}/fun/man ;} + done ${INSTALLROOT}/fun/man generated make ${INSTALLROOT}/fun/popd make fun/popd done fun/popd - exec - test '' = 'fun/popd' || ${STDCMP} 2>/dev/null -s fun/popd ${INSTALLROOT}/fun/popd || { ${STDMV} ${INSTALLROOT}/fun/popd ${INSTALLROOT}/fun/popd.old 2>/dev/null || true; ${STDCP} fun/popd ${INSTALLROOT}/fun/popd && chmod ugo+x ${INSTALLROOT}/fun/popd ;} + exec - ${STDCMP} 2>/dev/null -s fun/popd ${INSTALLROOT}/fun/popd || { ${STDMV} ${INSTALLROOT}/fun/popd ${INSTALLROOT}/fun/popd.old 2>/dev/null || true; ${STDCP} fun/popd ${INSTALLROOT}/fun/popd && chmod ugo+x ${INSTALLROOT}/fun/popd ;} done ${INSTALLROOT}/fun/popd generated make ${INSTALLROOT}/fun/pushd make fun/pushd done fun/pushd - exec - test '' = 'fun/pushd' || ${STDCMP} 2>/dev/null -s fun/pushd ${INSTALLROOT}/fun/pushd || { ${STDMV} ${INSTALLROOT}/fun/pushd ${INSTALLROOT}/fun/pushd.old 2>/dev/null || true; ${STDCP} fun/pushd ${INSTALLROOT}/fun/pushd && chmod ugo+x ${INSTALLROOT}/fun/pushd ;} + exec - ${STDCMP} 2>/dev/null -s fun/pushd ${INSTALLROOT}/fun/pushd || { ${STDMV} ${INSTALLROOT}/fun/pushd ${INSTALLROOT}/fun/pushd.old 2>/dev/null || true; ${STDCP} fun/pushd ${INSTALLROOT}/fun/pushd && chmod ugo+x ${INSTALLROOT}/fun/pushd ;} done ${INSTALLROOT}/fun/pushd generated done install virtual make test make test.ksh - prev ${INSTALLROOT}/bin/ksh - prev ksh make tests/shtests done tests/shtests - exec - silent cmp 2>/dev/null -s ${INSTALLROOT}/bin/ksh ksh 2>/dev/null || - exec - echo "make install to run the tests on the latest ksh" >&2 - exec - cd - exec - SHELL=${INSTALLROOT}/bin/ksh ${INSTALLROOT}/bin/ksh shtests + exec - cd "$PACKAGEROOT/src/cmd/ksh93/tests" + exec - exec "$SHELL" shtests done test.ksh virtual done test dontcare virtual diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/README b/cde/programs/dtksh/ksh93/src/cmd/ksh93/README index 949c49611..0abd35bc3 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/README +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/README @@ -20,15 +20,19 @@ options where no feature probe is available, probe is the same as off. The options have the following defaults and meanings: - 2DMATCH on Two-dimensional ${.sh.match} for ${var//pat/str}. - ACCT off Shell accounting. + Noted by "L" in the version string when enabled. + See README-AUDIT.md. ACCTFILE off Enable per user accounting info. + See README-AUDIT.md. - AUDIT off For auditing specific users + AUDIT on For auditing specific users. + Noted by "A" in the version string when enabled. + See README-AUDIT.md. - AUDITFILE "/etc/ksh_audit" + AUDITFILE "/etc/ksh_audit" + See README-AUDIT.md. BGX on Enables background job extensions. Noted by "J" in the version string when enabled. (1) JOBMAX=n limits the @@ -36,7 +40,7 @@ The options have the following defaults and meanings: background job will block until a running background job completes. (2) SIGCHLD traps are queued so that each completing background job gets its own trap; $! is set to - the job pid and $? is set to the job exit status at the + the job PID and $? is set to the job exit status at the beginning of the trap. BRACEPAT on Brace expansion. Expands abc{d,e}f to abcdf abcef. @@ -55,7 +59,8 @@ The options have the following defaults and meanings: DEVFD Use the more secure /dev/fd mechanism instead of FIFOs for process substitutions. On by default on OSs with /dev/fd. - DYNAMIC on Dynamic loading of builtins. (Requires dlopen() interface.) + DYNAMIC off Dynamic loading of builtins. Requires dlopen() interface + and dynamic libshell, libdll and libast libraries. ECHOPRINT off Make echo equivalent to print. @@ -70,9 +75,10 @@ The options have the following defaults and meanings: ESH on Compile with emacs command line editing. The original emacs line editor code was provided by Mike Veach at IH. - FILESCAN on Experimental option that allows fast reading of files - using while < file;do ...; done and allowing fields in - each line to be accessed as positional parameters. + FILESCAN on Allows fast reading of files using: + while < file; do ...; done + Each line is stored in $REPLY and fields in each + line can be accessed as positional parameters. FIXEDARRAY on When using typeset, a name in the format NAME[N] creates a fixed-size array and any attempt to access a @@ -88,13 +94,16 @@ The options have the following defaults and meanings: systems that can support case-insensitive file systems. HISTEXPAND on Enable !-style history expansion similar to csh(1). + This is turned on by the -H/--histexpand shell option and + can be modified using --histreedit and --histverify. KIA off Allow generation of shell cross-reference database with -R. As of 2021-05-10, no tool that can parse this database is known. If you know of any, please contact us. - MULTIBYTE on Multibyte character handling. Requires mblen() and - mbctowc(). + MULTIBYTE Multibyte character handling. This is on by default unless + the flag -DAST_NOMULTIBYTE is passed to the compiler via + CCFLAGS. The UTF-8 character set is fully supported. NAMESPACE on Adds a 'namespace' reserved word that allows defining name spaces. Variables and functions defined within a block like @@ -118,10 +127,8 @@ The options have the following defaults and meanings: OPTIMIZE on Optimize loop invariants for with for and while loops. - PFSH off Compile with support for profile shell. (Solaris; obsolete) - - P_SUID off If set, all real uids, greater than or equal to this - value will require the -p flag to run suid/sgid scripts. + P_SUID 0 If set, all real UIDs greater than or equal to this value + will require the -p option to run the shell setuid/setgid. RAWONLY on Turn on if the vi line mode doesn't work right unless you do a set -o viraw. @@ -135,7 +142,7 @@ The options have the following defaults and meanings: SPAWN on Use posix_spawn(3) as combined fork/exec if job control is not active. Improves speed. - STATS on Add .sh.stats compound variable. + STATS on Add .sh.stats compound variable. SUID_EXEC on Execute /etc/suid_exec for setuid, setgid script. @@ -150,8 +157,6 @@ The options have the following defaults and meanings: exiting the shell when you don't enter a command. If non-zero, TMOUT can not be set larger than this value. - TYPEDEF on Enable typeset type definitions. - VSH on Compile with vi command line editing. The original vi line editor code was provided by Pat Sullivan at CB. @@ -184,6 +189,27 @@ run the build scripts this way. For example: bin/package make SHELL=/bin/bash CCFLAGS="-O2 -I/opt/local/include" \ LDFLAGS="-L/opt/local/lib" +Note: Do not add compiler flags that cause the compiler to emit terminal +escape codes, such as -fdiagnostics-color=always; this will cause the build +to fail as the probing code greps compiler diagnostics. + +If you are certain that you don't need support for UTF-8 and other multibyte +character locales and really want to save some memory and CPU cycles, add +'-DAST_NOMULTIBYTE' to CCFLAGS to compile out all multibyte character +handling in ksh and supporting libraries. Not recommended for most users. + +To install, use: bin/package install DESTINATION_DIRECTORY [ COMMAND ... ] + +Any command from the arch directory can be installed. If no COMMAND is +specified, ksh and shcomp are assumed. + +The DESTINATION_DIRECTORY is created if it does not exist. Commands are +installed in its bin subdirectory and each command's manual page, if +available, is installed in share/man. + +Destination directories with whitespace or shell pattern characters in their +pathnames are not yet supported. + For more information, run: bin/package help @@ -191,13 +217,6 @@ For more information, run: Many other commands in this repo self-document via the --help, --man and --html options; those that do have no separate manual page. -Automated installation is not supported yet. To install manually: - - cp arch/$(bin/package host type)/bin/ksh /usr/local/bin/ - cp src/cmd/ksh93/sh.1 /usr/local/share/man/man1/ksh.1 - -(adapting the destination directories as required). - The build should also generate shcomp, a program that will precompile a script. ksh93 is able to recognize files in this format and process them as scripts. You can use shcomp to send out scripts when you @@ -208,7 +227,7 @@ permission, the SUID_EXEC compile option must be on, and ksh must be installed in the /bin directory, the /usr/bin directory, the /usr/lbin directory, or the /usr/local/bin directory and the name must end in sh. The program suid_exec must be installed in the /etc directory, must be owned by root, -and must be a suid program. If you must install ksh in some other directory +and must be an SUID program. If you must install ksh in some other directory and want to be able to run setuid/setgid and execute only scripts, then you will have to change the source code file sh/suid_exec.c explicitly. If you do not have ksh in one of these secure locations, /bin/sh will @@ -251,6 +270,7 @@ failures (crashes, and/or important functionality does not work). * AIX 7.1 on RISC (PowerPC) * DragonFly BSD 5.8 on x86_64 FreeBSD 12.2 on x86_64 + FreeBSD 13.0 on x86_64 FreeBSD 12.2 on arm64 (thanks to hyenias for donating access to a Pi) GNU/Linux: Alpine 3.12.3 (musl C library) on x86_64 GNU/Linux: CentOS 8.2 on x86_64 @@ -262,21 +282,25 @@ failures (crashes, and/or important functionality does not work). GNU/Linux: Ubuntu 18.04 on armv7l (32-bit) GNU/Linux: Ubuntu 20.04 on arm64 GNU/Linux: Void Linux (musl C library) on x86_64 +*** Haiku R1/beta3 on x86_64 *** HP-UX B.11.11 on pa-risc * illumos: OmniOS 2020-08-19 (gcc) on x86_64 + illumos: OmniOS r151040 (gcc) on x86_64 macOS 10.13.6 (High Sierra) on x86_64 macOS 10.14.6 (Mojave) on x86_64 * macOS 12.0.1 (Monterey) on arm64 * NetBSD 8.1 on x86_64 * NetBSD 9.2 on x86_64 * OpenBSD 6.8 on x86_64 -** QNX 6.5.0 on i386 + OpenBSD 7.0 on x86_64 +* QNX Neutrino 6.5.0 on i386 * Solaris 11.4 (gcc) on x86_64 Solaris 11.4 (Solaris Studio 12.5 cc) on x86_64 * UnixWare 7.1.4 on x86 *** Windows 7 using Cygwin on x86 *** Windows 10 using Cygwin on x86_64 *** Windows 11 using Cygwin on x86_64 + Windows 11 using WSL 2 with Ubuntu 20.04 on x86_64 #### REPORTING BUGS #### diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/README-AUDIT.md b/cde/programs/dtksh/ksh93/src/cmd/ksh93/README-AUDIT.md new file mode 100644 index 000000000..df6104984 --- /dev/null +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/README-AUDIT.md @@ -0,0 +1,201 @@ +# Korn Shell 93 Auditing and Accounting # + +This documentation was adapted from a 2008 blog post by Finnbarr P. Murphy +and was added to the ksh 93u+m distribution under the same license as ksh +by permission from the author, given on 24th Jan 2021. +[Original](https://blog.fpmurphy.com/2008/12/ksh93-auditing-and-accounting.html). +The responsibility for any errors in this file lies with the current +ksh 93u+m maintainers and not with the original author. + +## Introduction ## + +Korn Shell 93 (ksh93) is the only UNIX or GNU/Linux shell that I am aware +of that, with proper setup, supports a modicum of per-user accounting and +auditing. This post attempts to explain these facilities and show you how +to access and manipulate the resulting accounting and auditing records. + +Per-user accounting has been a feature of ksh93 since the earliest days of this +shell. It is a fairly primitive facility which writes out a record for each +user command that is executed. By default, it is not compiled in to the shell. + +An auditing facility was added in July 2008. This is somewhat more +sophisticated than the accounting facility in that it is configurable and +writes out a more detailed record either locally or to a remote system for +each user command that is executed. This facility can be used to monitor, +track, record, and audit the activities of one or more users on an system, +including system administrators. As of ksh 93u+ 2012-06-12, this is compiled +in to the shell by default. + +Both facilities only work for interactive users. + +To enable or disable one or both facilities, you need to modify the compile +time options in `src/cmd/ksh93/SHOPT.sh` as follows. Use `0` to disable and +`1` to enable (except for `SHOPT_AUDITFILE`). Then recompile the sources; +see `README` for building instructions. + + SHOPT ACCT=1 # accounting + SHOPT ACCTFILE=1 # per-user accounting info + SHOPT AUDIT=1 # enable auditing per SHOPT_AUDITFILE + SHOPT AUDITFILE='\"/etc/ksh_audit\"' # auditing file + +After you have recompiled the sources, the new ksh executable is located in the +`arch/`...`/bin` subdirectory. To see what options have actually been compiled +into a particular executable, just print out the shell version string. + + $ arch/darwin.i386-64/bin/ksh -c 'echo ${.sh.version}' + Version AJLM 93u+m/1.1.0-alpha+dev 2022-01-20 + $ arch/darwin.i386-64/bin/ksh -c 'echo $KSH_VERSION' + Version AJLM 93u+m/1.1.0-alpha+dev 2022-01-20 + +The option string AJLM means that +(A) auditing is supported (`SHOPT_AUDIT`), +(J) one SIGCHLD trap per completed job is supported (`SHOPT_BGX`), +(L) accounting is supported (`SHOPT_ACCT`), and +(M) multibyte characters are supported (`SHOPT_MULTIBYTE`). + +## Accounting ## + +After recompiling the shell to enable this facility, per-user accounting is +enabled using the `SHACCT` environment variable. To turn on per-user +accounting, simply set `SHACCT` to the name of the file where you wish to +store the accounting records. + + export SHACCT="/tmp/ksh_acctfile" + +Here is part of the resulting file. Note that the time is stored as +hexadecimal seconds since the Unix epoch (00:00:00 UTC on 1 January 1970). + + $ cat /tmp/ksh_acctfile + echo ${.sh.version} fpm 495990d8 + pwd fpm 495990da + id fpm 495990dd + date fpm 495990e3 + exit fpm 495990e5 + +The following shell script can be used to access the records in this file +and output them in a more useful format. + + #!/bin/ksh93 + ACCTFILE="/tmp/ksh_acctfile" + printf "DATE TIME LOGIN COMMAMD\n\n" + # set IFS to TAB only + while IFS=$'\t' read cmdstr name hexseconds + do + printf -v longsecs "%ld" "0x${hexseconds}" + printf "%(%Y-%m-%d %H:%M:%S)T, %s, %s\n" "#${longsecs}" "$name" "$cmdstr" + done < $ACCTFILE + +Invoking this script gives the following output for the above accounting +records. + + $ ./parse_acctfile + DATE TIME LOGIN COMMAMD + + 2008-12-29 22:09:12, fpm, echo ${.sh.version} + 2008-12-29 22:09:14, fpm, pwd + 2008-12-29 22:09:17, fpm, id + 2008-12-29 22:09:23, fpm, date + 2008-12-29 22:09:25, fpm, exit + +## Auditing ## + +Next we turn our attention to the auditing facility. Assuming ksh has been +compiled with the `SHOPT_AUDIT` option (the default), you must create an audit +configuration file on each system to tell ksh93 where to store the audit +records and to specify which users are to be audited. The configuration file +must be readable by the users whose activities are audited. Its default +location is `/etc/ksh_audit` but that can be changed in the `SHOPT.sh` file. +The configuration file should contain a line that defines the file to write +the audit records to, followed by the UID of each user whose commands are to +generate audit records. Here is the configuration file used to generate the +audit records for this part of this post. + + $ cat /etc/ksh_audit + /tmp/ksh_auditfile;500 + +This configuration file specifies that audit records are to be written to +`/tmp/ksh_auditfile` for the user whose UID is 500. Note that the field +delimiter is a semicolon. + +Here are the audit records stored in `/tmp/ksh_auditfile` which match the +accounting records shown previously in this post. The field separator is a +semicolon. The first field is the UID of the user executing the command. +The second field is the time in seconds since the Epoch. The third field is +the terminal device on which the command was executed, and the final field +is the actual command executed by the user. + + 500;1230606552;/dev/pts/2; echo ${.sh.version} + 500;1230606554;/dev/pts/2; pwd + 500;1230606557;/dev/pts/2; id + 500;1230606563;/dev/pts/2; date + 500;1230606565;/dev/pts/2; exit + +As before, here is a simple ksh93 script which parses this audit file, +replaces the UID with the actual user's name and seconds since the Epoch +with the actual date and time, and outputs the enhanced records in a comma +separated value (CSV) format. + + #!/bin/ksh93 + AUDITFILE="/tmp/ksh_auditfile" + while IFS=";" read uid sec tty cmdstr + do + printf '%(%Y-%m-%d %H:%M:%S)T, %s, %d, %s, %s\n' \ + "#$sec" "$(id -un $uid)" "$uid" "$tty" "$cmdstr" + done < $AUDITFILE + +Here is the output for the above audit records. + + 2008-12-29 22:09:12, fpm, 500, /dev/pts/2, echo ${.sh.version} + 2008-12-29 22:09:14, fpm, 500, /dev/pts/2, pwd + 2008-12-29 22:09:17, fpm, 500, /dev/pts/2, id + 2008-12-29 22:09:23, fpm, 500, /dev/pts/2, date + 2008-12-29 22:09:25, fpm, 500, /dev/pts/2, exit + +The audit file must be writable by all users whose activities are audited, +presenting an obvious security problem. However, the Korn shell supports +networking using the `/dev/udp/`*host*`/`*port* or `/dev/tcp/`*host*`/`*port* +syntax, so audit records can be sent across a network to another system. +This mechanism could be used to store audit records on a secured centralized +system to which only specific personnel have access. As an example, the +following audit configuration file line designates that audit records for +the user whose UID is 500 should be sent using UDP to the syslog network +port (514) on a remote system whose IP is 192.168.0.99. + + /dev/udp/192.168.0.99/514;500 + +Here are the same audit records stored by the syslog daemon on the remote system. + + 2008-12-29 22:09:12 192,169.0.115 500;1230606552;/dev/pts/2; echo ${.sh.version} + 2008-12-29 22:09:14 192.169.0.115 500;1230606554;/dev/pts/2; pwd + 2008-12-29 22:09:17 192.169.0.115 500;1230606557;/dev/pts/2; id + 2008-12-29 22:09:23 192.169.0.115 500;1230606563;/dev/pts/2; date + 2008-12-29 22:09:25 192.169.0.115 500;1230606565;/dev/pts/2; exit + +Depending on the configuration of the syslog daemon on your particular +system, the first part of the record may contain more or less information or +be formatted differently but the final part of the record, i.e. the audit +record sent by ksh93 should be in the standard audit record format. + +## Afterword ## + +Note that while the auditing and accounting facilities within ksh93 can +provide you with much useful information regarding the actions of one or +more users on a system or systems, these facilities should not be regarded +as providing enhanced security akin to the Trusted Computing Base (TCB). +There are many ways of circumventing these facilities. For example, a +knowledgeable user could switch to a different shell such as bash where +their actions will not be recorded. There are a number of other ways but I +will not discuss them here. + +Most of the information provided in this post is not documented in a single +place anywhere that I can find by searching the Internet. The ksh93 man page +does not mention either the accounting or auditing facilities. Even the +ksh93 source code is somewhat vague. I gleaned most of this information by +studying the code in +[`src/cmd/ksh93/edit/history.c`](https://github.com/ksh93/ksh/blob/dev/src/cmd/ksh93/edit/history.c). + +*Martijn Dekker adds:* I would like to thank the author Finnbarr P. Murphy +for his permission to use his ksh93-related blog posts in the ksh 93u+m +distribution. As of 2022, this is still the only documentation available for +the facilities described. If you find any errors or omissions, please +[file an issue](https://github.com/ksh93/ksh). diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE b/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE index a5aa4944c..c9b8bb3f0 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE @@ -1,5 +1,5 @@ -This file is of historic interest. For recent changes in both ksh 93u+m and -the accompanying libraries, see the file NEWS in the top-level directory. +This file is of historical interest only. For recent changes in both ksh 93u+m +and the accompanying libraries, see the file NEWS in the top-level directory. ____ 12-08-01 --- Release ksh93u+ --- @@ -261,7 +261,7 @@ ____ 12-01-21 A bug in which typeset -L and typeset -R did not handle multibyte characters correctly has been fixed. 12-01-20 A bug that could cause the shell to hang waiting for an incorrect - job pid has been fixed. + job PID has been fixed. 12-01-19 A memory leak which occurred for a nested command substitution has been fixed. 12-01-17 A bug in which typeset -u PS1 could enable the uppercase attribute @@ -312,12 +312,12 @@ ____ with more than twenty-five open files has been fixed. 11-10-06 A bug in the scoping of name references in functions called by other functions has been fixed. -11-10-05 A bug in which wait on a pid may return the exit status of an - earlier background job with that pid instead has been fixed. +11-10-05 A bug in which wait on a PID may return the exit status of an + earlier background job with that PID instead has been fixed. 11-09-22 A bug in which a read timed out with TMOUT did not always restore the terminal state has been fixed. 11-09-21 An optimization that allowed the last command in a script to use - the same process id as the script has been eliminated. + the same process ID as the script has been eliminated. 11-09-21 Added letoctal option that enables the let command to recognize octal constants starting with 0. 11-09-20 A bug in which ${var.} could cause a core dump has been fixed. @@ -394,7 +394,7 @@ ____ been fixed. 11-05-02 A bug in which the shell discards saved exit status of a job if it is followed by a subshell execution has been fixed. -11-04-28 The shell now checks for numerical overflows with process ids. +11-04-28 The shell now checks for numerical overflows with process IDs. 11-04-28 Another scoping bug with compound variables defined by name references inside a function has been fixed. 11-04-28 A bug which caused a core dump on 32 bit systems with the basic.sh @@ -684,7 +684,7 @@ ____ 10-08-09 +Modified the expansion of message strings, $"...", so that they are expanded each time they are referenced rather than expanding them when the script is compiled or read in. -10-08-06 +The process id for jobs in job pools is now of the form poolname.n +10-08-06 +The process ID for jobs in job pools is now of the form poolname.n where n is the jobid in that pool. Commands that accept job names or numbers now understand names in this format. 10-08-05 A bug in which an assignment from within an arithmetic expression @@ -973,7 +973,7 @@ ____ decimal_point=','. 09-11-02 A bug where "return" in .profile did not restore the shell state has been fixed. -09-10-31 A bug that corrupted saved exit status when pids wrapped around has +09-10-31 A bug that corrupted saved exit status when PIDs wrapped around has been fixed. 09-10-26 A bug in { LANG LC_ALL LC_category } ordering has been fixed in -last. 09-10-16 A bug where notification to libast that the environment has changed @@ -1099,13 +1099,13 @@ ____ 09-03-24 +ksh now only uses the value of the _ variable on startup if it can verify that it was set by the invoking process rather than being inherited by some other ancestor. -09-03-24 +When ksh is invoked without -p and ruid!=euid, and the shell is - compiled without SHOPT_P_UID or ruid=SHOPT_P_UID then euid is set - to ruid. A bug that did the wrong test (ruid= SHOPT_P_UID then EUID is set + to RUID. A bug that did the wrong test (RUID < SHOPT_P_UID) was fixed. 09-03-17 +The sleep(1) builtin now accept and ISO 8601 PnYnMnDTnHnMnS duration or date(1) compatible date/time operand. 09-03-10 If a variable that was left or right justified or zero-filled was @@ -1194,7 +1194,7 @@ ____ of concurrent & jobs to n; the n+1 & job will block until a running background job completes. (2) SIGCHLD traps are queued so that each completing background job gets its own trap; $! is - set to the job pid and $? is set to the job exit status at the + set to the job PID and $? is set to the job exit status at the beginning of the trap. (3) sleep -s added to sleep until the time expires or until a signal is delivered. 08-12-04 The sign of floating point zero is preserved across arithmetic @@ -1214,8 +1214,8 @@ ____ set for an instance could appear twice when displaying the variable has been fixed. 08-11-11 A bug in which running a simple command & inside a function would - not return the correct process id has been fixed. -08-11-10 A bug in which the exit status of a command could be lost if the pid + not return the correct process ID has been fixed. +08-11-10 A bug in which the exit status of a command could be lost if the PID was that of the most recent command substitution that had completed has been fixed. 08-11-10 The maximum depth for subshells has been increased from 256 to 65536. @@ -1369,7 +1369,7 @@ ____ 08-06-09 A bug in which the return value for an assignment command containing a command substitution with that failed was zero when the assignment contained redirections has been fixed. -08-06-09 A bug in the quoting of $ inside a ERE pattern ~(E)(pattern) +08-06-09 A bug in the quoting of $ inside an ERE pattern ~(E)(pattern) has been fixed. 08-06-06 A bug when processing `` command substitution with the character sequence \$' has been fixed. @@ -1710,7 +1710,7 @@ ____ 06-10-26 +The printf modifier # when used with d produces units in thousands with a single letter suffix added. The modifier # when used with the i specification provides units of 1024 with a two letter suffix. -06-10-24 The value of $! is now set to the process id of a job put +06-10-24 The value of $! is now set to the process ID of a job put into the background with the bg command as required by POSIX. 06-10-23 A bug in which the value of $! was affected by a background job started from a subshell has been fixed. @@ -1735,7 +1735,7 @@ ____ is only needed when using the ([subscript]=value ...) form. 06-09-06 +The showme option was added. Each simple command not beginning with a redirection and not occurring with in the while, until, if, - select condition can be preceded by a semi-colon which will + select condition can be preceded by a semicolon which will be ignored when showme is off. When showme is on, any command preceded by a colon will be traced but not executed. 06-08-16 +As a new feature, a leading ~(N) on a pattern has no effect @@ -2344,7 +2344,7 @@ ____ the original trap wasn't executed. 01-11-26 +The value for 0 is now preceded by the base number when the base was not 10. -01-11-26 +The default has compilation mode has been changes so that +01-11-26 +The default compilation mode has been changed so that viraw mode will always be on. 01-10-31 --- Release ksh93m --- @@ -2487,7 +2487,7 @@ ____ were previously processed in undefined ways. 01-05-09 A bug in which the output of select was not flushed before the read when input did not come from the terminal has been fixed. -01-05-08 A bug in which job ids would not be freed for interactive shells +01-05-08 A bug in which job IDs would not be freed for interactive shells when subshells ran built-ins in the background has been fixed. 01-05-08 +The FPATH variable now requires an explicit . to cause the current directory to be treated as a function directory. @@ -2573,7 +2573,7 @@ ____ directory of the script has been fixed. 01-02-19 A shell script did not always pick up tty mode changes made by external commands such as stty which could - effect the behavior of read. + affect the behavior of read. 01-02-19 The -u, -g, and -k unary tests did not give the correct results when used with negation and this has been fixed. diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE93 b/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE93 index afd108065..39f0c701a 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE93 +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/RELEASE93 @@ -339,7 +339,7 @@ of ksh. the variable it references was the subject of a compound assignment has been fixed. e. A bug which in which assignment to array variables in - a subshell could effect the parent shell has been + a subshell could affect the parent shell has been fixed. f. read name?prompt was putting a 0 byte at the end of the prompt on standard error. diff --git a/cde/programs/dtksh/ksh93/src/cmd/ksh93/SHOPT.sh b/cde/programs/dtksh/ksh93/src/cmd/ksh93/SHOPT.sh index 23a6ec0a0..b529d1d9b 100644 --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/SHOPT.sh +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/SHOPT.sh @@ -5,42 +5,39 @@ # For a more complete description of the options, see src/cmd/ksh93/README. # -SHOPT 2DMATCH=1 # two dimensional ${.sh.match} for ${var//pat/str} -SHOPT ACCT= # accounting -SHOPT ACCTFILE= # per-user accounting info +SHOPT ACCT=0 # accounting +SHOPT ACCTFILE=0 # per-user accounting info SHOPT AUDIT=1 # enable auditing per SHOPT_AUDITFILE -SHOPT AUDITFILE='\"/etc/ksh_audit\"' # auditing file +SHOPT AUDITFILE='"/etc/ksh_audit"' # auditing file SHOPT BGX=1 # one SIGCHLD trap per completed job SHOPT BRACEPAT=1 # C-shell {...,...} expansions (, required) SHOPT CMDLIB_HDR= # '' # custom -lcmd list for path-bound builtins -SHOPT CMDLIB_DIR= # '\"/opt/ast/bin\"' # virtual directory prefix for path-bound builtins +SHOPT CMDLIB_DIR= # '"/opt/ast/bin"' # virtual directory prefix for path-bound builtins SHOPT CRNL= # accept MS Windows newlines () for SHOPT DEVFD= # use /dev/fd instead of FIFOs for process substitutions -SHOPT DYNAMIC=1 # dynamic loading for builtins +SHOPT DYNAMIC=0 # dynamic loading for builtins SHOPT ECHOPRINT= # make echo equivalent to print SHOPT EDPREDICT=0 # History pattern search menu (type #, then ESC TAB). Experimental. SHOPT ESH=1 # emacs/gmacs edit mode -SHOPT FILESCAN=1 # fast file scan +SHOPT FILESCAN=1 # fast file scan: while