#!/bin/tcsh
#
#	vi: set autoindent tabstop=8 shiftwidth=4 :
#
#	HP-target-install-basic
#
#	Script for installing and configuring the target
#
#
#	Copyright (C) 2001-2003 InterOperability Lab (IOL)
#	University of New Hampshier (UNH)
#	Durham, NH 03824
#
#	This program is free software; you can redistribute it and/or modify
#	it under the terms of the GNU General Public License as published by
#	the Free Software Foundation; either version 2, or (at your option)
#	any later version.
#
#	This program is distributed in the hope that it will be useful,
#	but WITHOUT ANY WARRANTY; without even the implied warranty of
#	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#	GNU General Public License for more details.
#
#	You should have received a copy of the GNU General Public License
#	along with this program; if not, write to the Free Software
#	Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
#	USA.
#
#	The name of IOL and/or UNH may not be used to endorse or 
#       promote products
#	derived from this software without specific prior written permission.
#
#


#
#	change the max and default read/write socket buffer 
#       sizes to 1 Megabyte and disable the TCP RTT calculation
#
if ( -f /proc/sys/net/core/rmem_max )  then 
	echo "1048575" > /proc/sys/net/core/rmem_max
endif

if ( -f /proc/sys/net/core/rmem_default ) then
	echo "1048575" > /proc/sys/net/core/rmem_default
endif

if ( -f  /proc/sys/net/core/wmem_max ) then 
	echo "1048575" > /proc/sys/net/core/wmem_max
endif

if ( -f /proc/sys/net/core/wmem_default ) then
	echo "1048575" > /proc/sys/net/core/wmem_default
endif

if ( -f /proc/sys/net/ipv4/tcp_timestamp ) then 
	echo "0" > /proc/sys/net/ipv4/tcp_timestamps
endif



/sbin/insmod --force ../target/unh_scsi_target.o
/sbin/insmod --force ../target/unh_iscsi_target.o
#
#	HP-target-install-basic
#   Basic target emulator setup 
#   
############## Configure Target ###############
./iscsi_manage target set TargetPortalGroupTag=1 host=0
#
# p=1 to always phase collapse
./iscsi_manage target force p=1 host=0
#
# HeaderDigest && DataDigest enabled
#
./iscsi_manage target set HeaderDigest=CRC32C,None host=0
./iscsi_manage target set DataDigest=CRC32C,None host=0
#
# Accept Multiple Connections per Session
#
./iscsi_manage target set MaxConnections=4 host=0
#
############## Error Recovery #################
./iscsi_manage target set ErrorRecoveryLevel=1 host=0
# ? ready 2 xmit what ?
./iscsi_manage target force r2tp=2 host=0
# Snack data mode enabled
./iscsi_manage target snack d=y host=0
# Snack Status mode enabled
./iscsi_manage target snack s=y host=0
# Snack data retransmission enabled 
./iscsi_manage target snack h=1 host=0

cat /proc/scsi_target/iscsi_target/*


