Bug 245432 - Review Request: libtomcrypt - comprehensive, portable cryptographic toolkit
Summary: Review Request: libtomcrypt - comprehensive, portable cryptographic toolkit
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jason Tibbitts
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 245431
Blocks: 1013320
TreeView+ depends on / blocked
 
Reported: 2007-06-23 05:36 UTC by Jeremy Hinegardner
Modified: 2013-09-29 10:21 UTC (History)
5 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2007-07-10 10:02:13 UTC
Type: ---
Embargoed:
j: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Jeremy Hinegardner 2007-06-23 05:36:11 UTC
Spec URL: http://jeremy.hinegardner.org/fedora/libtomcrypt.spec
SRPM URL: http://jeremy.hinegardner.org/fedora/libtomcrypt-1.17-1.fc7.src.rpm
Description: LibTomCrypt is a fairly comprehensive, modular and portable
cryptographic toolkit that provides developers with a vast array of well
known published block ciphers, one-way hash functions, chaining modes,
pseudo-random number generators, public key cryptography and a plethora
of other routines.

LibTomCrypt has been designed from the ground up to be very simple to
use. It has a modular and standard API that allows new ciphers, hashes
and PRNGs to be added or removed without change to the overall end
application. It features easy to use functions and a complete user
manual which has many source snippet examples.

Comment 1 Jeremy Hinegardner 2007-06-23 05:39:30 UTC
LibTomCrypt has a build and runtime dependency on libtommath which is also a new
package request (https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=245431).

Comment 2 Jeremy Hinegardner 2007-06-24 04:51:29 UTC
New spec and srpm to fix deployment in 64bit environments:

Spec URL: http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt.spec
SRPM URL: http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt-1.17-2.fc7.src.rpm

Comment 3 Jeremy Hinegardner 2007-06-29 07:51:28 UTC
New spec and srpm to make sure compiling honors RPM_OPT_FLAGS and uses per
package header subdirectories.  Update build to use header subdirectory of
libtommath.

Spec: http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt.spec
SRPM:
http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt-1.17-3.fc7.src.rpm

Comment 4 Jason Tibbitts 2007-06-29 20:22:42 UTC
Now that libtommath is done, I thought I'd take a look at this.  However, I find
many rpmlint complaints like the following:

W: libtomcrypt undefined-non-weak-symbol /usr/lib64/libtomcrypt.so.0.0.117
mp_prime_is_prime

It seems that this library isn't actually linked against libtommath even though
it uses functions from it heavily.  I added
   export EXTRALIBS="-ltommath"
to the %build section and that makes most of them go away, but there are still a
bunch in libtomcrypt_prof.so:

W: libtomcrypt undefined-non-weak-symbol /usr/lib64/libtomcrypt_prof.so.0.0.117
rc2_desc

I'm not really sure what the _prof library is, however.  Is it something we
really want to ship?

