On 2022-09-29 17:43, Stephen Hemminger wrote:
On Thu, 29 Sep 2022 17:21:37 +0200
Hans Schultz <netdev@xxxxxxxxxxxxxxxxxxxx> wrote:
@@ -493,6 +496,8 @@ static int fdb_modify(int cmd, int flags, int
argc, char **argv)
req.ndm.ndm_flags |= NTF_EXT_LEARNED;
} else if (matches(*argv, "sticky") == 0) {
req.ndm.ndm_flags |= NTF_STICKY;
+ } else if (matches(*argv, "blackhole") == 0) {
+ ext_flags |= NTF_EXT_BLACKHOLE;
} else {
if (strcmp(*argv, "to") == 0)
NEXT_ARG();
The parsing of flags is weird here, most of the flags are compared with
strcmp()
but some use matches().. I should have used strcmp() all the time; but
at the
time did not realize what kind of confusion matches() can cause.
Maybe just change all of them then, and then how about using strncmp()
and maybe also strnlen() instead?