Commit Graph

1439 Commits

Author SHA1 Message Date
oster
b99a3154c6 Add bits needed by my last changes to iscsifs.c (oops! :( ). In
particular, initialize the target name properly in g_target, and add
functions for setting the target name and retrieving a list of
available targets.

Thanks to agc for catching this.
2007-12-08 15:20:24 +00:00
agc
06a857cac5 Add some definitions necessary for building on busybox thanks to Peter
Eisch, update to version 20071206, and run autoconf and autoheader
again to regenerate the version information.
2007-12-06 00:08:05 +00:00
agc
6febf18c31 Quieten gcc - remove an extraneous ',' after the last element in an
enumerated type.
2007-12-05 07:23:03 +00:00
oster
2b8d2018cc Set "lun = sess->d" early on (but not too early), and allow multiple
targets to now work correctly.  XXX: This will need to be re-visited
at some point, and fixed properly.

Commit requested by: agc
2007-12-04 16:25:37 +00:00
wiz
6ffc795bbf New sentence, new line. Add comma in enumeration. 2007-12-03 18:19:08 +00:00
agc
6436d01687 Update autoconf parts to 20071130 to pick up two fixes:
md5 endian fix for Big Endian platforms

Greg Oster's impressively found fix for parameter negotiation
2007-11-30 09:56:32 +00:00
oster
1aad397ee0 We have 4 cases here: rx_answer, tx_answer, rx_offer, and tx_offer.
When determining what to put in to param->negotiated, it is *NOT*
sufficient to just pick one of offer_tx or offer_rx -- we may need to
use answer_rx or answer_tx as the negotiated parameter.  Failure to
pay attention to which case we are handling means we will occasionally
get "old parameter values" stuffed into responses, resulting in
obscure behavior (such as getting luns mixed up after a normal
connection is made) that is very difficult to replicate.
2007-11-30 00:33:34 +00:00
agc
23c77f8d12 Do runtime detection of machine's endianness, rather than relying on a cpp
macro which was never changed. This is the QAD fix, longer term we will
move to use native md5 routines if available.

Should go some way to fixing authentication problems when using an
initiator and target of different endianness.
2007-11-28 16:46:38 +00:00
agc
9e8e283ee9 Update the portable version to 20071122, via autoconf.
Only change is that the target returns MAXLBA in a READ_CAPACITY command
response, and the initiator adds one to it to find out the size.
2007-11-22 22:56:20 +00:00
agc
516da92e13 Add some more definitions which will be needed in the future. 2007-11-22 22:51:09 +00:00
agc
fe6dd62563 Note to self - document in comments the reasons for doing certain things.
Revert Max LBA calculation when returning the Maximum LBA from the target
to the iinitiator, following an email conversation with Jonathan Kollasch,
who points out a number of things:

+ the NetBSD scsipi driver reads the value returned by the drive and adds
one to it, so that standard SCSI drives return the 0-based Max LBA in a
READ CAPACITY command.

+ it is up to the initiator to add 1 to the Max LBA to find out the size
of the LUN (Jonathan verified this by using the UNH iSCSI initiator on
to a NetBSD target)

+ an analogous change to the NetBSD initiator (revision 1.4 of
iscsifs.c) is needed.
2007-11-18 23:52:19 +00:00
agc
445a5e5f36 Bump version to 20071114, to include the iSCSI initiator in the portable
version.
2007-11-14 20:05:52 +00:00
agc
f56debaab1 Rationalise this completely for the portable GNU autoconf version (which
is not used by the NetBSD reachover framework).

Get rid of the misplaced bin directory during the build phase, it's not
necessary.

Add commands to build the NetBSD iSCSI initiator.
2007-11-14 20:00:06 +00:00
agc
e99d7af118 Add some commented out code (not enabled yet) to deal with MODE_SENSE_10
SCSI commands.

No functional change.
2007-11-14 19:58:06 +00:00
agc
7f7c78c76b Rename include/util.h to include/iscsiutil.h to avoid a nameclash
with /usr/include/util.h.
2007-11-12 23:25:40 +00:00
pavel
cac90c847b Mention the ipf mode in more places, xref pf.conf(5) or ipnat.conf(5)
when speaking about the configuration file commands. Bump date.
2007-11-12 17:14:28 +00:00
pavel
7fa608457b Do not use ntohs() on TCP ports passed to the NAT lookup ioctl, apparently
they are expected in network order. Makes the proxy in ipf mode actually
work (but tested only on NetBSD 3.0).
2007-11-12 17:05:13 +00:00
jmmv
866b001ea5 Import of ATF 0.3
Initial import of the Automated Testing Framework, version 0.3, a project
that provides a framework to easily implement test cases for the NetBSD
operating system and some tools to run them and generate reports with the
results.

Note that this is just the framework (libraries and tools), which is and
will be maintained externally.  The tests themselves will come later, will
be put under the 'tests' hierarchy and will be managed exclusively under
the NetBSD CVS tree given that they are tied to the operating system.

The work done until version 0.1 was sponsored by the Google Summer of Code
2007 program and mentored by martin@.
2007-11-12 14:50:50 +00:00
agc
d880ffcdf0 In READ_CAPACITY, send back the size of the LUN, not the maximum LBA,
which is zero-based.

Problem reported by, and fix verified by, Greg Oster. Thanks, Greg!
2007-11-06 15:59:10 +00:00
tls
642c01f5cd Mollify NetBSD's lint (which brokenly doesn't define __STDC__ and thus
picks up a bogus assert() macro from assert.h) by not putting double
quotes too close to macro using assert().
2007-11-04 22:02:35 +00:00
joerg
9db95c28e5 Import of pkg_install-20071103.
- reject absolute names in +CONTENT
- fix size issues with pkg_add -u and buffer handling
- print file name of failed renames in pkgdb during pkg_add -u
- remove warning when running pkg_add as non-root
- remove more traces of master/slave mode
- update URLs for new ftp.netbsd.org layout
- make warning of broken symlinks separate from warning for non-existant
  files
- FETCH_PRE_ARGS option for download-vulnerability-list
- print only base package name in FILE_NAME for pkg_info -X
- don't leak memory in Dewey, it is called a lot more often now and
  makes a difference
- just allocate in vfcexec and free, don't bother caching the exec
  buffer
- remove some FTP debugging code
- make more allocation errors in the pkgdb iteration code fatal
- glob patterns and simple patterns are checked for being version-free
  as well
- try harder to get setgid permissions correctly when extracting as
  non-root
- fix waitpid to correctly handle EINTR
2007-11-03 14:14:12 +00:00
agc
2f510db93e Recognise the word "lun" as a synonym for "target" in the configuration
file - allows us to export luns as well as targets, which should reduce
some confusion when presenting storage to external entities.
2007-11-03 09:44:06 +00:00
gdt
e6599a52d6 Change buffer for SIOCGIFCONF usage from 2048 to 32768. Because the
code to retry on SIOCGIFCONF not returning all interfaces is broken,
this unreasonably large buffer should handle the case of a machine
with lots of (usually virtual) interfaces.  dhcpd 4 uses a different
method to get interface configuration, so this kludge should go away
on upgrade.

Fix based on understanding of the code, but has been compile-tested
only, to address failure report received from Michael Graff.
2007-10-31 15:26:51 +00:00
ragge
4ce08a9bc7 Import of current (today) pcc. 2007-10-27 14:43:28 +00:00
agc
d7728ae0d3 Update to version 20071025
Pay closer attention to the TSIH value that is assigned by the target -
rather than a simple (session id + 1) value, which cycles after 16 sessions
are used, use a central counter, and increment that whenever a TSIH is
apportioned. This fixes some problems for me with multiple targets being
ignored, and only the first target being used. Tested with the Microsoft
initiator, and the embryonic NetBSD initiator.

Use more enumerated types, rather than cpp definitions.

Use enumerated types also in preference to magic numbers.

In the iSCSI test harness, use the -t argument to specify a disk target
exported by the NetBSD iSCSI target. This allows us to test for the
situation outlined above.

Add my copyright to the test harness - there's no Intel code left anymore.

Modify the way initiator login and logout information is presented to the
user. This is only of concern to people who use this with the target in
non-detached (non-daemon) mode.

Get rid of the MODE_SENSE_10 and MODE_SELECT_10 cases in the disk switch,
since they do not return responses in the correct format yet.
2007-10-26 18:36:45 +00:00
agc
06e992a132 Correct the name of the AIX 5.3 initiator reporter (where known) 2007-10-26 18:19:36 +00:00
he
555e1d5a74 Remove a superfluous test, wcrtomb() cannot return (size_t)-2.
Pointed out by Aleksey Cheusov.
2007-10-25 22:22:41 +00:00
christos
ba0aca47b0 PR/37205: Aleksey Cheusov: nawk: a number of open files is limited to very
small constant. Make the array of files dynamically allocated.
2007-10-25 15:12:03 +00:00
he
50d663aa6a Add support for multibyte charsets in the "tolower" and "toupper" awk
functions.  Code contributed by Aleksey Cheusov in PR#36394, and slightly
tweaked for closer-to-KNF conventions by me.  Also slightly improved checks
of error returns.
2007-10-25 14:44:49 +00:00
he
c6b19d4d1d Bring back the fix in revision 1.6, apparently accidentally lost
during last merge, to allow escape of a newline in string literals.
2007-10-25 14:40:33 +00:00
he
917131a2cf When checking for the length of the user name, check against the size
of the correct field.  Fix provided by Bernhard Moellemann in PR#37137.
2007-10-16 15:37:32 +00:00
agc
a7eecfa1f4 Add a file containing information about NetBSD iSCSI target compatibility
with various different initiators.

