Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=0081bdadd2ae6807dbcb16a315a3a56d4893211c
commit 0081bdadd2ae6807dbcb16a315a3a56d4893211c Author: bouleetbil <bouleet...@frogdev.info> Date: Mon Dec 28 21:52:29 2009 +0000 iscsi-2.0_871-1-i686 *new package diff --git a/source/network-extra/iscsi/CVE-2009-1297.diff b/source/network-extra/iscsi/CVE-2009-1297.diff new file mode 100644 index 0000000..cb9dc55 --- /dev/null +++ b/source/network-extra/iscsi/CVE-2009-1297.diff @@ -0,0 +1,32 @@ +--- utils.orig/iscsi_discovery 2009-10-26 23:09:08.000000000 +0100 ++++ utils/iscsi_discovery 2009-10-26 23:11:56.000000000 +0100 +@@ -104,24 +104,22 @@ + + connected=0 + discovered=0 +- df=/tmp/discovered.$$ + + dbg "starting discovery to $ip" +- iscsiadm -m discovery --type sendtargets --portal ${ip}:${port} > ${df} +- while read portal target ++ disc="$(iscsiadm -m discovery --type sendtargets --portal ${ip}:${port})" ++ echo "${disc}" | while read portal target + do + portal=${portal%,*} + select_transport +- done < ${df} ++ done + +- discovered=$(cat ${df} | wc -l) ++ discovered=$(echo "${disc}" | wc -l) + if [ ${discovered} = 0 ]; then + echo "failed to discover targets at ${ip}" + exit 2 + else + echo "discovered ${discovered} targets at ${ip}" + fi +- /bin/rm -f ${df} + } + + try_login() + diff --git a/source/network-extra/iscsi/FrugalBuild b/source/network-extra/iscsi/FrugalBuild new file mode 100644 index 0000000..44023a3 --- /dev/null +++ b/source/network-extra/iscsi/FrugalBuild @@ -0,0 +1,36 @@ +# Compiling Time: 0.03 SBU +# Maintainer: bouleetbil <bouleet...@frogdev.info> + +pkgname=iscsi +_F_archive_name="open-iscsi" +pkgver=2.0_871 +pkgrel=1 +pkgdesc="Open-iSCSI project is a high performance, transport independent" +url="http://www.open-iscsi.org" +#don't build modules provides by kernel now +source=(http://www.open-iscsi.org/bits/$_F_archive_name-${pkgver/_/-}.tar.gz \ + noModules.diff CVE-2009-1297.diff initiatorname.iscsi rc.iscsid iscsid) +up2date="Flasttar http://www.open-iscsi.org/bits/" +depends=('glibc') +groups=('network-extra') +archs=('i686') +sha1sums=('968baf16d4094fb9842bc04b0fe8109103356252' \ + '8ca923fff93623dff5bb9b3548034699f5f7483e' \ + 'b71c3fd3096b1654ab250445b7f660176bf7704d' \ + '7adb8bb034125184c7210d12c6c562069539545a' \ + '2d8e99f24ec87b923a76af06404567f7cfeb33a5' \ + '024b307d3a881c2bc07a6e2e599cdd65abe868ba') +_F_cd_path=$_F_archive_name-${pkgver/_/-} +backup=('etc/iscsi/iscsid.conf' 'etc/iscsi/initiatorname.iscsi' 'etc/sysconfig/iscsid') + +build() { + Fbuild + Fmkdir var/db/iscsi + Fmkdir etc/sysconfig/ + Fdirschmod var/db/iscsi 0700 + Fcp initiatorname.iscsi etc/iscsi/ + Fcp iscsid etc/sysconfig/ + Frcd2 iscsid +} + +# optimization OK diff --git a/source/network-extra/iscsi/initiatorname.iscsi b/source/network-extra/iscsi/initiatorname.iscsi new file mode 100644 index 0000000..e5cefaf --- /dev/null +++ b/source/network-extra/iscsi/initiatorname.iscsi @@ -0,0 +1,28 @@ +# This file must contain a InitiatorName entry! +# white space is significent here! +#InitiatorName=iqn.2005-09.tld.domain.hostname:openiscsi-initiator +#InitiatorAlias=foobar + +# Sample documentation follows: + +# The InitiatorName should take the following format +# iqn.${YEAR}-${MONTH}-${DOMAIN_REVERSED}.${HOSTNAME}:${UNIQUE_STRING} +# Where YEAR and MONTH are the dates that your domain was registered. +# You can use WHOIS to find when your domain was registered. +# If you don't have a real domain in the outside world, invent one, but use +# .local for your top-level. + +# Example case #1: +# This assumes you own foobar.co.uk. +# Domain name: foobar.co.uk. +# Registration date: March 2001 +# Hostname: linux +# InitiatorName=iqn.2001-03.uk.co.foobar.linux:openiscsi-29b48ad602d5f83dd9cd9aa3ef741216 + +# Example case #2: +# This assumes you don't have a domain of your own. +# Domain name: foobar.local +# Registration date: March 2001 +# Hostname: linux +# InitiatorName=iqn.2001-03.local.foobar.linux:openiscsi-29b48ad602d5f83dd9cd9aa3ef741216 + diff --git a/source/network-extra/iscsi/iscsid b/source/network-extra/iscsi/iscsid new file mode 100644 index 0000000..850f675 --- /dev/null +++ b/source/network-extra/iscsi/iscsid @@ -0,0 +1,14 @@ +# /etc/sysconfig/iscsid + +# config file to use +CONFIG_FILE=/etc/iscsi/iscsid.conf + +# you need to specify an initiatorname in the file +INITIATORNAME_FILE=/etc/iscsi/initiatorname.iscsi + +# options to pass to iscsid +OPTS="-i ${INITIATORNAME_FILE}" + +# Start automatic targets when iscsid is started +AUTOSTARTTARGETS="yes" + diff --git a/source/network-extra/iscsi/noModules.diff b/source/network-extra/iscsi/noModules.diff new file mode 100644 index 0000000..ff1bef3 --- /dev/null +++ b/source/network-extra/iscsi/noModules.diff @@ -0,0 +1,49 @@ +--- src/Makefile 2009-12-28 20:28:44.000000000 +0000 ++++ src/Makefile 2009-12-28 20:30:00.000000000 +0000 +@@ -24,7 +24,7 @@ + # using '$(MAKE)' instead of just 'make' allows make to run in parallel + # over multiple makefile. + +-all: user kernel ++all: user + + user: ; + $(MAKE) -C utils/sysdeps +@@ -40,16 +40,6 @@ + @echo + @echo "Read README file for detailed information." + +-kernel: force +- $(MAKE) -C kernel +- @echo "Kernel Compilation complete Output file" +- @echo "----------------------------------- ----------------" +- @echo "Built iSCSI Open Interface module: kernel/scsi_transport_iscsi.ko" +- @echo "Built iSCSI library module: kernel/libiscsi.ko" +- @echo "Built iSCSI over TCP library module: kernel/libiscsi_tcp.ko" +- @echo "Built iSCSI over TCP kernel module: kernel/iscsi_tcp.ko" +- +-force: ; + + clean: + $(MAKE) -C utils/sysdeps clean +@@ -63,9 +53,9 @@ + # note that make may still execute the blocks in parallel + .NOTPARALLEL: install_user install_programs install_initd \ + install_initd_suse install_initd_redhat install_initd_debian \ +- install_etc install_iface install_doc install_kernel install_iname ++ install_etc install_iface install_doc install_iname + +-install: install_kernel install_programs install_doc install_etc \ ++install: install_programs install_doc install_etc \ + install_initd install_iname install_iface + + install_user: install_programs install_doc install_etc \ +@@ -118,8 +108,6 @@ + $(INSTALL) -d $(DESTDIR)$(mandir)/man8 + $(INSTALL) -m 644 $^ $(DESTDIR)$(mandir)/man8 + +-install_kernel: +- $(MAKE) -C kernel install_kernel + + install_iname: + if [ ! -f /etc/iscsi/initiatorname.iscsi ]; then \ diff --git a/source/network-extra/iscsi/rc.iscsid b/source/network-extra/iscsi/rc.iscsid new file mode 100644 index 0000000..c603410 --- /dev/null +++ b/source/network-extra/iscsi/rc.iscsid @@ -0,0 +1,82 @@ +#!/bin/bash + +# (c) 2009 bouleetbil <bouleet...@frogdev.info> +# rc.iscsi for FrugalWare +# distributed under GPL License + +# chkconfig: 2345 85 15 +# description: Open-iSCSI is a high performance, transport independent. + +source /lib/initscripts/functions +TEXTDOMAIN=iscsid +TEXTDOMAINDIR=/lib/initscripts/messages +daemon="iscsid" + +actions=(restart start status stop) + +[ -e /etc/sysconfig/iscsid ] && . /etc/sysconfig/iscsid +pid="pidof iscsid 2> /dev/null" + +do_modules() { + msg="$1" + shift + modules="${1}" + shift + modopts="$@" + for m in ${modules} + do + if [ -n "$(modprobe -l | grep ${m})" ] + then + modprobe ${modopts} ${m} + fi + done +} + +rc_start() +{ + start_msg + if [ -z "$(eval $pid)" ]; then + do_modules 'Loading' 'libiscsi scsi_transport_iscsi iscsi_tcp' + + /sbin/iscsid -- ${OPTS} + + # Start automatic targets when iscsid is started + if [ "${AUTOSTARTTARGETS}" = "yes" ]; then + starttargets + fi + ok $? + else + ok 999 + fi +} + +rc_stop() { + stop_msg + if [ ! -z "$(eval $pid)" ] ;then + stoptargets + killall /sbin/iscsid #--pidfile $PID_FILE + rm -f $PID_FILE + do_modules 'Removing iSCSI modules' 'iscsi_tcp scsi_transport_iscsi libiscsi' '-r' + ok $? + else + ok 999 + fi +} + +starttargets() { + echo "Setting up iSCSI targets" + /sbin/iscsiadm -m node --loginall=automatic +} + +stoptargets() { + echo "Disconnecting iSCSI targets" + sync + /sbin/iscsiadm -m node --logoutall=all +} + +rc_status() { + ebegin "Showing current active iSCSI sessions" + /sbin/iscsiadm -m session +} + +rc_exec $1 _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git