aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2020-07-27 15:41:55 +0200
committerHelge Deller <deller@gmx.de>2020-07-27 15:41:55 +0200
commit318e6df5b8a2c3a1eff2346dd4e5285f1015e587 (patch)
tree83a0b6d0b3c80a82fe35a974928a5fbe38744002
parentc7a1a609caa6e7a426bacb08885180a7ae12257f (diff)
downloadrbootd-318e6df5b8a2c3a1eff2346dd4e5285f1015e587.tar.gz
pcap: Replace deprecated pcap_lookupdev() call
Replace deprecated pcap_lookupdev() by new pcap_findalldevs() function call. Signed-off-by: Helge Deller <deller@gmx.de>
-rw-r--r--pcap.c11
-rw-r--r--rbootd.c4
2 files changed, 11 insertions, 4 deletions
diff --git a/pcap.c b/pcap.c
index 58416d4..3c86a12 100644
--- a/pcap.c
+++ b/pcap.c
@@ -100,13 +100,18 @@ void PcapOpen()
*/
char* PcapGetIntfName(char **errmsg)
{
+ static char netdev[31];
+ pcap_if_t *alldevsp;
+ int ret;
+
/* We'll assume this function is suitable... */
- char* netdev = pcap_lookupdev(errbuf); /* find a device */
- if ((long)netdev == -1)
+ ret = pcap_findalldevs(&alldevsp, *errmsg); /* find a device */
+ if (ret != 0)
{
- strncpy(*errmsg,pcap_lookupdev(errbuf),strlen(*errmsg));
return NULL; /* flag error to caller */
}
+ strcpy(netdev, alldevsp->name);
+ pcap_freealldevs(alldevsp);
return netdev; /* device found - return ptr to its name */
}
diff --git a/rbootd.c b/rbootd.c
index b296a73..053e320 100644
--- a/rbootd.c
+++ b/rbootd.c
@@ -174,7 +174,9 @@ main(argc, argv)
if (IntfName == NULL) {
char *errmsg;
#ifdef __linux__
- if ((IntfName = PcapGetIntfName(&errmsg)) == NULL ) {
+ char err_msg[PCAP_ERRBUF_SIZE];
+ errmsg = err_msg;
+ if ((IntfName = PcapGetIntfName(&errmsg)) == NULL ) {
#else
if ((IntfName = BpfGetIntfName(&errmsg)) == NULL) {
#endif