Skip site navigation (1)Skip section navigation (2)
Date:      3 Feb 2002 14:03:29 -0000
From:      Jason Stone <jason-fbsd-ports-sfs@shalott.net>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/34691: new port for sfs - the self-certifying filesystem
Message-ID:  <20020203140329.65863.qmail@moonchild.fantastica>

next in thread | raw e-mail | index | archive | help

>Number:         34691
>Category:       ports
>Synopsis:       new port for sfs - the self-certifying filesystem
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Feb 07 02:20:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     jason
>Release:        FreeBSD 4.5-RC i386
>Organization:
>Environment:
System: FreeBSD fantastica.shalott.net 4.5-RC FreeBSD 4.5-RC #0: Thu Jan 24 23:45:36 PST 2002 root@moonchild.fantastica:/usr/src/sys/compile/JKERN i386


	
>Description:
	Port of SFS, a secure, self-certifying, global filesystem
>How-To-Repeat:
	
>Fix:

	

--- sfs.shar begins here ---
# 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:
#
#	sfs/
#	sfs/pkg-deinstall
#	sfs/Makefile
#	sfs/distinfo
#	sfs/pkg-comment
#	sfs/pkg-descr
#	sfs/pkg-plist
#	sfs/pkg-install
#	sfs/pkg-message
#
echo c - sfs/
mkdir -p sfs/ > /dev/null 2>&1
echo x - sfs/pkg-deinstall
sed 's/^X//' >sfs/pkg-deinstall << 'END-of-sfs/pkg-deinstall'
X#!/bin/sh
X
Xif [ "$2" != "POST-DEINSTALL" ]; then
X    exit 0
Xfi
X
XUSER=sfs
XGROUP=sfs
X
Xpw del group ${GROUP}
Xpw del user ${USER}
X
Xexit 0
END-of-sfs/pkg-deinstall
echo x - sfs/Makefile
sed 's/^X//' >sfs/Makefile << 'END-of-sfs/Makefile'
X# New ports collection makefile for:	sfs
X# Date created:		2 Feb 2002
X# Whom:			Jason Stone <jason-fbsd-ports-sfs@shalott.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	sfs
XPORTVERSION=	0.5k
XPORTREVISION=	1
XCATEGORIES=	security
XMASTER_SITES=	http://www.fs.net/download/
XWRKSRC=		${WRKDIR}/${PORTNAME}-0.5
X
XMAINTAINER=	jason-fbsd-ports-sfs@shalott.net
X
XGNU_CONFIGURE=	yes
XCONFIGURE_ARGS=	--with-etcdir=${PREFIX}/etc -with-sfsuser=sfs -with-sfsgroup=sfs
X
XINSTALL_TARGET=	install-strip
X
Xpost-install:
X.if !defined(BATCH) && !defined(PACKAGE_BUILDING)
X	@${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
X	@${CAT} ${PKGMESSAGE}
X.endif
X	install-info ${PREFIX}/info/${PORTNAME}.info ${PREFIX}/info/dir
X
X.include <bsd.port.mk>
END-of-sfs/Makefile
echo x - sfs/distinfo
sed 's/^X//' >sfs/distinfo << 'END-of-sfs/distinfo'
XMD5 (sfs-0.5k.tar.gz) = 74d49ffa8472afb0e28b097bec3e7df5
END-of-sfs/distinfo
echo x - sfs/pkg-comment
sed 's/^X//' >sfs/pkg-comment << 'END-of-sfs/pkg-comment'
XSFS is a secure, global file system with completely decentralized control
END-of-sfs/pkg-comment
echo x - sfs/pkg-descr
sed 's/^X//' >sfs/pkg-descr << 'END-of-sfs/pkg-descr'
XSelf-certifying File System
X
XSFS is a secure, global file system with completely decentralized
Xcontrol.  SFS lets you access your files from anywhere and share them
Xwith anyone, anywhere. Anyone can set up an SFS server, and any user
Xcan access any server from any client. SFS lets you share files across
Xadministrative realms without involving administrators or
Xcertification authorities.
X
XWWW: http://www.fs.net/
END-of-sfs/pkg-descr
echo x - sfs/pkg-plist
sed 's/^X//' >sfs/pkg-plist << 'END-of-sfs/pkg-plist'
Xbin/dirsearch
Xbin/newaid
Xbin/rpcc
Xbin/sfsagent
Xbin/sfskey
Xbin/ssu
Xinclude/sfs
Xinclude/sfs-0.5/aclnt.h
Xinclude/sfs-0.5/aes.h
Xinclude/sfs-0.5/afsnode.h
Xinclude/sfs-0.5/agentconn.h
Xinclude/sfs-0.5/aiod.h
Xinclude/sfs-0.5/aiod_prot.h
Xinclude/sfs-0.5/aios.h
Xinclude/sfs-0.5/amisc.h
Xinclude/sfs-0.5/arc4.h
Xinclude/sfs-0.5/arena.h
Xinclude/sfs-0.5/arpc.h
Xinclude/sfs-0.5/array.h
Xinclude/sfs-0.5/asrv.h
Xinclude/sfs-0.5/async.h
Xinclude/sfs-0.5/autoconf.h
Xinclude/sfs-0.5/axprt.h
Xinclude/sfs-0.5/axprt_crypt.h
Xinclude/sfs-0.5/backoff.h
Xinclude/sfs-0.5/bbuddy.h
Xinclude/sfs-0.5/bench.h
Xinclude/sfs-0.5/bigint.h
Xinclude/sfs-0.5/bitvec.h
Xinclude/sfs-0.5/blowfish.h
Xinclude/sfs-0.5/callback.h
Xinclude/sfs-0.5/cbuf.h
Xinclude/sfs-0.5/crypt.h
Xinclude/sfs-0.5/crypt_prot.h
Xinclude/sfs-0.5/crypt_prot.x
Xinclude/sfs-0.5/crypthash.h
Xinclude/sfs-0.5/dns.h
Xinclude/sfs-0.5/dnsparse.h
Xinclude/sfs-0.5/err.h
Xinclude/sfs-0.5/esign.h
Xinclude/sfs-0.5/fdlim.h
Xinclude/sfs-0.5/getfh3.h
Xinclude/sfs-0.5/hashcash.h
Xinclude/sfs-0.5/ihash.h
Xinclude/sfs-0.5/init.h
Xinclude/sfs-0.5/itree.h
Xinclude/sfs-0.5/keyfunc.h
Xinclude/sfs-0.5/list.h
Xinclude/sfs-0.5/modalg.h
Xinclude/sfs-0.5/mount_prot.h
Xinclude/sfs-0.5/mount_prot.x
Xinclude/sfs-0.5/msb.h
Xinclude/sfs-0.5/nfs3_ext.x
Xinclude/sfs-0.5/nfs3_nonnul.h
Xinclude/sfs-0.5/nfs3_prot.h
Xinclude/sfs-0.5/nfs3_prot.x
Xinclude/sfs-0.5/nfs3exp_prot.h
Xinclude/sfs-0.5/nfs3exp_prot.x
Xinclude/sfs-0.5/nfs_prot.h
Xinclude/sfs-0.5/nfs_prot.x
Xinclude/sfs-0.5/nfsmounter.h
Xinclude/sfs-0.5/nfsmounter.x
Xinclude/sfs-0.5/nfsserv.h
Xinclude/sfs-0.5/nfstrans.h
Xinclude/sfs-0.5/opnew.h
Xinclude/sfs-0.5/parseopt.h
Xinclude/sfs-0.5/password.h
Xinclude/sfs-0.5/pcre.h
Xinclude/sfs-0.5/pmap_prot.h
Xinclude/sfs-0.5/pmap_prot.x
Xinclude/sfs-0.5/prime.h
Xinclude/sfs-0.5/prng.h
Xinclude/sfs-0.5/qhash.h
Xinclude/sfs-0.5/rabin.h
Xinclude/sfs-0.5/refcnt.h
Xinclude/sfs-0.5/rex.h
Xinclude/sfs-0.5/rex_prot.h
Xinclude/sfs-0.5/rex_prot.x
Xinclude/sfs-0.5/rpctypes.h
Xinclude/sfs-0.5/rwfd.h
Xinclude/sfs-0.5/rxx.h
Xinclude/sfs-0.5/seqno.h
Xinclude/sfs-0.5/serial.h
Xinclude/sfs-0.5/sfs-internal.h
Xinclude/sfs-0.5/sfs_prot.h
Xinclude/sfs-0.5/sfs_prot.x
Xinclude/sfs-0.5/sfsagent.h
Xinclude/sfs-0.5/sfsagent.x
Xinclude/sfs-0.5/sfsauth_prot.h
Xinclude/sfs-0.5/sfsauth_prot.x
Xinclude/sfs-0.5/sfscd_prot.h
Xinclude/sfs-0.5/sfscd_prot.x
Xinclude/sfs-0.5/sfsclient.h
Xinclude/sfs-0.5/sfsconnect.h
Xinclude/sfs-0.5/sfsmisc.h
Xinclude/sfs-0.5/sfsro_prot.h
Xinclude/sfs-0.5/sfsro_prot.x
Xinclude/sfs-0.5/sfsserv.h
Xinclude/sfs-0.5/sha1.h
Xinclude/sfs-0.5/srp.h
Xinclude/sfs-0.5/stllike.h
Xinclude/sfs-0.5/str.h
Xinclude/sfs-0.5/suio++.h
Xinclude/sfs-0.5/sysconf.h
Xinclude/sfs-0.5/tiger.h
Xinclude/sfs-0.5/union.h
Xinclude/sfs-0.5/uvfstrans.h
Xinclude/sfs-0.5/vatmpl.h
Xinclude/sfs-0.5/vec.h
Xinclude/sfs-0.5/wmstr.h
Xinclude/sfs-0.5/xdr_suio.h
Xinclude/sfs-0.5/xdrmisc.h
Xinclude/sfs-0.5/xhinfo.h
Xinclude/sfs.h
X@unexec install-info --delete %D/info/sfs.info %D/info/dir
Xinfo/sfs.info
Xinfo/sfs.info-1
Xinfo/sfs.info-2
X@exec install-info %D/info/sfs.info %D/info/dir
Xlib/libsfs.a
Xlib/sfs
Xlib/sfs-0.5/aiod
Xlib/sfs-0.5/libarpc.a
Xlib/sfs-0.5/libarpc.la
Xlib/sfs-0.5/libasync.a
Xlib/sfs-0.5/libasync.la
Xlib/sfs-0.5/libsfscrypt.a
Xlib/sfs-0.5/libsfscrypt.la
Xlib/sfs-0.5/libsfsmisc.a
Xlib/sfs-0.5/libsfsmisc.la
Xlib/sfs-0.5/libsvc.a
Xlib/sfs-0.5/libsvc.la
Xlib/sfs-0.5/mallock.o
Xlib/sfs-0.5/newaid
Xlib/sfs-0.5/nfsmounter
Xlib/sfs-0.5/pathinfo
Xlib/sfs-0.5/sfsauthd
Xlib/sfs-0.5/sfsrwcd
Xlib/sfs-0.5/sfsrwsd
Xlib/sfs-0.5/suidconnect
Xlib/sfs-0.5/xfer
Xsbin/funmount
Xsbin/sfscd
Xsbin/sfssd
Xshare/sfs/sfs_config
Xshare/sfs/sfs_srp_parms
Xshare/sfs/sfsauthd_config
Xshare/sfs/sfscd_config
Xshare/sfs/sfssd_config
X@dirrm include/sfs-0.5
X@dirrm lib/sfs-0.5
X@dirrm share/sfs
X@unexec rm -f /var/sfs/sockets/*.sock
X@unexec rm -f /var/sfs/random_seed
X@unexec rmdir /var/sfs/sockets
X@unexec rmdir /var/sfs
END-of-sfs/pkg-plist
echo x - sfs/pkg-install
sed 's/^X//' >sfs/pkg-install << 'END-of-sfs/pkg-install'
X#!/bin/sh
X
Xif [ -n "${PACKAGE_BUILDING}" ]; then
X	exit 0
Xfi
X
Xif [ "$2" = "POST-INSTALL" ]; then
X	USER=sfs
X	GROUP=${USER}
X	UID=51
X	GID=${UID}
X	PW=/usr/sbin/pw
X
X	if ${PW} group show "${GROUP}" 2>/dev/null; then
X		echo "You already have a group \"${GROUP}\", so I will use it."
X	else
X		if ${PW} groupadd ${GROUP} -g ${GID}; then
X			echo "Added group \"${GROUP}\"."
X		else
X			echo "Adding group \"${GROUP}\" failed..."
X			exit 1
X		fi
X	fi
X
X	if ${PW} user show "${USER}" 2>/dev/null; then
X		echo "You already have a user \"${USER}\", so I will use it."
X	else
X		if ${PW} useradd ${USER} -u ${UID} -g ${GROUP} -h - \
X			-d "/nonexistent" -s /nonexistent -c "sfs"
X		then
X			echo "Added user \"${USER}\"."
X		else
X			echo "Adding user \"${USER}\" failed..."
X			exit 1
X		fi
X	fi
X
X	chgrp ${GROUP} ${PKG_PREFIX}/lib/sfs-0.5/suidconnect
X	chmod 2551 ${PKG_PREFIX}/lib/sfs-0.5/suidconnect
X	mkdir /var/sfs
X	mkdir /var/sfs/sockets
X	chmod 755 /var/sfs
X	chmod 750 /var/sfs/sockets
X	chgrp ${USER}:${GROUP} /var/sfs
X	chgrp ${USER}:${GROUP} /var/sfs/sockets
X	exit 0
Xfi
END-of-sfs/pkg-install
echo x - sfs/pkg-message
sed 's/^X//' >sfs/pkg-message << 'END-of-sfs/pkg-message'
XThe sfs base system is now installed - after it is installed, try running
X"sfscd ; cat /sfs/sfs.fs.net:eu4cvv6wcnzscer98yn4qjpjnn9iv6pi/CONGRATULATIONS"
XIf you see the text "You have set up a working SFS client." then you have, as
Xit says, correctly installed the sfs client.
X
XIf you want to set up an sfs server, you'll have to generate keys with sfskey
Xand set up exports.  Exporting files involves first exporting them to localhost
Xvia nfs, and then configuring sfssd to export them by editing
X${PREFIX}/etc/sfsrwsd_config.  Read the info documentation for more details 
X("info sfs").
X
XUsers will have to run sfskey on the server to generate their own keys and
Xsfsagent on the client to use remote filesystems.
X
X---SECURITY NOTE---
X
XIf you run the sfs server, make sure that you set weak_mountd_authentication=NO
Xand nfs_reserved_port_only=YES in your /etc/rc.conf - if you think that you need
Xthose options to be set otherwise, be sure to read the sfs documentation and
Xunderstand the risks.
END-of-sfs/pkg-message
exit
--- sfs.shar ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020203140329.65863.qmail>