Compare commits

..

8 commits

Author SHA1 Message Date
06a1392839 doc: update list of related projects
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-28 09:42:14 +01:00
4fead7bfcb fix: add version number for dependencies
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-27 14:57:06 +01:00
bb1bb329f3 fix: add missing dependency for debian package
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-27 14:47:11 +01:00
758d2e99a7 Merge tag 'v0.1.5' into develop
All checks were successful
continuous-integration/drone/push Build is passing
v0.1.5
2023-12-27 13:13:24 +01:00
6a3eb45ec1 Merge branch 'release/v0.1.5' 2023-12-27 13:13:19 +01:00
f35ab53a6e chore: fix RPM package naming + add license 2023-12-27 13:13:13 +01:00
8929f780ed ci: switch to debian for build
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-27 13:07:35 +01:00
465d5a96aa Merge tag 'v0.1.4' into develop
Some checks reported errors
continuous-integration/drone/push Build was killed
v0.1.4
2023-12-27 11:38:59 +01:00
3 changed files with 39 additions and 7 deletions

View file

@ -5,12 +5,12 @@ name: default
steps: steps:
- name: build - name: build
image: alpine:latest image: debian:12
environment: environment:
PACKAGE_BASENAME: igmpgen_linux_amd64 PACKAGE_BASENAME: igmpgen_linux_amd64
commands: commands:
- apk update - apt-get update
- apk add cmake gcc g++ libnet libnet-dev debian-devscripts rpm make - apt-get install -y cmake gcc g++ libnet1 libnet-dev rpm make
- make build - make build
- make package - make package
- mkdir -p /_cache/bin /_cache/packages - mkdir -p /_cache/bin /_cache/packages

View file

@ -55,6 +55,7 @@ set(CPACK_PACKAGE_VERSION_MAJOR "${igmpgen_VERSION_MAJOR}")
set(CPACK_PACKAGE_VERSION_MINOR "${igmpgen_VERSION_MINOR}") set(CPACK_PACKAGE_VERSION_MINOR "${igmpgen_VERSION_MINOR}")
# CPack RPM specific settings # CPack RPM specific settings
set(CPACK_RPM_FILE_NAME RPM-DEFAULT)
set(CPACK_RPM_PACKAGE_LICENSE "MIT") set(CPACK_RPM_PACKAGE_LICENSE "MIT")
set(CPACK_RPM_PACKAGE_SUMMARY "IGMP Packet Generator") set(CPACK_RPM_PACKAGE_SUMMARY "IGMP Packet Generator")
set(CPACK_RPM_PACKAGE_NAME "igmpgen") set(CPACK_RPM_PACKAGE_NAME "igmpgen")
@ -64,15 +65,19 @@ set(CPACK_RPM_PACKAGE_ARCHITECTURE "x86_64")
set(CPACK_RPM_PACKAGE_GROUP "Network") set(CPACK_RPM_PACKAGE_GROUP "Network")
set(CPACK_RPM_PACKAGE_VENDOR "Your Company/Organization") set(CPACK_RPM_PACKAGE_VENDOR "Your Company/Organization")
set(CPACK_RPM_PACKAGE_DESCRIPTION "A tool for generating IGMP packets.") set(CPACK_RPM_PACKAGE_DESCRIPTION "A tool for generating IGMP packets.")
set(CPACK_RPM_PACKAGE_LICENSE "LGPL-3.0-or-later")
set(CPACK_RPM_PACKAGE_LICENSE "libnet (>= 1.3-1)")
# CPack DEB specific settings # CPack DEB specific settings
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Your Name <your-email@example.com>") set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT)
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Glenn Y. Rolland <glenux@glenux.net>")
set(CPACK_DEBIAN_PACKAGE_NAME "igmpgen") set(CPACK_DEBIAN_PACKAGE_NAME "igmpgen")
set(CPACK_DEBIAN_PACKAGE_VERSION "${igmpgen_VERSION}") set(CPACK_DEBIAN_PACKAGE_VERSION "${igmpgen_VERSION}")
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64") set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
set(CPACK_DEBIAN_PACKAGE_SECTION "net") set(CPACK_DEBIAN_PACKAGE_SECTION "net")
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional") set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "A tool for generating IGMP packets.") set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "A tool for generating IGMP packets.")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libnet1 (>= 1.1.6)")
set(CPACK_GENERATOR "TGZ;RPM;DEB") set(CPACK_GENERATOR "TGZ;RPM;DEB")
include(CPack) include(CPack)

View file

@ -7,7 +7,9 @@
## Overview ## Overview
The IGMP Packet Generator (`igmpgen`) is a specialized tool designed for The IGMP Packet Generator (`igmpgen`) is a specialized tool designed for
generating various types of Internet Group Management Protocol (IGMP) packets. generating various types of [Internet Group Management Protocol
(IGMP)](https://en.wikipedia.org/wiki/Internet_Group_Management_Protocol)
packets.
This tool is particularly useful for network administrators, developers, and This tool is particularly useful for network administrators, developers, and
researchers involved in testing and analyzing multicast network protocols. researchers involved in testing and analyzing multicast network protocols.
@ -114,6 +116,31 @@ This project is licensed under the LGPL 3.0-or-later.
## Related projects ## Related projects
* [IGMPproxy (Official Version)](https://github.com/pali/igmpproxy): The official version of the IGMPproxy tool. * [IGMPproxy (Official Version)](https://github.com/pali/igmpproxy): The
* [IGMPproxy with IGMPv3 & FreeBSD support](https://github.com/ViToni/igmpproxy/): A version of IGMPproxy with added support for IGMPv3 and FreeBSD. official version of the IGMPproxy tool.
* [IGMPproxy with IGMPv3 & FreeBSD
support](https://github.com/ViToni/igmpproxy/): A version of IGMPproxy with
added support for IGMPv3 and FreeBSD.
* [pierf packet generator and analyzer](https://pierf.sourceforge.net/): A
packet injection tool.
* [Send IGMP](https://sendigmp.com/#examples): A simple command-line tool to
send IGMP packets
* [Ostatino](https://github.com/pstavirs/ostinato): Traffic generator for
network engineers.
* [individuwill/mcast](https://github.com/individuwill/mcast)
* [troglobit/mcjoin](https://github.com/troglobit/mcjoin)
* [troglobit/mrdisc](https://github.com/troglobit/mrdisc)
* [troglobit/mrouted](https://github.com/troglobit/mrouted)
* [scapy](https://scapy.net/)
* <https://itecnote.com/tecnote/python-send-igmp-packets-with-scapy/>
* <https://gist.github.com/sdir/6e44c14f6fd29149689b2f9fe37ba6b9>
* <https://github.com/Abaco-Systems/WinPcap-igmp-join>
## References
* https://www.ietf.org/proceedings/50/I-D/idmr-snoop-00.txt
* https://www.rfc-editor.org/rfc/rfc4541
* [Wikipedia: IGMP Snooping](https://en.wikipedia.org/wiki/IGMP_snooping)
* [Wikipedia: Multicast Listener Discovery](https://en.wikipedia.org/wiki/Multicast_Listener_Discovery)