-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Network Interface agnostic make process #29
Comments
Hi Antonio,
Yes, that totally makes sense. I have been meaning to do something like that for a while.
I propose something like the following changes
1. Change the example configuration mercury.cfg so that the capture = ens33 line is commented out.
2. Change mercury so that, if it is reading a configuration file and that file does not contain a `capture’ command specifying the interface, then it prints an “error: no interface specified” message an exits with EXIT_FAILURE.
3. Update the documentation
On #2: currently, if no interface is provided in the configuration file, then mercury will start reading a PCAP from the standard input. This allows one to avoid very long command lines by putting the runtime options into a configuration file, while working with PCAP files. That sounds good in principle, but in practice I don’t know of anyone using the program that way. So I am proposing the change to avoid confusion that could occur if someone doesn’t specify a capture interface in a config file.
Please let me know if I can help with linux packaging.
Thanks!
David
On Oct 3, 2024, at 12:10 PM, Antonio ***@***.***> wrote:
Hey @davidmcgrew<https://github.com/davidmcgrew> I'm trying to package mercury for some Linux distros. What I see as constraint is the need of specifying the network interface when running make install by specifying it inside the mercury.cfg file.
Is it possible to make mercury agnostic of network interface during the build and install time and allow to specify it after the installation (so not making it tied to make install command)?
—
Reply to this email directly, view it on GitHub<#29>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AA6QWL3ESHFJJXTM7NHOXQTZZVT5TAVCNFSM6AAAAABPKDXREWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU3DINBTGUYTIOA>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
I noted also that, if @noraj what do you think about the proposed solution? |
For being easily package on any Linux distro, the program should not require knowing an interface name at compile / build time nor package time. Anyway compilation and packaging will not occur on the same machine as the one where the package will be installed. It should look for the interface in the configuration file only at runtime. |
@davidmcgrew did you give a look into it? Can you manage the recon of network interface directly at code level or by specifying it by an argument (i.e., |
This change should appear in the next release today or tomorrow. Apologies for the delay. Please let me know if there are any issues with the changes. |
Hey @davidmcgrew I just saw you pushed the new release of mercury and I see the commit where you removed default interface from the build process. Now the interface will be specified at runtime by an argument like |
@D3vil0p3r Thanks for the reminder to update the documentation; apologies that we missed that. Look for it the first full week of January when folks return from holiday. The interface can be specified either by command line argument ( |
Hey @davidmcgrew I'm trying to package mercury for some Linux distros. What I see as constraint is the need of specifying the network interface when running
make install
by specifying it inside the mercury.cfg file.Is it possible to make mercury agnostic of network interface during the build and install time and allow to specify it after the installation (so not making it tied to
make install
command)?The text was updated successfully, but these errors were encountered: