OpenWrt/LEDE Project

  • Status New
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Packages
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Low
  • Reported Version All
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by Adrian Schmutzler - 10.07.2020

FS#3221 - ubox: validate.c: Link-Local IPv6 with interface ID not supported

validate.c uses inet_pton for identifying IPv6 addresses [1], and this seems to not understand interface identifiers as used for Link-local IPv6 addresses.

Reproduce:

root@FFF-GW-Adrian:~# /sbin/validate_data host fdff::1
host - fdff::1 = true
root@FFF-GW-Adrian:~# /sbin/validate_data host fe80::1
host - fe80::1 = true
root@FFF-GW-Adrian:~# /sbin/validate_data host fe80::1%br-mesh
host - fe80::1%br-mesh = false

This is a problem practically whenever validata_data is used to check uci values.

For example, it is not possible to use a link-local address for specifying an NTP server:

https://github.com/openwrt/openwrt/blob/master/package/utils/busybox/files/sysntpd#L33

If ‘server:list(host)’ is changed to ‘server:list(string)’ there, it obviously works fine, as it’s just the validation.

[1] https://git.openwrt.org/?p=project/ubox.git;a=blob;f=validate/validate.c;h=e72b8117ecd8b680778b0f5c7637ed6546a7736b;hb=HEAD#l402

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing