oweals/openssl.git
23 years agoChanges to the Kerberos SSL code by Jeffrey Altman <jaltman@columbia.edu>
Richard Levitte [Wed, 11 Jul 2001 15:31:45 +0000 (15:31 +0000)]
Changes to the Kerberos SSL code by Jeffrey Altman <jaltman@columbia.edu>
His comments are:

 . Fixed all of the Windows dynamic loading functions, prototypes, etc.

 . Corrected all of the unsigned/signed comparison warnings

 . Replaced the references to krb5_cksumarray[] for two reasons.
   First, it was an internal variable that should not have been
   referenced outside the library; nor could it have been with
   a shared library with restricted exports.  Second, the
   variable is no longer used in current Kerberos implementations.
   I replaced the code with equivalent functionality using functions
   that are exported from the library.

23 years agoWhat is an '-engine' version?
Lutz Jänicke [Wed, 11 Jul 2001 15:31:21 +0000 (15:31 +0000)]
What is an '-engine' version?

23 years agoThe implementation of the TKTBODY ASN.1 functions was missing.
Richard Levitte [Wed, 11 Jul 2001 15:29:33 +0000 (15:29 +0000)]
The implementation of the TKTBODY ASN.1 functions was missing.

23 years agomake update
Richard Levitte [Wed, 11 Jul 2001 15:16:15 +0000 (15:16 +0000)]
make update

23 years agoMake sure crypto/krb5/krb5_asn.h is copied to the directory of
Richard Levitte [Wed, 11 Jul 2001 15:15:31 +0000 (15:15 +0000)]
Make sure crypto/krb5/krb5_asn.h is copied to the directory of
exported header files.

23 years agoMake sure crypto/krb5/krb5_asn.h becomes part of libeay.num.
Richard Levitte [Wed, 11 Jul 2001 15:14:22 +0000 (15:14 +0000)]
Make sure crypto/krb5/krb5_asn.h becomes part of libeay.num.

23 years agoClarify! (based on recent mailing-list discussions)
Lutz Jänicke [Wed, 11 Jul 2001 15:10:28 +0000 (15:10 +0000)]
Clarify! (based on recent mailing-list discussions)

23 years agoOne forgotten function.
Richard Levitte [Wed, 11 Jul 2001 07:10:43 +0000 (07:10 +0000)]
One forgotten function.

23 years agomake update
Richard Levitte [Tue, 10 Jul 2001 21:00:37 +0000 (21:00 +0000)]
make update

23 years agoEVP_Digest() takes one more parameter.
Richard Levitte [Tue, 10 Jul 2001 20:58:13 +0000 (20:58 +0000)]
EVP_Digest() takes one more parameter.

23 years agoFor consistency with the terminology used in my SAC2001 paper, avoid
Bodo Möller [Tue, 10 Jul 2001 11:41:29 +0000 (11:41 +0000)]
For consistency with the terminology used in my SAC2001 paper, avoid
the term "simultaneous multiplication" (which -- acording to the
paper, at least -- applies only to certain methods which we don't use
here)

23 years agocomment change
Bodo Möller [Tue, 10 Jul 2001 11:28:53 +0000 (11:28 +0000)]
comment change

23 years agoFix PRNG.
Bodo Möller [Tue, 10 Jul 2001 10:49:34 +0000 (10:49 +0000)]
Fix PRNG.

23 years agoIn version numbers, there is just one "M" nybble.
Bodo Möller [Tue, 10 Jul 2001 10:04:26 +0000 (10:04 +0000)]
In version numbers, there is just one "M" nybble.

23 years agoPrecomputation will not necessarily be LIm-Lee precomputation.
Bodo Möller [Tue, 10 Jul 2001 10:04:05 +0000 (10:04 +0000)]
Precomputation will not necessarily be LIm-Lee precomputation.

23 years agoIf I define _XOPEN_SOURCE before including *any* system header file,
Richard Levitte [Mon, 9 Jul 2001 21:51:03 +0000 (21:51 +0000)]
If I define _XOPEN_SOURCE before including *any* system header file,
things will work much more smoothly.

23 years agoPatches from Vern Staats <staatsvr@asc.hpc.mil> to get Kerberos 5 in
Richard Levitte [Mon, 9 Jul 2001 21:46:58 +0000 (21:46 +0000)]
Patches from Vern Staats <staatsvr@asc.hpc.mil> to get Kerberos 5 in
SSL according to RFC 2712.  His comment is:

This is a patch to openssl-SNAP-20010702 to support Kerberized SSL
authentication.  I'm expecting to have the full kssl-0.5 kit up on
sourceforge by the end of the week.  The full kit includes patches
for mod-ssl, apache, and a few text clients.  The sourceforge URL
is http://sourceforge.net/projects/kssl/ .

Thanks to a note from Simon Wilkinson I've replaced my KRB5 AP_REQ
message with a real KerberosWrapper struct.  I think this is fully
RFC 2712 compliant now, including support for the optional
authenticator field.  I also added openssl-style ASN.1 macros for
a few Kerberos structs; see crypto/krb5/ if you're interested.

23 years agoA better compromise between encrypt and decrypt (but why isn't it as fast
Ben Laurie [Mon, 9 Jul 2001 21:00:36 +0000 (21:00 +0000)]
A better compromise between encrypt and decrypt (but why isn't it as fast
for encrypt?).

23 years agoHandle the common case first (where input size is a multiple of block size).
Ben Laurie [Sun, 8 Jul 2001 19:42:10 +0000 (19:42 +0000)]
Handle the common case first (where input size is a multiple of block size).
Worth around 5% for encrypt. Slows down decrypt slightly, but I expect to
regain that later.

23 years agoUse & instead of % - worth about 4% for 8 byte blocks.
Ben Laurie [Sun, 8 Jul 2001 17:27:32 +0000 (17:27 +0000)]
Use & instead of % - worth about 4% for 8 byte blocks.

23 years agoDon't update argc, argv for decrypt flag!
Ben Laurie [Sun, 8 Jul 2001 12:58:10 +0000 (12:58 +0000)]
Don't update argc, argv for decrypt flag!

23 years agoSpeed test decrypt EVP operations.
Ben Laurie [Sun, 8 Jul 2001 12:14:41 +0000 (12:14 +0000)]
Speed test decrypt EVP operations.

23 years agoCorrect const-ness.
Ben Laurie [Sun, 8 Jul 2001 11:42:38 +0000 (11:42 +0000)]
Correct const-ness.

23 years agoRemove unnecessary casts.
Ben Laurie [Fri, 6 Jul 2001 22:06:08 +0000 (22:06 +0000)]
Remove unnecessary casts.

23 years agoConstification.
Ben Laurie [Fri, 6 Jul 2001 21:35:00 +0000 (21:35 +0000)]
Constification.

23 years agoUse one address consistently.
Richard Levitte [Thu, 5 Jul 2001 10:20:07 +0000 (10:20 +0000)]
Use one address consistently.

23 years agoChange info to correct values.
Richard Levitte [Thu, 5 Jul 2001 10:19:13 +0000 (10:19 +0000)]
Change info to correct values.

23 years agoAlign with 0.9.6-stable CHANGES file, and make some corrections.
Bodo Möller [Wed, 4 Jul 2001 20:56:47 +0000 (20:56 +0000)]
Align with 0.9.6-stable CHANGES file, and make some corrections.

23 years agoEngine memory leaks have been fixed by now.
Bodo Möller [Wed, 4 Jul 2001 20:56:08 +0000 (20:56 +0000)]
Engine memory leaks have been fixed by now.

23 years agoCall ENGINE_cleanup() to avoid memory leak.
Bodo Möller [Wed, 4 Jul 2001 20:55:36 +0000 (20:55 +0000)]
Call ENGINE_cleanup() to avoid memory leak.

23 years agoEntry for Andy's mips3.s fix.
Bodo Möller [Wed, 4 Jul 2001 20:17:27 +0000 (20:17 +0000)]
Entry for Andy's mips3.s fix.

23 years agoUpdate nCipher header with more liberal licence.
Ben Laurie [Wed, 4 Jul 2001 12:26:39 +0000 (12:26 +0000)]
Update nCipher header with more liberal licence.

23 years agoWhen only the key is given to "enc", the IV is undefined
Lutz Jänicke [Tue, 3 Jul 2001 10:31:11 +0000 (10:31 +0000)]
When only the key is given to "enc", the IV is undefined
(found by Andy Brown <logic@warthog.com>).

23 years agoMake an extra note about shared libraries and backward compatibility.
Richard Levitte [Tue, 3 Jul 2001 01:43:11 +0000 (01:43 +0000)]
Make an extra note about shared libraries and backward compatibility.

23 years agoLet's include cryptlib.h *before* things like NO_SYSLOG are tested or
Richard Levitte [Mon, 2 Jul 2001 20:43:01 +0000 (20:43 +0000)]
Let's include cryptlib.h *before* things like NO_SYSLOG are tested or
used.

23 years ago[Forgotten commits?]
Richard Levitte [Mon, 2 Jul 2001 20:41:05 +0000 (20:41 +0000)]
[Forgotten commits?]
Changes to have OpenSSL compile on OS/2.
Contributed by "Brian Havard" <brianh@kheldar.apana.org.au>

23 years agoFix warning.
Ben Laurie [Mon, 2 Jul 2001 12:50:30 +0000 (12:50 +0000)]
Fix warning.

23 years agoInsuline shot
Richard Levitte [Sun, 1 Jul 2001 23:15:43 +0000 (23:15 +0000)]
Insuline shot

23 years agoChanges to have OpenSSL compile on OS/2.
Richard Levitte [Sun, 1 Jul 2001 22:39:46 +0000 (22:39 +0000)]
Changes to have OpenSSL compile on OS/2.
Contributed by "Brian Havard" <brianh@kheldar.apana.org.au>

23 years agoModify apps to use NCONF code instead of old CONF code.
Dr. Stephen Henson [Thu, 28 Jun 2001 11:41:50 +0000 (11:41 +0000)]
Modify apps to use NCONF code instead of old CONF code.

Add new extension functions which work with NCONF.

Tidy up extension config routines and remove redundant code.

Fix NCONF_get_number().

Todo: more testing of apps to see they still work...

23 years agoMake better use of load_cert, load_certs and load_key.
Richard Levitte [Wed, 27 Jun 2001 09:12:43 +0000 (09:12 +0000)]
Make better use of load_cert, load_certs and load_key.

23 years agoAnother empty X509_NAME fix.
Dr. Stephen Henson [Tue, 26 Jun 2001 12:39:22 +0000 (12:39 +0000)]
Another empty X509_NAME fix.

23 years agoHandle empty X509_NAME in printing routines.
Dr. Stephen Henson [Tue, 26 Jun 2001 12:04:35 +0000 (12:04 +0000)]
Handle empty X509_NAME in printing routines.

23 years agoDSA verification should insist that r and s are in the allowed range.
Bodo Möller [Tue, 26 Jun 2001 09:48:17 +0000 (09:48 +0000)]
DSA verification should insist that r and s are in the allowed range.

23 years agoMake better use of load_cert, load_certs and load_key.
Richard Levitte [Mon, 25 Jun 2001 14:23:36 +0000 (14:23 +0000)]
Make better use of load_cert, load_certs and load_key.

23 years agoMake get_ip() a bit more strict in it's parsing of IP addresses, and
Richard Levitte [Mon, 25 Jun 2001 14:12:45 +0000 (14:12 +0000)]
Make get_ip() a bit more strict in it's parsing of IP addresses, and
at the same time a bit more accepting with host names.

23 years agoMake better use of load_cert, load_certs and load_key.
Richard Levitte [Mon, 25 Jun 2001 14:00:47 +0000 (14:00 +0000)]
Make better use of load_cert, load_certs and load_key.

23 years agoTranslate into valid C (don't call functions with wrong prototypes).
Bodo Möller [Mon, 25 Jun 2001 10:09:55 +0000 (10:09 +0000)]
Translate into valid C (don't call functions with wrong prototypes).

23 years agoCall apps_shutdown() to take down what apps_startup() set up.
Richard Levitte [Mon, 25 Jun 2001 08:35:59 +0000 (08:35 +0000)]
Call apps_shutdown() to take down what apps_startup() set up.

23 years agoMake sure we don't return 0 on error.
Richard Levitte [Sun, 24 Jun 2001 07:00:41 +0000 (07:00 +0000)]
Make sure we don't return 0 on error.

23 years agoIn {RSA,DSA,DH}_new_method(x) need to increase the reference
Dr. Stephen Henson [Sat, 23 Jun 2001 23:07:34 +0000 (23:07 +0000)]
In {RSA,DSA,DH}_new_method(x) need to increase the reference
count of the ENGINE is x is not NULL since it will be freed
in {RSA,DSA,DH}_free().

23 years agoUse the new UI features, among others the new boolean input.
Richard Levitte [Sat, 23 Jun 2001 16:46:14 +0000 (16:46 +0000)]
Use the new UI features, among others the new boolean input.

NOTE: Boolean input hasn't been very well tested yet, so this part may
fail miserably.

23 years agoIncluding stdio.h before setting _XOPEN_SOURCE and
Richard Levitte [Sat, 23 Jun 2001 16:44:15 +0000 (16:44 +0000)]
Including stdio.h before setting _XOPEN_SOURCE and
_XOPEN_SOURCE_EXTENDED wasn't very smart...

23 years agomake update
Richard Levitte [Sat, 23 Jun 2001 16:43:03 +0000 (16:43 +0000)]
make update

23 years agoUse apps_shutdown() in all applications, in case someone decides not
Richard Levitte [Sat, 23 Jun 2001 16:37:32 +0000 (16:37 +0000)]
Use apps_shutdown() in all applications, in case someone decides not
to go the monolith way (does anyone do that these days?).

NOTE: a few applications are missing in this commit.  I've a few more
changes in them that I haven't tested yet.

23 years agoapps_startup() needs a corresponding apps_shutdown().
Richard Levitte [Sat, 23 Jun 2001 16:31:41 +0000 (16:31 +0000)]
apps_startup() needs a corresponding apps_shutdown().

23 years agoMake use of new features in UI's. Among others, the application
Richard Levitte [Sat, 23 Jun 2001 16:30:14 +0000 (16:30 +0000)]
Make use of new features in UI's.  Among others, the application
password callbak doesn't need to check for sizes any more.

23 years agoOops, applies to 0.9.7 only.
Richard Levitte [Sat, 23 Jun 2001 16:28:21 +0000 (16:28 +0000)]
Oops, applies to 0.9.7 only.

23 years agoDocument recent changes.
Richard Levitte [Sat, 23 Jun 2001 16:27:37 +0000 (16:27 +0000)]
Document recent changes.

23 years agoDo not loop i the OpenSSL UI method any more. Instead, letthe
Richard Levitte [Sat, 23 Jun 2001 16:25:56 +0000 (16:25 +0000)]
Do not loop i the OpenSSL UI method any more.  Instead, letthe
application do that.

NOTE: there's no requirement for other UI_METHODs to avoid this kind
of loop.  For example, a GUI UI_METHOD would probably check the
lengths of the answers from within instead of being constantly
redisplayed for everything that is wrong.

23 years agomake update
Richard Levitte [Sat, 23 Jun 2001 16:23:17 +0000 (16:23 +0000)]
make update

23 years agoImplement boolean (yes/no or OK/Cancel, ...) input.
Richard Levitte [Sat, 23 Jun 2001 16:22:48 +0000 (16:22 +0000)]
Implement boolean (yes/no or OK/Cancel, ...) input.

Implement UI controls.  Current controls are the possibility to output
the OpenSSL error stack on the same channel from within UI_process()
and to check if the same user interface can be redone without being
rebuilt (this is often more a question of philosophy than
technicalities).

23 years agoNew error printing function that gives the possibility to print the
Richard Levitte [Sat, 23 Jun 2001 15:06:17 +0000 (15:06 +0000)]
New error printing function that gives the possibility to print the
errors through an arbitrary function.

23 years agoInclude the UI error strings.
Richard Levitte [Sat, 23 Jun 2001 15:04:51 +0000 (15:04 +0000)]
Include the UI error strings.

23 years agoFor the UI functions that return an int, 0 or any positive number is a
Richard Levitte [Sat, 23 Jun 2001 14:51:53 +0000 (14:51 +0000)]
For the UI functions that return an int, 0 or any positive number is a
success return, any negative number is a failure.  Make sure we check
the return value with that in mind.

23 years agoFix hwcrhk_insert_card.
Dr. Stephen Henson [Sat, 23 Jun 2001 12:50:06 +0000 (12:50 +0000)]
Fix hwcrhk_insert_card.

23 years agoFix UI leak in apps.
Dr. Stephen Henson [Sat, 23 Jun 2001 12:48:46 +0000 (12:48 +0000)]
Fix UI leak in apps.

23 years agoIn UI_dup_*() function, use the duped string, not the original.
Dr. Stephen Henson [Sat, 23 Jun 2001 11:51:16 +0000 (11:51 +0000)]
In UI_dup_*() function, use the duped string, not the original.

23 years agoUpdate my config entry to allow use of DSOs.
Dr. Stephen Henson [Sat, 23 Jun 2001 11:49:33 +0000 (11:49 +0000)]
Update my config entry to allow use of DSOs.

23 years agoThis fixes "Spurious test failures on IRIX?" reported in April. Apparently
Andy Polyakov [Fri, 22 Jun 2001 19:17:42 +0000 (19:17 +0000)]
This fixes "Spurious test failures on IRIX?" reported in April. Apparently
I was wrong in conclusions about when addition starts overflowing in combaX
routines.

23 years agoFix memory leak when RAND is used: need to cleanup
Dr. Stephen Henson [Thu, 21 Jun 2001 12:19:10 +0000 (12:19 +0000)]
Fix memory leak when RAND is used: need to cleanup
RANDs ENGINE reference in ENGINE_cleanup().

23 years agoUpdate my status.
Richard Levitte [Wed, 20 Jun 2001 15:11:15 +0000 (15:11 +0000)]
Update my status.

23 years agoSince there is a way to create UI_METHODs, implement a destructor as
Richard Levitte [Wed, 20 Jun 2001 15:00:08 +0000 (15:00 +0000)]
Since there is a way to create UI_METHODs, implement a destructor as
well.

This probably requires reference counters and locks as well.  To be
implemented later.

23 years agoModify "openssl engine" to handle and display internal control
Richard Levitte [Wed, 20 Jun 2001 06:35:46 +0000 (06:35 +0000)]
Modify "openssl engine" to handle and display internal control
commands appropriately.

23 years agoChange all calls to low level digest routines in the library and
Dr. Stephen Henson [Tue, 19 Jun 2001 22:30:40 +0000 (22:30 +0000)]
Change all calls to low level digest routines in the library and
applications to use EVP. Add missing calls to HMAC_cleanup() and
don't assume HMAC_CTX can be copied using memcpy().

Note: this is almost identical to the patch submitted to openssl-dev
by Verdon Walker <VWalker@novell.com> except some redundant
EVP_add_digest_()/EVP_cleanup() calls were removed and some changes
made to avoid compiler warnings.

23 years agoFix memory leaks.
Dr. Stephen Henson [Tue, 19 Jun 2001 17:13:48 +0000 (17:13 +0000)]
Fix memory leaks.

23 years agocp is only used when DSA is built.
Richard Levitte [Tue, 19 Jun 2001 16:40:36 +0000 (16:40 +0000)]
cp is only used when DSA is built.

23 years agoDo a proof of concept. "openssl genrsa" will make the name of the
Richard Levitte [Tue, 19 Jun 2001 16:34:53 +0000 (16:34 +0000)]
Do a proof of concept.  "openssl genrsa" will make the name of the
file part of the password prompt unless it's standard input...

More will be added...

23 years agoChange the common application routines to use a UI_METHOD for password
Richard Levitte [Tue, 19 Jun 2001 16:26:30 +0000 (16:26 +0000)]
Change the common application routines to use a UI_METHOD for password
prompting, even when done through the callback.

23 years ago- Add the possibility to control engines through control names but
Richard Levitte [Tue, 19 Jun 2001 16:12:18 +0000 (16:12 +0000)]
- Add the possibility to control engines through control names but
  with arbitrary arguments instead of just a string.
- Change the key loaders to take a UI_METHOD instead of a callback
  function pointer.  NOTE: this breaks binary compatibility with
  earlier versions of OpenSSL [engine].
- Addapt the nCipher code for these new conditions and add a card
  insertion callback.

23 years agoThe default flag should be for default passwords only. Otherwise,
Richard Levitte [Tue, 19 Jun 2001 15:54:47 +0000 (15:54 +0000)]
The default flag should be for default passwords only.  Otherwise,
someone having a default that is not a password will be confused.

23 years agoEnhance the user interface with better support for dialog box
Richard Levitte [Tue, 19 Jun 2001 15:52:00 +0000 (15:52 +0000)]
Enhance the user interface with better support for dialog box
prompting, application-defined prompts, the possibility to use
defaults (for example default passwords from somewhere else) and
interrupts/cancelations.

23 years agomake apps compile again
Dr. Stephen Henson [Tue, 19 Jun 2001 00:23:47 +0000 (00:23 +0000)]
make apps compile again

23 years agoDon't set pointer if add_lock_callback used.
Dr. Stephen Henson [Tue, 19 Jun 2001 00:04:57 +0000 (00:04 +0000)]
Don't set pointer if add_lock_callback used.

23 years agoOne feature wasn't quite commited yet
Richard Levitte [Mon, 18 Jun 2001 06:30:12 +0000 (06:30 +0000)]
One feature wasn't quite commited yet

23 years agoProvide an application-common setup function for engines and use it
Richard Levitte [Mon, 18 Jun 2001 06:22:33 +0000 (06:22 +0000)]
Provide an application-common setup function for engines and use it
everywhere.

23 years agoFix a memory leak (there's another around here somewhere, though).
Ben Laurie [Sun, 17 Jun 2001 14:42:57 +0000 (14:42 +0000)]
Fix a memory leak (there's another around here somewhere, though).
PR:

23 years agoDelete a redundant line.
Ben Laurie [Sat, 16 Jun 2001 21:51:26 +0000 (21:51 +0000)]
Delete a redundant line.

23 years agopay attention to blocksize before attempting decryption
Bodo Möller [Fri, 15 Jun 2001 18:05:09 +0000 (18:05 +0000)]
pay attention to blocksize before attempting decryption

23 years agoFor MSDOS, the tty filename still is "con", not "/dev/tty" ...
Bodo Möller [Mon, 11 Jun 2001 15:21:33 +0000 (15:21 +0000)]
For MSDOS, the tty filename still is "con", not "/dev/tty" ...

23 years agoGet rid of "possible WAW dependency" warnings.
Andy Polyakov [Mon, 11 Jun 2001 12:47:52 +0000 (12:47 +0000)]
Get rid of "possible WAW dependency" warnings.

Submitted by:
Reviewed by:
PR:

23 years agoeven use of default engines leaks memory
Bodo Möller [Mon, 11 Jun 2001 09:55:54 +0000 (09:55 +0000)]
even use of default engines leaks memory

23 years agoAdd directory name to the entry on /crypto/ui/.
Bodo Möller [Mon, 11 Jun 2001 09:55:20 +0000 (09:55 +0000)]
Add directory name to the entry on /crypto/ui/.

23 years agoEarlier OpenSSL versions printed prompts to stderr.
Bodo Möller [Mon, 11 Jun 2001 09:54:28 +0000 (09:54 +0000)]
Earlier OpenSSL versions printed prompts to stderr.
In the new crypto/ui/, this was changed into tty (which is usually
/dev/tty), i.e. the FILE * used for reading passwords from the user.
However stdio buffering for read/write streams is not without pitfalls
(passwords would be echoed on some systems).
To avoid problems, split tty into tty_in and tty_out (which are
opened separately).

23 years agoMake update
Dr. Stephen Henson [Mon, 11 Jun 2001 00:48:09 +0000 (00:48 +0000)]
Make update

23 years agoInitialize UI ex_data.
Dr. Stephen Henson [Mon, 11 Jun 2001 00:45:33 +0000 (00:45 +0000)]
Initialize UI ex_data.

23 years agoAdd support for MS CSP Name PKCS#12 attribute.
Dr. Stephen Henson [Mon, 11 Jun 2001 00:43:20 +0000 (00:43 +0000)]
Add support for MS CSP Name PKCS#12 attribute.

23 years agomore error codes fixed
Ulf Möller [Fri, 8 Jun 2001 14:16:39 +0000 (14:16 +0000)]
more error codes fixed

23 years agoERR_peek_error() returns "unsigned long".
Lutz Jänicke [Thu, 7 Jun 2001 17:20:50 +0000 (17:20 +0000)]
ERR_peek_error() returns "unsigned long".

23 years agoUse memmove() instead of memcpy() on areas that may overlap.
Richard Levitte [Thu, 7 Jun 2001 04:42:34 +0000 (04:42 +0000)]
Use memmove() instead of memcpy() on areas that may overlap.
Spotted by Nalin Dahyabhai <nalin@redhat.com>