Hi Martin,

Responses below. Thanks!

regards,
Joy

On Thu, Apr 7, 2016 at 5:27 AM, Martin Pitt <martin.p...@ubuntu.com>
wrote:

> Hello Joy,
>
> thanks for your answers. I'll cut out the ones that are resolved now
> from my POV.
>
> Joy Latten [2016-04-06 19:48 -0000]:
> > crypto in regular openssl when in fips mode. The openssl-fips module is
> not
> > only bigger than this patch, but is separate and a bit more complex.
> > Since it is separate, it would almost be akin to maintaining 2 versions
> of
> > openssl. One advantage though is that it is maintained upstream. :-)
> > Again before I got here, Canonical consulted with external security
> > consultants who recommended we pursue the method that redhat and suse
> did.
>
> Yeah, that's a shame, though I realize this decision is not up to you
> or me. If we have funding for maintaining this patch both in Xenial
> (which should be fairly easy as we'll only backport security fixes)
> and, more importantly, in newer releases which will get newer upstream
> openssl releases and thus require heavy porting and testing, then so
> be it.
>
> > > crypto/dsa/dsa.h:
> > >  # define DSA_F_DSAPARAMS_PRINT_FP                         101
> > > +# define DSA_F_DSA_BUILTIN_KEYGEN                         127
> > > +# define DSA_F_DSA_BUILTIN_PARAMGEN                       128
> > >  # define DSA_F_DSA_BUILTIN_PARAMGEN2                      126
> > >
> > > Patches like this are utterly dangerous. As soon as a new upstream
> > > version defines their own new constant further down, the FIPS patch
> will
> > > most likely still apply, but silently introduce a conflict as two
> > > different constants now have the same value.
> > >
> >
> > Yes!  What you have stated is true in general. Fortunately in the case
> you
> > pointed to above, this should not be a problem. Those are error codes.
> When
> > adding new error codes in openssl, is standard practice that you run
> "make
> > errors" which in turn creates all those defines for errors. That is how
> the
> > above happened.
>
> This doesn't help at all, though. If upstream does a new release and
> calls "make errors", then releases a tarball with that, our patch just
> gets statically applied on top of that and thus will *not* adjust the
> error codes for potential conflicts again. So with that you'd get two
> constants with the same value.
>
> OTOH, if our package build would call "make errors" again, this would
> mean that (1) we'd have an ABI break (as existing reverse dependencies
> that use these error codes all need to be rebuilt for the new value,
> as it's a macro in a public header file), and (2) the patch should not
> contain this autogenerated part in the first place.
>
>
Ok, let me investigate a bit further and get back to you.


> > > There is some pointless whitespace change in e. g. crypto/evp/c_alld.c
> > > which further blow up the patch.
> > >
> > > Sorry about that, I thought I had caught all the whitespaces. I can
> > correct that.
>
> Just for avoidance of doubt: Please only clean this up if it's in the
> Canonical-modified portion of the patch. If that comes from
> RedHat/SUSE patches, it's magnitudes better and easier for long-term
> maintenance to import them unmodified (as much as possible) and accept
> some pointless noise, rather than heavily editing those. That's why
> I deem it very important to (1) clearly document where these patches
> originate, and (2) split them up into "taken as-is from
> https://opensuse.org/whereever"; and a separate "canonical
> modifications to the FIPS patch".
>
> > Please see above. I can break into smaller patches for easier
> > reviewing and bundle with some logic.  But in terms of maintenance,
> > I honestly don't know if it will matter. It is just messy to me,
> > regardless.  Sorry, I have spent some time thinking about it. I can
> > separate out such that everything under crypto/fips is in one patch,
> > and all else in another. But they won't be independent of each other
> > in regards to successfully applying and building.
>
> No no, please don't break them apart in arbitrary ways like this. The
> point is to break them apart by origin, e. g. "taken from the upstream
> FIPS branch", "taken from RedHat", "Canonical origin". This will make
> it tremendously easier to review (as the patches which have existed
> for 10 years in other distros only need a shallow review), maintain
> (as it's much simpler to update those patches from their original
> sources when rebasing to a newer upstream version), and understand (as
> it's clear what the actual Ubuntu delta is towards upstream, RH, and
> SUSE).
>
>
Ok, I agree. But I am afraid will still be big. The fedora patch had
already incorporated almost all the stuff needed from the openssl-fips
module.
But even so, I do think is a good idea to separate any additional changes I
made. I will get started on this.


> Thanks,
>
> Martin
>
>
> ** Changed in: openssl (Ubuntu)
>        Status: New => Incomplete
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1553309
>
> Title:
>   [FFe]: Include FIPS 140-2 into openssl  package
>
> Status in openssl package in Ubuntu:
>   Incomplete
>
> Bug description:
>   This is a request for a Feature Freeze Exception to include FIPS 140-2
> selftest into the openssl package in preparation for the FIPS 140-2
> compliance for 16.0.4.
>   This patchset will :
>    - add ability to config, compile, run with fips option enabled
>    - add the selftest files to crypto/fips directory.
>    - minor changes to several algorithms in crypto directory to ensure the
> selftest compile successfully when fips is enabled.
>
>   The selftest will be initiated externally at this point and not
> internally.
>   Hope to have a test package ready early next week.
>
> To manage notifications about this bug go to:
>
> https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1553309/+subscriptions
>

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1553309

Title:
  [FFe]: Include FIPS 140-2 into openssl  package

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1553309/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to