openbsd
10 years agono longer need to fool emacs indentation and other if (0) oddities.
tedu [Thu, 17 Apr 2014 21:41:12 +0000 (21:41 +0000)]
no longer need to fool emacs indentation and other if (0) oddities.

10 years agoalways build in RSA and DSA. ok deraadt miod
tedu [Thu, 17 Apr 2014 21:37:37 +0000 (21:37 +0000)]
always build in RSA and DSA. ok deraadt miod

10 years agokill REF_PRINT/REF_CHECK debugging framework noone would use
deraadt [Thu, 17 Apr 2014 21:32:37 +0000 (21:32 +0000)]
kill REF_PRINT/REF_CHECK debugging framework noone would use
ok miod

10 years agoSome VMS and WIN32 cleanup
giovanni [Thu, 17 Apr 2014 21:31:27 +0000 (21:31 +0000)]
Some VMS and WIN32 cleanup
ok miod@ lteo@

10 years agoGet rid of MS Visual C compiler and Intel C compiler specific defines.
miod [Thu, 17 Apr 2014 21:17:11 +0000 (21:17 +0000)]
Get rid of MS Visual C compiler and Intel C compiler specific defines.

10 years agoSHA and AES (and sadly MD5) can't be considered optional. ok beck miod
tedu [Thu, 17 Apr 2014 21:15:37 +0000 (21:15 +0000)]
SHA and AES (and sadly MD5) can't be considered optional. ok beck miod

10 years agoOpenBSD isn't NetWare or Windows, and it has SIGPIPE.
matthew [Thu, 17 Apr 2014 21:11:28 +0000 (21:11 +0000)]
OpenBSD isn't NetWare or Windows, and it has SIGPIPE.

ok lteo miod

10 years agoThere are no plans to ever build this with the Metrojerks compiler.
miod [Thu, 17 Apr 2014 21:10:59 +0000 (21:10 +0000)]
There are no plans to ever build this with the Metrojerks compiler.

10 years agoRemove support for big-endian i386 and amd64.
miod [Thu, 17 Apr 2014 21:07:04 +0000 (21:07 +0000)]
Remove support for big-endian i386 and amd64.

Before someone suggests the OpenSSL people are junkies, here is what they
mention about this:
/* Most will argue that x86_64 is always little-endian. Well,
 * yes, but then we have stratus.com who has modified gcc to
 * "emulate" big-endian on x86. Is there evidence that they
 * [or somebody else] won't do same for x86_64? Naturally no.
 * And this line is waiting ready for that brave soul:-) */

So, yes, they are on drugs. But they are not alone, the stratus.com people are,
too.

10 years agosince we're replacing LIST_SEPARATOR_CHAR with ':', no point using %c
sthen [Thu, 17 Apr 2014 21:04:32 +0000 (21:04 +0000)]
since we're replacing LIST_SEPARATOR_CHAR with ':', no point using %c
in the help printf

10 years agoMostly gut e_os.h:
deraadt [Thu, 17 Apr 2014 20:58:07 +0000 (20:58 +0000)]
Mostly gut e_os.h:
USE_SOCKETS is unrelated to using sockets, but just pulls in .h files.  It
makes every file buy a kitchen sink, because 11 files forgot to.
EXIT() is really exit(), a gentle surprise
but... OPENSSL_EXIT() is really just return(), because noone compiles the
openssl command non-monolithic anymore

10 years agomalloc + memset 0 -> calloc
miod [Thu, 17 Apr 2014 20:57:05 +0000 (20:57 +0000)]
malloc + memset 0 -> calloc
(not that it matters much as this is in disabled code, for we don't build with
zlib support)

10 years agodead code
tedu [Thu, 17 Apr 2014 20:47:22 +0000 (20:47 +0000)]
dead code

10 years agounused variable
tedu [Thu, 17 Apr 2014 20:44:45 +0000 (20:44 +0000)]
unused variable

10 years ago-Wall
tedu [Thu, 17 Apr 2014 20:43:42 +0000 (20:43 +0000)]
-Wall

10 years agoa little less obfuscation
tedu [Thu, 17 Apr 2014 20:42:18 +0000 (20:42 +0000)]
a little less obfuscation

10 years agofold prototypes into o_str.c. miod
tedu [Thu, 17 Apr 2014 20:40:24 +0000 (20:40 +0000)]
fold prototypes into o_str.c. miod

10 years agoquick pass at removing ability to disable sha256 and sha512. ok miod
tedu [Thu, 17 Apr 2014 20:34:24 +0000 (20:34 +0000)]
quick pass at removing ability to disable sha256 and sha512. ok miod

10 years agoAren't you glad to have this file tell you that ``C2.pl works''? Bonus point
miod [Thu, 17 Apr 2014 20:30:46 +0000 (20:30 +0000)]
Aren't you glad to have this file tell you that ``C2.pl works''? Bonus point
if you can spot C2.pl.

10 years agoNuke BN_DEBUG_LEVITTE
miod [Thu, 17 Apr 2014 20:29:19 +0000 (20:29 +0000)]
Nuke BN_DEBUG_LEVITTE

10 years agoNo need to consider being compiled by NASM anymore.
miod [Thu, 17 Apr 2014 20:18:57 +0000 (20:18 +0000)]
No need to consider being compiled by NASM anymore.

10 years agoStop paying lip service to non-AT&T syntax assemblers in the x86 world.
miod [Thu, 17 Apr 2014 20:17:45 +0000 (20:17 +0000)]
Stop paying lip service to non-AT&T syntax assemblers in the x86 world.

10 years agotodo: do not leave 15 year old todo lists in the tree.
miod [Thu, 17 Apr 2014 20:06:48 +0000 (20:06 +0000)]
todo: do not leave 15 year old todo lists in the tree.

10 years agofix BIO_snprintf usage in here.
beck [Thu, 17 Apr 2014 20:03:03 +0000 (20:03 +0000)]
fix BIO_snprintf usage in here.
ok tedu@

10 years agoUse of OPENSSL_SYS_xxx defines in public header files considered harmful.
miod [Thu, 17 Apr 2014 19:59:12 +0000 (19:59 +0000)]
Use of OPENSSL_SYS_xxx defines in public header files considered harmful.

10 years agoBob O.D.'ed on the o_dir code so high he forgot to rm the `test' after
miod [Thu, 17 Apr 2014 19:53:32 +0000 (19:53 +0000)]
Bob O.D.'ed on the o_dir code so high he forgot to rm the `test' after
rewriting the code.

10 years agosprintf: bad.
miod [Thu, 17 Apr 2014 19:33:42 +0000 (19:33 +0000)]
sprintf: bad.
snprintf: good.
snprintf with a correct size: better!
(harmless in this case)

10 years agoI'm just trying to improve the code...
tedu [Thu, 17 Apr 2014 19:28:08 +0000 (19:28 +0000)]
I'm just trying to improve the code...

10 years agoRemove utils that we don't use
afresh1 [Thu, 17 Apr 2014 19:22:31 +0000 (19:22 +0000)]
Remove utils that we don't use

opensslwrap.sh and shlib_wrap.sh are used by tests that are getting replaced,
x86asm.sh is obsoleted by our Makefile machinery

ok miod

10 years agoRemove unused ssl utils
afresh1 [Thu, 17 Apr 2014 19:20:52 +0000 (19:20 +0000)]
Remove unused ssl utils

This code is the reason perl has a name as a write only language.

ok deraadt miod

10 years agoGarbage collect one pair of needless parentheses in SQL code generation;
schwarze [Thu, 17 Apr 2014 19:19:54 +0000 (19:19 +0000)]
Garbage collect one pair of needless parentheses in SQL code generation;
note this doesn't affect performance, SQLite generates the same byte code.
While here, make the calls to exprspec() easier to understand.

10 years agoexpunge more of the old build system
afresh1 [Thu, 17 Apr 2014 19:19:14 +0000 (19:19 +0000)]
expunge more of the old build system

ok deraadt miod

10 years agowhitespace
otto [Thu, 17 Apr 2014 19:07:14 +0000 (19:07 +0000)]
whitespace

10 years agorm redundant declaration; from Xin Li
otto [Thu, 17 Apr 2014 19:06:04 +0000 (19:06 +0000)]
rm redundant declaration; from Xin Li

10 years agoRemove oh-so-important-from-a-security-pov OpenSSL_rtdsc() function.
miod [Thu, 17 Apr 2014 18:49:35 +0000 (18:49 +0000)]
Remove oh-so-important-from-a-security-pov OpenSSL_rtdsc() function.