Any more information gratefully received (either positive or negative).
2007-10-14 11:01:21 +00:00
mrg
862626dd09 two new hacks:
- include <stdbool.h> so bool is available _KERNEL for sys/condvar.h
- include <sys/mutex.h> before defining _KERNEL so it won't try to
  include <machine/intr.h> which isn't available to userland.

fixes builds on sparc64.
2007-10-09 01:23:20 +00:00
agc
7bc5694f64 Fix an off-by-511 error, pointed out by Andrey Yakovlev 2007-09-26 12:01:49 +00:00
agc
7dcbb17115 Bump version of the NetBSD iSCSI target to 20070925.
+ fix a reported problem with newer versions of FreeBSD which require
a block of data to be read and written, rather than a single byte.

+ add support for Extended Inquiry Data VPD Page (0x86), reported to be
necessary to interoperate with the AIX initiator.

+ add preliminary support for the Write and Verify SCSI operation (0x2e).
2007-09-25 22:16:58 +00:00
agc
91566c8774 As part of the initial checks to se ethat a writable disk really is
writable, do the touch(1) dance with 512 bytes of information, rather
than just a single byte - the single byte read and write causes
problems on newer versions of FreeBSD, I am informed.  Patch from
Andrey Yakovlev, cleaned up to compile by myself.

Add support for Extended Inquiry Data VPD Page (0x86), reported to be
necessary to interoperate with the AIX initiator.

Add preliminary support for the Write and Verify SCSI operation (0x2e).
2007-09-25 22:15:00 +00:00
agc
f22b6d776c Add a utility function to copy the target information to the caller - used
in the initiator functionality to keep a track of the target details.
2007-09-25 22:09:51 +00:00
agc
bfe5c01baa fix formatting in a comment 2007-09-25 22:08:10 +00:00
abs
275c9bb94a Comment out some references to compat.o until ragge can update - now we
build
2007-09-20 14:21:39 +00:00
abs
244d23f931 At core's request import ragge's current pcc-070920.tgz into src/dist/pcc
http://www.ludd.ltu.se/~ragge/pcc/

This is based on the original Portable C Compiler by S. C. Johnson,
written in the late 70's. Even though much of the compiler has been
rewritten, some of the basics still remain.

The goal of pcc is to produce a  small, simple, fast and understandable
C99 compiler under a BSD licence.
2007-09-20 13:08:44 +00:00
agc
4e1fbeb934 Might as well define MODE_SELECT_6 and MODE_SELECT_10 too before too
many people get violent.
2007-09-19 23:28:15 +00:00
agc
6a20fc2b13 Preliminary support for MODE_SELECT_{6,10} and MODE_SENSE_10.
Committed now because some high priority fixes are about to come down
the line.
2007-09-19 19:54:09 +00:00
martti
abde7e33e0 Fixed IPF bug #1767831
ipflog() & ipmon ignore IPv6 extension headers
2007-09-17 18:02:21 +00:00
drochner
13434589bc free the temporary path string if the fallback to an unversioned
plugin module fails
2007-09-14 17:57:39 +00:00
gdt
f77e123027 Follow NetBSD's interpretation of the interface to SIOCGIFCONF: the
next ifreq is sizeof(struct ifreq) after the current one unless the
sockaddr is bigger than the union in ifreq that holds it.

In the original 4.4BSD code, this interpretation results in the same
behavior as the "is the sockaddr bigger than struct sockaddr", because
sizeof(struct sockaddr) and sizeof(ifc->ifr_ifru) are the same.

Add comments pointing out problems in the 'need bigger buffer' code,
and copying excessive amounts of data.
2007-09-13 11:56:41 +00:00
cube
c725329722 Remove 3rd clause and my name from all the licences which were only in my
name.
2007-09-10 10:35:51 +00:00
martti
61078fef5f Revert to previous, it was not working for me correctly... 2007-09-10 06:28:38 +00:00
martti
fcbc8c046f Fixed IPF bug #1767831
ipflog() & ipmon ignore IPv6 extension headers

Patch fetched from the SourceForge bug report.
2007-09-10 06:12:02 +00:00
agc
e0ef0e5000 Welcome to version 20070908 - multiple targets bug fix. 2007-09-08 09:52:20 +00:00
agc
c11d4df578 Resurrect the port number argument to the iSCSI test harness. 2007-09-08 09:44:24 +00:00