ports/88351: New port: shells/ibsh
vaidab
vaidab at phenix.rootshell.be
Tue Nov 1 17:10:23 UTC 2005
>Number: 88351
>Category: ports
>Synopsis: New port: shells/ibsh
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Nov 01 17:10:19 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Vaida Bogdan
>Release: FreeBSD 5.4-RELEASE-p8 i386
>Organization:
>Environment:
System: FreeBSD angelique.ro 5.4-RELEASE-p8 FreeBSD 5.4-RELEASE-p8 #22:
Thu Oct 20 09:37:06 UTC 2005
root at angelique.ro:/usr/obj/usr/src/sys/ANGELIQUE i386
>Description:
Iron Bars Shell is a restricted Unix shell. The user can not step
out of, nor access files outside the home directory. It is written
in C for Linux. No libraries used. It is small, fast, secure. Two
ascii configuration files for more control.
WWW: http://ibsh.sourceforge.net/
>How-To-Repeat:
>Fix:
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# ibsh
# ibsh/files
# ibsh/files/patch-delbadfiles.c
# ibsh/files/patch-ibsh.h
# ibsh/files/patch-Makefile
# ibsh/pkg-plist
# ibsh/pkg-descr
# ibsh/distinfo
# ibsh/Makefile
# ibsh/pkg-message
#
echo c - ibsh
mkdir -p ibsh > /dev/null 2>&1
echo c - ibsh/files
mkdir -p ibsh/files > /dev/null 2>&1
echo x - ibsh/files/patch-delbadfiles.c
sed 's/^X//' >ibsh/files/patch-delbadfiles.c << 'END-of-ibsh/files/patch-delbadfiles.c'
X--- delbadfiles.c.old Tue Nov 1 17:49:43 2005
X+++ delbadfiles.c Tue Nov 1 17:50:01 2005
X@@ -175,12 +175,12 @@
X */
X int symlinkGoesOuttaJail (const char * sl)
X {
X- char fPnted[PATH_MAX];
X- char rslvdPath[PATH_MAX]; /* size of PATH_MAX because of realpath() behavior */
X+ char fPnted[PATH_MAXb];
X+ char rslvdPath[PATH_MAXb]; /* size of PATH_MAXb because of realpath() behavior */
X int i;
X
X- i = readlink (sl, fPnted, PATH_MAX);
X- if ( i > 0 && i < PATH_MAX ) {
X+ i = readlink (sl, fPnted, PATH_MAXb);
X+ if ( i > 0 && i < PATH_MAXb ) {
X fPnted[i] = '\0';
X if (realpath (fPnted, rslvdPath) == rslvdPath) {
X if ( strncmp (loggedin.udir, rslvdPath, strlen(loggedin.udir)) == 0 )
END-of-ibsh/files/patch-delbadfiles.c
echo x - ibsh/files/patch-ibsh.h
sed 's/^X//' >ibsh/files/patch-ibsh.h << 'END-of-ibsh/files/patch-ibsh.h'
X--- ibsh.h.old Tue Nov 1 17:50:21 2005
X+++ ibsh.h Tue Nov 1 17:56:21 2005
X@@ -58,12 +58,12 @@
X #define LINE_SIZE 80
X #define STRING_SIZE 255
X #define BUFFER_SIZE 4096
X-#define PATH_MAX 4096
X+#define PATH_MAXb 4096
X #define MAX_ITEMS 50
X-#define COMMANDS_DIR "/etc/ibsh/cmds"
X-#define COMMANDS_FILE "/etc/ibsh/globals.cmds"
X-#define EXTENSIONS_DIR "/etc/ibsh/xtns"
X-#define EXTENSIONS_FILE "/etc/ibsh/globals.xtns"
X+#define COMMANDS_DIR "%%PREFIX%%/etc/ibsh/cmds"
X+#define COMMANDS_FILE "%%PREFIX%%/etc/ibsh/globals.cmds"
X+#define EXTENSIONS_DIR "%%PREFIX%%/etc/ibsh/xtns"
X+#define EXTENSIONS_FILE "%%PREFIX%%/etc/ibsh/globals.xtns"
X
X /* Antixploit */
X #define C_CODE "#include"
END-of-ibsh/files/patch-ibsh.h
echo x - ibsh/files/patch-Makefile
sed 's/^X//' >ibsh/files/patch-Makefile << 'END-of-ibsh/files/patch-Makefile'
X--- Makefile.old Tue Nov 1 17:31:15 2005
X+++ Makefile Tue Nov 1 18:11:37 2005
X@@ -2,6 +2,9 @@
X CC = gcc
X OBJECTS = main.o command.o jail.o execute.o config.o misc.o antixploit.o delbadfiles.o
X
X+all: ibsh
X+install: ibsh_install
X+
X ibsh: ${OBJECTS} ibsh.h
X ${CC} -o ibsh ${OBJECTS}
X
X@@ -30,22 +33,22 @@
X ${CC} -c delbadfiles.c
X
X ibsh_install:
X- cp ./ibsh /bin/
X- mkdir /etc/ibsh
X- mkdir /etc/ibsh/cmds
X- mkdir /etc/ibsh/xtns
X- cp ./globals.cmds /etc/ibsh/
X- cp ./globals.xtns /etc/ibsh/
X+ cp ./ibsh ${PREFIX}/bin/
X+ @mkdir ${PREFIX}/etc/ibsh
X+ @mkdir ${PREFIX}/etc/ibsh/cmds
X+ @mkdir ${PREFIX}/etc/ibsh/xtns
X+ cp ./globals.cmds ${PREFIX}/etc/ibsh/
X+ cp ./globals.xtns ${PREFIX}/etc/ibsh/
X
X ibsh_uninstall:
X- rm -rf /etc/ibsh/globals.cmds
X- rm -rf /etc/ibsh/globals.xtns
X- rm -rf /etc/ibsh/cmds/*.*
X- rm -rf /etc/ibsh/xtns/*.*
X- rmdir /etc/ibsh/cmds
X- rmdir /etc/ibsh/xtns
X- rmdir /etc/ibsh
X- rm -rf /bin/ibsh
X+ rm -rf ${PREFIX}/etc/ibsh/globals.cmds
X+ rm -rf ${PREFIX}/etc/ibsh/globals.xtns
X+ rm -rf ${PREFIX}/etc/ibsh/cmds/*.*
X+ rm -rf ${PREFIX}/etc/ibsh/xtns/*.*
X+ rmdir ${PREFIX}/etc/ibsh/cmds
X+ rmdir ${PREFIX}/etc/ibsh/xtns
X+ rmdir ${PREFIX}/etc/ibsh
X+ rm -rf ${PREFIX}/bin/ibsh
X
X clean:
X rm -rf ibsh
END-of-ibsh/files/patch-Makefile
echo x - ibsh/pkg-plist
sed 's/^X//' >ibsh/pkg-plist << 'END-of-ibsh/pkg-plist'
Xbin/ibsh
Xetc/ibsh/globals.cmds
Xetc/ibsh/globals.xtns
X
X at dirrm /etc/ibsh/cmds
X at dirrm /etc/ibsh/xtns
X at dirrm /etc/ibsh
END-of-ibsh/pkg-plist
echo x - ibsh/pkg-descr
sed 's/^X//' >ibsh/pkg-descr << 'END-of-ibsh/pkg-descr'
XIron Bars Shell is a restricted Unix shell. The user can not step
Xout of, nor access files outside the home directory. It is written
Xin C for Linux. No libraries used. It is small, fast, secure. Two
Xascii configuration files for more control.
X
XWWW: http://ibsh.sourceforge.net/
X
X- Vaida Bogdan
Xvaida.bogdan at gmail.com
END-of-ibsh/pkg-descr
echo x - ibsh/distinfo
sed 's/^X//' >ibsh/distinfo << 'END-of-ibsh/distinfo'
XMD5 (ibsh-0.3e.tar.gz) = 41ea08a03c6bd805dff1a5ff25ea1d5b
XSIZE (ibsh-0.3e.tar.gz) = 20475
END-of-ibsh/distinfo
echo x - ibsh/Makefile
sed 's/^X//' >ibsh/Makefile << 'END-of-ibsh/Makefile'
X# New ports collection makefile for: rkhunter
X# Date created: 1 Oct 2005
X# Whom: Vaida Bogdan
X#
X# $FreeBSD$
X#
X
XPORTNAME= ibsh
XPORTVERSION= 0.3e
XCATEGORIES= shells
XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR= ${PORTNAME}
X
XMAINTAINER= vaida.bogdan at gmail.com
XCOMMENT= Restricted unix shell
X
XUSE_GMAKE= yes
XNO_INSTALL_MANPAGES= yes
XSED_SCRIPT= -e 's|%%PREFIX%%|${PREFIX}|g'
XPORTDOCS= AUTHORS BUGS CONTRIBUTORS COPYING COPYRIGHT ChangeLog \
X INSTALL README TODO VERSION
XPKGMESSAGE= ${files}/pkg-message
X
X.include <bsd.port.pre.mk>
Xpre-build:
X.for f in ibsh.h INSTALL
X @${CP} ${WRKSRC}/${f} ${WRKDIR}/${f}
X @${SED} ${SED_SCRIPT} ${WRKDIR}/${f} >${WRKSRC}/${f}
X.endfor
X
X
Xpost-install:
X.if !defined(NOPORTDOCS)
X ${MKDIR} ${DOCSDIR}
X ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${DOCSDIR}
X.endif
X @${SED} ${SED_SCRIPT} ${.CURDIR}/pkg-message > ${PKGMESSAGE}
X.ifndef(BATCH)
X @${ECHO}
X @${CAT} ${PKGMESSAGE}
X @${ECHO}
X.endif
X
X.include <bsd.port.post.mk>
END-of-ibsh/Makefile
echo x - ibsh/pkg-message
sed 's/^X//' >ibsh/pkg-message << 'END-of-ibsh/pkg-message'
X==========================================================================
X
XTo use the shell:
X
X# echo %%PREFIX%%/bin/ibsh >> /etc/shells
X
XAlso check %%PREFIX%%/etc/ibsh
X
X==========================================================================
END-of-ibsh/pkg-message
exit
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list