10 years agofix some more leaks, mostly suggestions from miod
jsg [Thu, 17 Apr 2014 18:38:53 +0000 (18:38 +0000)]
fix some more leaks, mostly suggestions from miod
ok miod@

10 years agoRemove the benchmark part of the selftest. It uses the undocumented
miod [Thu, 17 Apr 2014 18:37:48 +0000 (18:37 +0000)]
Remove the benchmark part of the selftest. It uses the undocumented
OPENSSL_rdtsc() routine to get a high-precision timestamp, and (although
this is the only user of this routine in libcrypto) forces every platform
willing to provide fast assembly versions of some routines, to also
provide OPENSSL_rdtsc().

10 years agocrypto/modes/gcm128.c can be used as its own selftest. Add it to regress,
miod [Thu, 17 Apr 2014 18:33:21 +0000 (18:33 +0000)]
crypto/modes/gcm128.c can be used as its own selftest. Add it to regress,
conveniently leaving the benchmark code not compiled in the test.

10 years agoOk, there was a need for OPENSSL_cleanse() instead of bzero() to prevent
miod [Thu, 17 Apr 2014 18:16:45 +0000 (18:16 +0000)]
Ok, there was a need for OPENSSL_cleanse() instead of bzero() to prevent
supposedly smart compilers from optimizing memory cleanups away. Understood.

Ok, in case of an hypothetically super smart compiler, OPENSSL_cleanse() had
to be convoluted enough for the compiler not to recognize that this was
actually bzero() in disguise. Understood.

But then why there had been optimized assembler versions of OPENSSL_cleanse()
is beyond me. Did someone not trust the C obfuscation?

10 years agospidey senses
sthen [Thu, 17 Apr 2014 18:13:26 +0000 (18:13 +0000)]
spidey senses

10 years agoMove the machine-specific parts of the libcrypto Makefile to per-arch makefile
miod [Thu, 17 Apr 2014 18:11:46 +0000 (18:11 +0000)]
Move the machine-specific parts of the libcrypto Makefile to per-arch makefile
fragments, to ease maintainance, and see through the fog of bugs.

"looks good" deraadt@

10 years agosome KNF cleanup following the script
deraadt [Thu, 17 Apr 2014 17:50:44 +0000 (17:50 +0000)]
some KNF cleanup following the script

10 years agoInvoke OPENSSL_add_all_algorithms_noconf() to enforce OPENSSL_cpuid_setup()
miod [Thu, 17 Apr 2014 17:49:36 +0000 (17:49 +0000)]
Invoke OPENSSL_add_all_algorithms_noconf() to enforce OPENSSL_cpuid_setup()
has been called, for, depending how libcrypto, it might be a hidden symbol.
Reported by jsg@

10 years agofix some of the leaks
jsg [Thu, 17 Apr 2014 17:30:22 +0000 (17:30 +0000)]
fix some of the leaks
ok miod@ looks good deraadt@

10 years agofix a potential double free
jsg [Thu, 17 Apr 2014 17:11:10 +0000 (17:11 +0000)]
fix a potential double free
ok miod@

10 years agoremove OPENSSL_realloc_clean usage here - replace with intrinsics to make
beck [Thu, 17 Apr 2014 16:30:59 +0000 (16:30 +0000)]
remove OPENSSL_realloc_clean usage here - replace with intrinsics to make
it obvious what should happen.
ok tedu@

10 years agoFully kill FIPS API. Forcible certification conflicts with the goals of a
tedu [Thu, 17 Apr 2014 16:17:41 +0000 (16:17 +0000)]
Fully kill FIPS API. Forcible certification conflicts with the goals of a
free software project. ok beck deraadt

Ports calling FIPS_mode_set(1): mongodb

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 16:14:15 +0000 (16:14 +0000)]
Initial KNF.

10 years ago#nnT went away a while ago, remove a leftover from the manpage.
nicm [Thu, 17 Apr 2014 15:48:02 +0000 (15:48 +0000)]
#nnT went away a while ago, remove a leftover from the manpage.

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 15:43:33 +0000 (15:43 +0000)]
Initial KNF.

