Skip to content

net: Convert dev_set_mac_address() to struct sockaddr_storage

Kees Cook linux-hardening linux-hyperv linux-nvme linux-scsi linux-usb linux-wpan lkml netdev target-devel 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest8 patches 3 repliesIn review 5 of 8 applied
  2. v17 patches 12 repliesSuperseded

Changes in v2 from the cover letter

- add conversion of dev_set_mac_address_user() (kuniyu)
- fix missed sockaddr/sockaddr_storage conversion (kuba)
v1: https://lore.kernel.org/all/[email protected]/

Patches in v2 5 of 8 applied

#Subject and filesSizeRepliesApplied
1/8net: core: Convert inet_addr_is_any() to sockaddr_storagedrivers/nvme/target/rdma.c drivers/nvme/target/tcp.c drivers/target/iscsi/iscsi_target.c +2 more+8 -80 replies
2/8net: core: Switch netif_set_mac_address() to struct sockaddr_storageinclude/linux/netdevice.h net/core/dev.c net/core/dev_api.c +1 more+9 -90 repliesApplied
3/8net/ncsi: Use struct sockaddr_storage for pending_macnet/ncsi/internal.h net/ncsi/ncsi-manage.c net/ncsi/ncsi-rsp.c+11 -110 repliesApplied
4/8ieee802154: Use struct sockaddr_storage with dev_set_mac_address()net/ieee802154/nl-phy.c+4 -40 repliesApplied
5/8net: usb: r8152: Convert to use struct sockaddr_storage internallydrivers/net/usb/r8152.c+27 -250 repliesApplied
6/8net: core: Convert dev_set_mac_address() to struct sockaddr_storagedrivers/net/bonding/bond_alb.c drivers/net/bonding/bond_main.c drivers/net/hyperv/netvsc_drv.c +8 more+30 -340 replies
7/8rtnetlink: do_setlink: Use struct sockaddr_storagenet/core/rtnetlink.c+4 -150 repliesApplied
8/8net: core: Convert dev_set_mac_address_user() to use struct sockaddr_storagedrivers/net/tap.c drivers/net/tun.c include/linux/netdevice.h +2 more+24 -113 replies

Reviews trailers per patch

All 8 patches have a Reviewed-by or Acked-by.

PatchKuniyuki IwashimaMartin K. PetersenGustavo A. R. Silva
1/8R-b R-b
2/8A-b
3/8A-b
4/8A-b
5/8A-b
6/8A-b
7/8A-b
8/8A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v2 thread

Cover letter [PATCH net-next v2 0/8] net: Convert dev_set_mac_address() to struct sockaddr_storage

v2:
- add conversion of dev_set_mac_address_user() (kuniyu)
- fix missed sockaddr/sockaddr_storage conversion (kuba)
v1: https://lore.kernel.org/all/[email protected]/

Hi,

As part of the effort to allow the compiler to reason about object sizes, we need to deal with the problematic variably sized struct sockaddr, which has no internal runtime size tracking. In much of the network stack the use of struct sockaddr_storage has been adopted. Continue the transition toward this for more of the internal APIs. Specifically:

- inet_addr_is_any()
- netif_set_mac_address()
- dev_set_mac_address()
- dev_set_mac_address_user()

Only a few callers of dev_set_mac_address() needed adjustment; all others were already using struct sockaddr_storage internally.

-Kees

Kees Cook (8):
net: core: Convert inet_addr_is_any() to sockaddr_storage
net: core: Switch netif_set_mac_address() to struct sockaddr_storage net/ncsi: Use struct sockaddr_storage for pending_mac
ieee802154: Use struct sockaddr_storage with dev_set_mac_address()
net: usb: r8152: Convert to use struct sockaddr_storage internally
net: core: Convert dev_set_mac_address() to struct sockaddr_storage
rtnetlink: do_setlink: Use struct sockaddr_storage
net: core: Convert dev_set_mac_address_user() to use struct
sockaddr_storage

 include/linux/inet.h                |  2 +-
 include/linux/netdevice.h           |  6 ++--
 net/ncsi/internal.h                 |  2 +-
 drivers/net/bonding/bond_alb.c      |  8 ++---
 drivers/net/bonding/bond_main.c     | 15 ++++-----
 drivers/net/hyperv/netvsc_drv.c     |  6 ++--
 drivers/net/macvlan.c               | 18 +++++-----
 drivers/net/tap.c                   | 14 +++++---
 drivers/net/team/team_core.c        |  2 +-
 drivers/net/tun.c                   |  8 ++++-
 drivers/net/usb/r8152.c             | 52 +++++++++++++++--------------
 drivers/nvme/target/rdma.c          |  2 +-
 drivers/nvme/target/tcp.c           |  2 +-
 drivers/target/iscsi/iscsi_target.c |  2 +-
 net/core/dev.c                      | 11 +++---
 net/core/dev_api.c                  | 11 +++---
 net/core/dev_ioctl.c                |  6 ++--
 net/core/rtnetlink.c                | 19 +++--------
 net/core/utils.c                    |  8 ++---
 net/ieee802154/nl-phy.c             |  6 ++--
 net/ncsi/ncsi-rsp.c                 | 18 +++++-----
 21 files changed, 109 insertions(+), 109 deletions(-)
Signature · 1 line
2.34.1