Bug 2358869 - Review Request: spoofer - Software to test source address validation
Summary: Review Request: spoofer - Software to test source address validation
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL: https://www.caida.org/projects/spoofer/
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-04-10 14:31 UTC by Benson Muite
Modified: 2025-04-25 05:57 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)
The .spec file difference from Copr build 8886610 to 8963216 (4.42 KB, patch)
2025-04-24 11:25 UTC, Fedora Review Service
no flags Details | Diff

Description Benson Muite 2025-04-10 14:31:39 UTC
spec: https://fed500.fedorapeople.org/spoofer.spec
srpm: https://fed500.fedorapeople.org/spoofer-1.4.12-1.fc41.src.rpm

description:
The spoofer program attempts to send a series of spoofed UDP packets to servers
distributed throughout the world. These packets are designed to test:
- Different classes of spoofed IPv4 and IPv6 addresses, including private and routable
- Ability to spoof neighboring, adjacent addresses
- Ability to spoof inbound (towards the client) and outbound (from the client)
- Where along the path filtering is observed
- Presence of a NAT device along the path

fas: fed500

Reproducible: Always

Comment 1 Fedora Review Service 2025-04-10 14:43:14 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8886610
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2358869-spoofer/fedora-rawhide-x86_64/08886610-spoofer/fedora-review/review.txt

Please take a look if any issues were found.


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 2 Benson Muite 2025-04-11 07:59:49 UTC
Issue for license https://gitlab.com/fedora/legal/fedora-license-data/-/issues/648

Comment 3 Yanko Kaneti 2025-04-24 09:12:34 UTC
As a potential user for stuff like this I really think the cli only part should be separate subpackage to allow somewhat minimal install on headless system.  If it would be minimal wrt deps that is..

Otherwise it builds in mock and looks reasonable. Perhaps you should reissue the spec with the approved license..

Comment 4 Benson Muite 2025-04-24 10:58:06 UTC
Removing FE-Legal block as license has been aproved. Updated the spec file and package.
Split into separate subpackages for each of the binaries and one metapackage.

spec: https://fed500.fedorapeople.org/spoofer.spec
srpm: https://fed500.fedorapeople.org/spoofer-1.4.12-1.fc41.src.rpm

Comment 5 Fedora Review Service 2025-04-24 11:25:49 UTC
Created attachment 2086944 [details]
The .spec file difference from Copr build 8886610 to 8963216

Comment 6 Fedora Review Service 2025-04-24 11:25:51 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/8963216
(succeeded)

Review template:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2358869-spoofer/fedora-rawhide-x86_64/08963216-spoofer/fedora-review/review.txt

Found issues:

- License file README is not marked as %license
  Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/#_license_text
- Not a valid SPDX expression 'GPL-3.0-or-later WITH GPL-3.0-linking-source-exception'.
  Read more: https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_1

Please know that there can be false-positives.

---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 7 Yanko Kaneti 2025-04-24 15:16:25 UTC
I think there are  some interdependencies here that are not reflected byt the split packages requirements

From the readme:

The Spoofer client contains these components:
* Prober (spoofer-prober): performs the spoofing test
* Manager: manages the Prober (optional, but recommended)
  - Scheduler (spoofer-scheduler): a long-running background service
    that runs the Prober periodically, upon detecting a network change,
    or by request from the GUI or CLI
  - GUI (spoofer-gui): a graphical user interface to the Scheduler
  - CLI (spoofer-cli): a command line interface to the Scheduler

The way I read this, everything depends on the prober, and both the gui and cli depend on the scheduler  ?
If I try the cli standalone:

$ spoofer-cli 
Critical: Config: Missing "dataDir" in "/etc/xdg/CAIDA/Spoofer.conf" (No such file or directory). Make sure the scheduler is running and using the same configuration.

Perhaps the split should be, -gui and a main spoofer package with everything else ?

Comment 8 Benson Muite 2025-04-25 05:57:14 UTC
Ubuntu has
spoofer
spoofer-gui
spoofer-prober
spoofer-scheduler

see https://launchpad.net/~spoofer-dev/+archive/ubuntu/spoofer/+packages

spoofer-prober is the base package for doing one off measurements - this is the minimal
component that can be packaged, so if on a space constrained system, and do not need long
running measurements would just want to install this. It requires root permissions.

spoofer which is really spoofer-cli depends on spoofer-prober and spoofer-scheduler.
As it sets up a long running service, probably need to add systemd service files.
Configuration file can be placed anywhere, but when using the program, need to add
--settings <file> to indicate where this file is.

spoofer-gui also depends on spoofer-prober and spoofer-scheduler, but brings in extra
GUI libraries.

Can use the split suggested as spoofer-prober, spoofer-cli and spoofer-scheduler have
similar dependencies, or split everythoing and have spoofer-scheduler require spoofer-prober,
spoofer-cli require spoofer-scheduler and spoofer-gui require spoofer-scheduler.

Checking with upstream on configuration files.


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