10 years agoAdd some UTF-8 utility functions and use them to prevent the width limit
nicm [Thu, 17 Apr 2014 15:37:55 +0000 (15:37 +0000)]
Add some UTF-8 utility functions and use them to prevent the width limit
on formats from splitting UTF-8 characters improperly.

10 years agoSync show.c with the route version. Make the two files more similar but
claudio [Thu, 17 Apr 2014 15:36:53 +0000 (15:36 +0000)]
Sync show.c with the route version. Make the two files more similar but
still not identical. OK sthen@ mpi@ jca@

10 years agoSync show.c to what we have in netstat.c (at least steal some good idioms
claudio [Thu, 17 Apr 2014 15:35:35 +0000 (15:35 +0000)]
Sync show.c to what we have in netstat.c (at least steal some good idioms
from there). OK sthen@ mpi@ jca@

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 15:30:56 +0000 (15:30 +0000)]
Initial KNF.

10 years agoDon't default enable the debug functionality with its unprotected getenv().
guenther [Thu, 17 Apr 2014 15:28:26 +0000 (15:28 +0000)]
Don't default enable the debug functionality with its unprotected getenv().

ok eric@ sthen@ deraadt@

10 years agoMore KNF.
jsing [Thu, 17 Apr 2014 15:17:22 +0000 (15:17 +0000)]
More KNF.

10 years agoMore KNF.
jsing [Thu, 17 Apr 2014 15:12:00 +0000 (15:12 +0000)]
More KNF.

10 years agoMake sure the original thread is blocked until any other threads are
guenther [Thu, 17 Apr 2014 14:52:50 +0000 (14:52 +0000)]
Make sure the original thread is blocked until any other threads are
completely detached from the process before letting it exit, so that
sleeping in systrace_exit() doesn't reorder them and lead to a panic.

Panic reported by Fabian Raetz (fabian.raetz (at) gmail.com)
ok tedu@

10 years agoremove special case for uucp entries.
okan [Thu, 17 Apr 2014 14:49:11 +0000 (14:49 +0000)]
remove special case for uucp entries.

ok guenther

10 years agoSome more long lines.
nicm [Thu, 17 Apr 2014 14:45:49 +0000 (14:45 +0000)]
Some more long lines.

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 14:43:34 +0000 (14:43 +0000)]
Initial KNF.

10 years agoI've replaced everything in this file. ISC liscense it with my copyright
beck [Thu, 17 Apr 2014 14:28:44 +0000 (14:28 +0000)]
I've replaced everything in this file. ISC liscense it with my copyright

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 14:24:41 +0000 (14:24 +0000)]
Initial KNF.

10 years agoOnly scroll by one line at a time in choose mode, lists are generally
nicm [Thu, 17 Apr 2014 14:13:59 +0000 (14:13 +0000)]
Only scroll by one line at a time in choose mode, lists are generally
pretty small.

10 years agoRemove defines for unwanted OS support...
jsing [Thu, 17 Apr 2014 14:09:44 +0000 (14:09 +0000)]
Remove defines for unwanted OS support...

ok miod@

10 years agoremove some code that is now unused after guenther's changes in 1.20.
jsg [Thu, 17 Apr 2014 14:08:57 +0000 (14:08 +0000)]
remove some code that is now unused after guenther's changes in 1.20.

10 years agoKNF.
jsing [Thu, 17 Apr 2014 13:58:39 +0000 (13:58 +0000)]
KNF.

10 years agoInitial KNF.
jsing [Thu, 17 Apr 2014 13:58:24 +0000 (13:58 +0000)]
Initial KNF.

10 years agoOops. INADDR_ANY != INADDR_BROADCAST. Fixes DHCPDISCOVERY and
krw [Thu, 17 Apr 2014 13:46:48 +0000 (13:46 +0000)]
Oops. INADDR_ANY != INADDR_BROADCAST. Fixes DHCPDISCOVERY and
DHCPDECLINE.

noted by sthen@

10 years agosimply wrap around intrinsics, and knf cleanup.
beck [Thu, 17 Apr 2014 13:45:44 +0000 (13:45 +0000)]
simply wrap around intrinsics, and knf cleanup.
ok miod@ deraadt@

10 years agoChange library to use intrinsic memory allocation functions instead of
beck [Thu, 17 Apr 2014 13:37:48 +0000 (13:37 +0000)]
Change library to use intrinsic memory allocation functions instead of
OPENSSL_foo wrappers. This changes:
OPENSSL_malloc->malloc
OPENSSL_free->free
OPENSSL_relloc->realloc
OPENSSL_freeFunc->free

10 years agoRevert unintended whitespace changes.
jsing [Thu, 17 Apr 2014 13:29:21 +0000 (13:29 +0000)]
Revert unintended whitespace changes.

10 years agoOPENSSL_gmtime() is not a gmtime() wrapper. It is a gmtime_r().
deraadt [Thu, 17 Apr 2014 13:29:09 +0000 (13:29 +0000)]
OPENSSL_gmtime() is not a gmtime() wrapper.  It is a gmtime_r().
Always trying to confuse people...
ok guenther

10 years agoOPENSSL_DECLARE_EXIT serves no purpose.
deraadt [Thu, 17 Apr 2014 13:20:30 +0000 (13:20 +0000)]
OPENSSL_DECLARE_EXIT serves no purpose.

10 years agoIn debug output, print loop ids as decimals and port ids as 24bit hex.
jmatthew [Thu, 17 Apr 2014 13:18:41 +0000 (13:18 +0000)]
In debug output, print loop ids as decimals and port ids as 24bit hex.
Fix some parameters and wording too.

10 years agoSet PATH explicitly, either from client or session
nicm [Thu, 17 Apr 2014 13:02:59 +0000 (13:02 +0000)]
Set PATH explicitly, either from client or session
environment. Previously it came from the session environment. From J
Raynor.

10 years agoWrap some long lines.
nicm [Thu, 17 Apr 2014 12:57:28 +0000 (12:57 +0000)]
Wrap some long lines.

10 years ago1. RAND_seed is now DEPRECATED
deraadt [Thu, 17 Apr 2014 12:48:51 +0000 (12:48 +0000)]
1. RAND_seed is now DEPRECATED
2. Even passing a digest in as entropy is sloppy.

But apparently the OpenSSL guys could find no objects of lesser value to
pass to the pluggable random subsystem, and had to resort to private keys
and digests.  Classy.

ok djm

10 years agoDon't limit the DCS buffer to 256 bytes, expand it as needed. Requested
nicm [Thu, 17 Apr 2014 12:43:38 +0000 (12:43 +0000)]
Don't limit the DCS buffer to 256 bytes, expand it as needed. Requested
by Suraj Kurapati.

10 years agoRAND_seed now does nothing, so skip the operation
deraadt [Thu, 17 Apr 2014 12:42:43 +0000 (12:42 +0000)]
RAND_seed now does nothing, so skip the operation

10 years agoDo not feed RSA private key information to the random subsystem as
deraadt [Thu, 17 Apr 2014 12:14:26 +0000 (12:14 +0000)]
Do not feed RSA private key information to the random subsystem as
entropy.  It might be fed to a pluggable random subsystem....

What were they thinking?!

ok guenther

10 years agoRemove some unnecessary includes and fix a typo.
nicm [Thu, 17 Apr 2014 11:38:35 +0000 (11:38 +0000)]
Remove some unnecessary includes and fix a typo.

10 years agoremove duplicated tests in if statements
jsg [Thu, 17 Apr 2014 10:56:25 +0000 (10:56 +0000)]
remove duplicated tests in if statements
ok krw@ sthen@ deraadt@

10 years agoFix for ", " issue in jsing's knf script
guenther [Thu, 17 Apr 2014 10:50:36 +0000 (10:50 +0000)]
Fix for ", " issue in jsing's knf script

10 years agoDo not need to map to another silly name for unistd.h here either
deraadt [Thu, 17 Apr 2014 10:28:20 +0000 (10:28 +0000)]
Do not need to map to another silly name for unistd.h here either

10 years agounistd.h is always in the same place; no need to #include the result of
deraadt [Thu, 17 Apr 2014 10:24:08 +0000 (10:24 +0000)]
unistd.h is always in the same place; no need to #include the result of
a maze of conditional #define's

10 years agominimal fix for ', ' issue in jsing's indent script
deraadt [Thu, 17 Apr 2014 10:17:56 +0000 (10:17 +0000)]
minimal fix for ', ' issue in jsing's indent script

