Commit 12d31142 authored by Mina Almasry's avatar Mina Almasry Committed by Jakub Kicinski
Browse files

net: devmem: ksft: add ipv4 support



ncdevmem supports both ipv4 and ipv6, but the ksft is currently
ipv6-only. Propagate the ipv4 support to the ksft, so that folks that
are limited to these networks can also test.

Signed-off-by: default avatarMina Almasry <almasrymina@google.com>
Acked-by: default avatarStanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250523230524.1107879-5-almasrymina@google.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 85cea17d
Loading
Loading
Loading
Loading
+7 −9
Original line number Diff line number Diff line
@@ -21,30 +21,28 @@ def require_devmem(cfg):

@ksft_disruptive
def check_rx(cfg) -> None:
    cfg.require_ipver("6")
    require_devmem(cfg)

    port = rand_port()
    listen_cmd = f"{cfg.bin_local} -l -f {cfg.ifname} -s {cfg.addr_v['6']} -p {port}"
    listen_cmd = f"{cfg.bin_local} -l -f {cfg.ifname} -s {cfg.addr} -p {port}"

    with bkg(listen_cmd) as socat:
    with bkg(listen_cmd) as ncdevmem:
        wait_port_listen(port)
        cmd(f"echo -e \"hello\\nworld\"| socat -u - TCP6:[{cfg.addr_v['6']}]:{port}", host=cfg.remote, shell=True)
        cmd(f"echo -e \"hello\\nworld\"| socat -u - TCP{cfg.addr_ipver}:{cfg.addr}:{port}", host=cfg.remote, shell=True)

    ksft_eq(socat.stdout.strip(), "hello\nworld")
    ksft_eq(ncdevmem.stdout.strip(), "hello\nworld")


@ksft_disruptive
def check_tx(cfg) -> None:
    cfg.require_ipver("6")
    require_devmem(cfg)

    port = rand_port()
    listen_cmd = f"socat -U - TCP6-LISTEN:{port}"
    listen_cmd = f"socat -U - TCP{cfg.addr_ipver}-LISTEN:{port}"

    with bkg(listen_cmd, exit_wait=True) as socat:
    with bkg(listen_cmd) as socat:
        wait_port_listen(port)
        cmd(f"echo -e \"hello\\nworld\"| {cfg.bin_remote} -f {cfg.ifname} -s {cfg.addr_v['6']} -p {port}", host=cfg.remote, shell=True)
        cmd(f"echo -e \"hello\\nworld\"| {cfg.bin_remote} -f {cfg.ifname} -s {cfg.addr} -p {port}", host=cfg.remote, shell=True)

    ksft_eq(socat.stdout.strip(), "hello\nworld")