Bug 440246

Summary: Review Request: firecontrol - A console oriented tool for Linux to access a FireWire bus
Product: [Fedora] Fedora Reporter: Jarod Wilson <jarod>
Component: Package ReviewAssignee: Jason Tibbitts <j>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting
Target Milestone: ---Flags: j: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-04-04 18:21:57 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jarod Wilson 2008-04-02 14:25:39 UTC
Spec URL: http://people.redhat.com/jwilson/packages/firecontrol/firecontrol.spec
SRPM URL: http://people.redhat.com/jwilson/packages/firecontrol/firecontrol-0.2-1.fc9.src.rpm

Description:
FireControl, the IEEE 1394 Commander, is a console oriented tool for Linux
to access an IEEE 1394 (FireWire) bus. It can issue asynchronous read, write
and lock requests to some nodes on the bus, force bus resets, and send PHY
packets. Furthermore, it provides bus reset notifications. The main advantage
of this tool over other available tools (like gscanbus) is (besides not
requiring a graphical interface) that it reports the exact acknowledge and
response codes and, therefore, is very useful for debugging purposes.

Comment 1 Jason Tibbitts 2008-04-04 03:03:30 UTC
Builds fine and rpmlint finds nothing to complain about.

According to the source (or commander.c, at least), the license is GPLv2+.  Do
you see anything that might restrict it to GPLv2 only?

Everything else looks good to me.

* source files match upstream:
   415e3e257472c3f784eba43d0c298d2432491b20870f0cbe6beb6756692235f8  
   firecontrol-0.2.tar.gz
* package meets naming and versioning guidelines.
* specfile is properly named, is cleanly written and uses macros consistently.
* summary is OK.
* description is OK.
* dist tag is present.
* build root is OK.
? license field matches the actual license.
* license is open source-compatible.
* license text included in package.
* latest version is being packaged.
* BuildRequires are proper.
* compiler flags are appropriate.
* %clean is present.
* package builds in mock (rawhide, x86_64).
* package installs properly
* debuginfo package looks complete.
* rpmlint is silent.
* final provides and requires are sane:
   firecontrol = 0.2-1.fc9
  =
   libraw1394.so.8()(64bit)

* %check is not present; no test suite upstream.  I have no way to test this 
  software.
* no shared libraries are added to the regular linker search paths.
* owns the directories it creates.
* doesn't own any directories it shouldn't.
* no duplicates in %files.
* file permissions are appropriate.
* no scriptlets present.
* code, not content.
* documentation is small, so no -doc subpackage is necessary.
* %docs are not necessary for the proper functioning of the package.
* no headers.
* no pkgconfig files.
* no static libraries.

Comment 2 Jarod Wilson 2008-04-04 03:38:11 UTC
Oops, I'd only looked at the COPYING file and saw it was GPLv2, neglected to
look at the source header to see 2+ there. I'll fix that. Okay, done:

http://people.redhat.com/jwilson/packages/firecontrol/firecontrol-0.2-2.fc9.src.rpm
http://people.redhat.com/jwilson/packages/firecontrol/firecontrol.spec

Comment 3 Jarod Wilson 2008-04-04 03:42:52 UTC
Oh, and to test it, simply start it up with elevated privs on a box with a
firewire controller. It should report number of controllers found, current bus
generation, etc. You can try issuing the command 'br short' to see if it
properly issues a bus reset to the controller or 'r . 0 0xfffff0000400 4' to
read the first quadlet of the card's config rom, which is some header CRC and
length info, or offset 404, which is the 1394 header. For example:
...
Command: r . 0 0xfffff0000400 4
reading from node 0, bus 1023, offset 0XFFFFF0000400 4 bytes
read succeeded. Data follows (hex):
04 04 22 8E
Ack code: complete
Command: r . 0 0xfffff0000404 4
reading from node 0, bus 1023, offset 0XFFFFF0000404 4 bytes
read succeeded. Data follows (hex):
31 33 39 34
Ack code: complete

It gets far more interesting with devices connected, of course.

Comment 4 Jason Tibbitts 2008-04-04 03:48:55 UTC
Cool.  I went ahead and built it for i386 and ran it on a rawhide box with a
firewire port.  It did indeed seem to work fine with the above examples.

APPROVED

Comment 5 Jarod Wilson 2008-04-04 16:18:30 UTC
tibbs, thanks much for the review!

New Package CVS Request
=======================
Package Name: firecontrol
Short Description: A console oriented tool for Linux to access a FireWire bus
Owners: jwilson
Branches: F-8
InitialCC: 
Cvsextras Commits: yes


Comment 6 Kevin Fenzi 2008-04-04 17:02:12 UTC
cvs done.

Comment 7 Jarod Wilson 2008-04-04 18:21:57 UTC
Built.