Comment 5 Jeremy Hinegardner 2007-06-30 06:21:26 UTC
(In reply to comment #4)
> Now that libtommath is done, I thought I'd take a look at this.  However, I find
> many rpmlint complaints like the following:
> 
> W: libtomcrypt undefined-non-weak-symbol /usr/lib64/libtomcrypt.so.0.0.117
> mp_prime_is_prime
> 
> It seems that this library isn't actually linked against libtommath even though
> it uses functions from it heavily.  I added
>    export EXTRALIBS="-ltommath"
> to the %build section and that makes most of them go away, but there are still a
> bunch in libtomcrypt_prof.so:
> 
> W: libtomcrypt undefined-non-weak-symbol /usr/lib64/libtomcrypt_prof.so.0.0.117
> rc2_desc
>
> I'm not really sure what the _prof library is, however.  Is it something we
> really want to ship?

I didn't get those W:'s when I ran rpmlint, but I also don't have a x86_64
machine. Let me know if the new SRPM causes the same complaints

Your right, the _prof library is not necessary, and I've removed it from the
RPM.  I had the wrong -l flag in the spec so that fixes the -ltommath linkage
failure.  Also, I managed to get the make test && ./test to work so we have a
%check now.

new SPEC: http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt.spec
new SRPM:
http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt-1.17-4.fc7.src.rpm


Comment 6 Jason Tibbitts 2007-06-30 15:57:50 UTC
FYI, you must actually install the package in order to see those rpmlint complaints.

Comment 7 Jeremy Hinegardner 2007-06-30 17:20:53 UTC
(In reply to comment #6)
> FYI, you must actually install the package in order to see those rpmlint
complaints.

Nice, good to learn something new.  I get some still now. I'll see if I can
figure out what is going on.

Comment 8 Jeremy Hinegardner 2007-06-30 17:59:09 UTC
New spec and srpm that really do fix the rpmlint warnings for undefined-non-weak
symbol.

SPEC http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt.spec
SRPM http://jeremy.hinegardner.org/fedora/libtomcrypt/libtomcrypt-1.17-5.fc7.src.rpm


Comment 9 Jason Tibbitts 2007-06-30 20:05:50 UTC
OK, everything builds OK and rpmlint is finally silent.

The URL: and Source0: are off as with the libtommath; Source0: should be what's
in URL: and URL: should be
   http://www.libtom.org/?page=features&newsitems=5&whatfile=crypt

You generally shouldn't start Summary: with the name of the package.

Those issues are minor; I'll go ahead and approve this and you can fix them when
you check in.

Review:
* source files match upstream:
   e33b47d77a495091c8703175a25c8228aff043140b2554c08a3c3cd71f79d116  
   crypt-1.17.tar.bz2
* package meets naming and versioning guidelines.
* specfile is properly named, is cleanly written and uses macros consistently.
? summary starts with the name of the package.
* description is OK.
* dist tag is present.
* build root is OK.
* license field matches the actual license.
* license is open source-compatible.
* license text (grant to public domain) included in package.
* latest version is being packaged.
* BuildRequires are proper.
* compiler flags are appropriate.
* %clean is present.
* package builds in mock (development, x86_64).
* package installs properly
* debuginfo package looks complete.
* rpmlint is silent.
* final provides and requires are sane:
  libtomcrypt-1.17-5.fc8.x86_64.rpm
   libtomcrypt.so.0()(64bit)
   libtomcrypt = 1.17-5.fc8
  =
   /sbin/ldconfig
   libtomcrypt.so.0()(64bit)
   libtommath >= 0.41
   libtommath.so.0()(64bit)

  libtomcrypt-devel-1.17-5.fc8.x86_64.rpm
   libtomcrypt-devel = 1.17-5.fc8
  =
   libtomcrypt = 1.17-5.fc8
   libtomcrypt.so.0()(64bit)
* %check is present and all tests pass (I think):
   store_test....passed
   cipher_test...passed
   modes_test....passed
   der_test......passed
   mac_test......passed
   pkcs_1_test...passed
   rsa_test......passed
   ecc_test......passed
   dsa_test......passed
   katja_test....NOPpassed
  I guess "NOPpassed" means the test doesn't do anything.
* ldconfig is called as necessary to install shared libs, and unversioned .so 
   files are in the -devel subpackage.
* owns the directories it creates.
* doesn't own any directories it shouldn't.
* no duplicates in %files.
* file permissions are appropriate.
* scriptlets OK (ldconfig)
* code, not content.
* documentation is small, so no -docs subpackage is necessary.
* %docs are not necessary for the proper functioning of the package.
* headers are in the -devel subpackage.
* no pkgconfig files.
* no static libraries.
* no libtool .la files.

APPROVED

Comment 10 Jeremy Hinegardner 2007-06-30 20:11:20 UTC
(In reply to comment #9)
> OK, everything builds OK and rpmlint is finally silent.
> 
> The URL: and Source0: are off as with the libtommath; Source0: should be what's
> in URL: and URL: should be
>    http://www.libtom.org/?page=features&newsitems=5&whatfile=crypt

Fixed.

> You generally shouldn't start Summary: with the name of the package.

Fixed

> Those issues are minor; I'll go ahead and approve this and you can fix them when
> you check in.
> 
> APPROVED

Thanks!


Comment 11 Jeremy Hinegardner 2007-06-30 20:15:42 UTC
New Package CVS Request
=======================
Package Name: libtomcrypt
Short Description:  a comprehensive, portable cryptographic toolkit
Owners: jeremy
Branches: F-7
InitialCC: 

Comment 12 Kevin Fenzi 2007-07-02 19:00:28 UTC
cvs done.

Comment 13 Simone Caronni 2013-06-04 19:14:12 UTC
Package Change Request
======================
Package Name: libtomcrypt
New Branches: el6
Owners: slaanesh

New branch required for importing stoken in EPEL-6, a toolkit for using RSA SecureID soft tokens in Linux.

Comment 14 Gwyn Ciesla 2013-06-04 19:24:06 UTC
Git done (by process-git-requests).


Note You need to log in before you can comment on or make changes to this bug.