10 years agoEliminate a couple of always-NULL parameters. Eliminate some
krw [Thu, 17 Apr 2014 09:59:30 +0000 (09:59 +0000)]
Eliminate a couple of always-NULL parameters. Eliminate some
pointless repetition of well-known info in log messages. Pass
around smaller bits of info. Make 'inaddr_any' a const struct
initialized with { INADDR_ANY }.

Tweaks and ok guenther@

10 years agoCorrect some time_t printing; factor out a grotty block while here
guenther [Thu, 17 Apr 2014 09:56:09 +0000 (09:56 +0000)]
Correct some time_t printing; factor out a grotty block while here

Based on a diff from Arto Jonsson (ajonsson (at) kapsi.fi)
ok deraadt@

10 years agoOpenSSL PR#3309: when looking for an extension, set the last found position
sthen [Thu, 17 Apr 2014 09:18:20 +0000 (09:18 +0000)]
OpenSSL PR#3309: when looking for an extension, set the last found position
to -1 to properly search all extensions.  ok tedu@

From http://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=300b9f0b70

10 years agoCorrect the dance to fix the active pane in join-pane by pulling the
nicm [Thu, 17 Apr 2014 09:13:13 +0000 (09:13 +0000)]
Correct the dance to fix the active pane in join-pane by pulling the
(right) code from break-pane and window_remove_pane into a helper
function.

10 years agoIt's been a quarter century: we can assume volatile is present with that name.
guenther [Thu, 17 Apr 2014 09:01:25 +0000 (09:01 +0000)]
It's been a quarter century: we can assume volatile is present with that name.

10 years agoRemove the ossltests target, these are now all in libcrypto regress
jsg [Thu, 17 Apr 2014 08:06:59 +0000 (08:06 +0000)]
Remove the ossltests target, these are now all in libcrypto regress
except sha256t/sha512t which are likely to be removed for license reasons.

10 years agoRemove the "info" message mechanism, this was only used for about five
nicm [Thu, 17 Apr 2014 07:55:43 +0000 (07:55 +0000)]
Remove the "info" message mechanism, this was only used for about five
mostly useless and annoying messages. Change those commands to silence
on success like all the others. Still accept the -q command line flag
and "quiet" server option for now.

10 years agomove enginetest to regress as was done with the other tests
jsg [Thu, 17 Apr 2014 07:52:08 +0000 (07:52 +0000)]
move enginetest to regress as was done with the other tests

10 years agoExtend the -q flag to set-option to suppress errors about unknown
nicm [Thu, 17 Apr 2014 07:51:38 +0000 (07:51 +0000)]
Extend the -q flag to set-option to suppress errors about unknown
options - this will allow options to be removed more easily.

10 years agoDo not show the -fg, -bg and -attr options. If asked for one explicitly,
nicm [Thu, 17 Apr 2014 07:43:20 +0000 (07:43 +0000)]
Do not show the -fg, -bg and -attr options. If asked for one explicitly,
show the equivalent -style option instead.

10 years agoRemove the monitor-content option and associated bits and bobs. It's
nicm [Thu, 17 Apr 2014 07:36:45 +0000 (07:36 +0000)]
Remove the monitor-content option and associated bits and bobs. It's
never worked very well. If there is a big demand for it to return, will
consider better ways to do it.

10 years agocall the correct decrypt function in aes_cbc_cipher()
jsg [Thu, 17 Apr 2014 07:23:14 +0000 (07:23 +0000)]
call the correct decrypt function in aes_cbc_cipher()

From:

commit e9c80e04c1a3b5a0de8e666155ab4ecb2697a77d
Author: Andy Polyakov <appro@openssl.org>
Date:   Wed Dec 18 21:42:46 2013 +0100

    evp/e_[aes|camellia].c: fix typo in CBC subroutine.

    It worked because it was never called.

Our e_camellia.c does not have this problem.

ok miod@ deraadt@

10 years agorework this to implement the active path checks when mpath asks for
dlg [Thu, 17 Apr 2014 06:38:54 +0000 (06:38 +0000)]
rework this to implement the active path checks when mpath asks for
it rather than on attach. just need to implement a sense handler
to detect failover and this is done.

thanks to jmatthew@ for plugging this together again for me.