******************************************
 QLogic Dynamic TGT-LUN Discovery Utility
******************************************
Ver: 2.26	SA Apr 15 2014
	- Rhel7 support added
Ver: 2.25	HZ Dec 16 2013
	- Change vport detection logic for RHEL6 and SLES11
	- Change vport detection logic for RHEL6 and SLES11

Ver: 2.24       SA Mar 01 2013
	- Added support for virtual ports on rhel6

Ver: 2.23	SR Feb 13 2013
	- Added support for virtual ports
Ver: 2.22	SA Aug 22 2012
	- Added supprt for kernel version 3.0
Ver: 2.21	JS Aug 20 2010
	- Add echo to show Max LUNs value
	- Add return for out of range Max LUN value
	- Error handling when noluns are attached to target
	- check block sd device dir to rescan for size change
	- Add changes in readme file for Max LUN scan

Ver: 2.21	JS Aug 03 2010
	- Additional check to handle LUN removal by mid-layer

Ver: 2.20	SR Sep 18 2009
	- Display correct message as MAX # of LUNS

Ver: 2.19	SR Jun 12 2009
	- Have a common logic for processing sg/sd disks

Ver: 2.18	SR/RD May 22 2009
        - sd device is replaced by sg for sg_turs.
        - Added the check for scsi device type 0x03h and 0x1Fh.

Ver: 2.17	SR May 12 2009
	- New README
Ver: 2.16	PP Jan 08 2009
	- Package contents in README is updated
		
Ver: 2.15	PP Dec 12 2008
	- Added newly implemented functions to Main Menu in README.

Ver: 2.14	SR Dec 11 2008
	- Change logic to check for targets with multiple sessions.

Ver: 2.13	PP Nov 21 2008
	- Removed qlu_warning_msg function
	- Correct help message for -al option
	- Allow issuing LIP on all OS.

Ver: 2.12	PP/SR Oct 3 2008
	- Check for DID_NO_CONNECT status
	- Retry sg_turs 3 times for Unit Attention
	- Add proper paths for tgt delete/detect
	- Handle the situation where o/p of sg_map is incomplete

Ver: 2.11	SR Aug 22 2008
	- Correct the variable names
	- Make sure SG utils are not looked for multiple times
	- Check if QL_DISTRUCTIVE_REFRESH along with sense_key
	- Check if delete file exists before echo in it

Ver: 2.10	SR Aug 11 2008
	- Use bundled SG3 utility if system sg_turs 
	  dosen't support verbose mode
	- Ask user choice for distructive scan if make of SG3 fails
	
Ver: 2.9	PP Jul 30 2008
	- Added issuing lip as an option
	- Added logic to remove devices corresponding to deleted luns,
	  Not the ones which are temporarily down

Ver: 2.8	PP Jun 10 2008
	- Added extended scan support to RHEL5 Distros
	- Handle the condition of having spaces in  directory names.
	- Explicit check for combination of extended proc.
Ver: 2.7	PP Jun 05 2008
	- Added extended scan support to rescan the luns whose disk 
	  attributes has changed.
Ver: 2.6	PP/SR Apr 30 2008
	- Added logic to support RHEL5 inbox ISCSI drivers
	- Added support for ISCSI drivers
	- Fix the issue to return more than 256 luns,
	  targets and hosts.
	- Correct return status from check_distro
Ver: 2.5	SR Feb 19 2008
	- Added new README
Ver: 2.4	SV Mar 15 2007
	- Added command line option "max-lun" (ER0000000052424)
Ver: 2.3	SR Mar 06 2007
	- Included SG Utils (ver 1.23)
	- In REFRESH use sg_map & sg_turs instead of removing LUNS
Ver: 2.2	SV Feb 12 2007
	- README file name changed to README.ql-dynamic-tgt-lun-disc.txt
Ver: 2.1	SV/SR Jan 25 2007
	- Fixed Controller Lun issue for Clariion
Ver: 2.0	SV Jan 10, 2007
	- Fix the issue of MAX-LUNs
	- Added display current LUNs
	- Utility name changed in the README 
Ver: 1.9	SR Nov 20, 2006
	- Check if proc is mounted
Ver: 1.8	SR Oct 19, 2006
	- Added new README
Ver: 1.7	SR Oct 6, 2006
	- Renamed ql-lun-scan to ql-dynamic-tgt-lun-disc
Ver: 1.6	SR Aug 11, 2006
	- Added support for distro drivers.
	- functions ql_issue_lip & ql_check_distro
Ver: 1.5	SR July 4, 2006
	- Ignored the controller LUN in wait
Ver: 1.4	SR June 26, 2006
	- Added logic to wait for driver scan completion
Ver: 1.3	SR June 23, 2006
	- Added support for SLES 10
Ver: 1.2	LC/SR May 31, 2006
	- Ir-respective of /proc/scsi/qla***/* do LUN scan
	- Added revision file
