Re: [OpenWrt-Devel] [PATCH][v3] iprule: rework interface based rules to handle dynamic interfaces

2018-06-29 Thread Hans Dedecker
On Fri, Jun 29, 2018 at 11:15 PM Alexander Couzens  wrote:
>
> Previous netifd would only apply `ip rule`s while config phase.
> If the iprule is depending on an interface (iif or oif), the rule
> will fail if the interface is not up.
>
> Allow iprules to track interfaces and their devices by using
> the interface events.
>
> Fixes: FS#1571
> Signed-off-by: Alexander Couzens 
Acked-by: Hans Dedecker 
> ---
>  iprule.c | 176 ---
>  iprule.h |   9 +++
>  2 files changed, 164 insertions(+), 21 deletions(-)
>
> diff --git a/iprule.c b/iprule.c
> index 7cf7422f4168..105f469b2b35 100644
> --- a/iprule.c
> +++ b/iprule.c
> @@ -2,6 +2,7 @@
>   * netifd - network interface daemon
>   * Copyright (C) 2012 Felix Fietkau 
>   * Copyright (C) 2013 Jo-Philipp Wich 
> + * Copyright (C) 2018 Alexander Couzens 
>   *
>   * This program is free software; you can redistribute it and/or modify
>   * it under the terms of the GNU General Public License version 2
> @@ -12,6 +13,7 @@
>   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>   * GNU General Public License for more details.
>   */
> +#include 
>  #include 
>  #include 
>  #include 
> @@ -66,6 +68,16 @@ const struct uci_blob_param_list rule_attr_list = {
> .params = rule_attr,
>  };
>
> +/* interface based rules are dynamic. */
> +static bool rule_ready(struct iprule *rule) {
> +   if (rule->flags & IPRULE_OUT && rule->out_dev == NULL)
> +   return false;
> +
> +   if (rule->flags & IPRULE_IN && rule->in_dev == NULL)
> +   return false;
> +
> +   return true;
> +}
>
>  static bool
>  iprule_parse_mark(const char *mark, struct iprule *rule)
> @@ -97,13 +109,102 @@ iprule_parse_mark(const char *mark, struct iprule *rule)
> return true;
>  }
>
> +/* called on interface changes of the incoming interface */
> +static void rule_in_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule = container_of(dep, struct iprule, in_iface_user);
> +
> +   switch (ev) {
> +   case IFEV_UP:
> +   if (!iface->l3_dev.dev)
> +   break;
> +   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->in_dev));
> +   if (rule_ready(rule))
> +   system_add_iprule(rule);
> +   break;
> +   case IFEV_DOWN:
> +   case IFEV_UP_FAILED:
> +   case IFEV_FREE:
> +   if (rule_ready(rule))
> +   system_del_iprule(rule);
> +   rule->in_dev[0] = 0;
> +   break;
> +   default:
> +   break;
> +   }
> +}
> +
> +/* called on interface changes of the outgoing interface */
> +static void rule_out_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule = container_of(dep, struct iprule, 
> out_iface_user);
> +
> +   switch (ev) {
> +   case IFEV_UP:
> +   if (!iface->l3_dev.dev)
> +   break;
> +   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->out_dev));
> +   if (rule_ready(rule))
> +   system_add_iprule(rule);
> +   break;
> +   case IFEV_DOWN:
> +   case IFEV_UP_FAILED:
> +   case IFEV_FREE:
> +   if (rule_ready(rule))
> +   system_del_iprule(rule);
> +   rule->out_dev[0] = 0;
> +   break;
> +   default:
> +   break;
> +   }
> +}
> +
> +/* called on all interface events */
> +static void generic_interface_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule;
> +
> +   if (ev != IFEV_CREATE)
> +   return;
> +
> +   /* add new interfaces to rules */
> +   vlist_for_each_element(&iprules, rule, node) {
> +   if (rule_ready(rule))
> +   continue;
> +
> +   if (!strcmp(rule->out_iface, iface->name)) {
> +   assert(!rule->out_dev);
> +   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->out_dev));
> +   interface_add_user(&rule->out_iface_user, iface);
> +   }
> +
> +   if (!strcmp(rule->in_iface, iface->name)) {
> +   assert(!rule->in_dev);
> +   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->in_dev));
> +   interface_add_user(&rule->in_iface_user, iface);
> +   }
> +   }
> +}
> +
> +struct interface_user generic_listener = {
> +   .cb = generic_interface_cb
> +};
> +
>  void
>  iprule_add(struct blob_attr *attr

[OpenWrt-Devel] iputils packaging

2018-06-29 Thread Noah Meyerhans via openwrt-devel
The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.--- Begin Message ---
Some time ago, David Heidelberg forked the iputils packages found at
http://www.skbuff.net/iputils. The fork is maintained at
https://github.com/iputils/iputils/

Many Linux distros, including Debian, Ubuntu, Fedora, and probably
others, have switched to the fork. As the package maintainer within
Debian, I've found David to be responsive as upstream, and have had an
easy time integrating all the Debian patches back into his repository.

Is there a reason OpenWRT hasn't switched? I'm happy to send patches if
they'll be considered.

noah



signature.asc
Description: PGP signature
--- End Message ---
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH] ramips: ethernet: Switch to eth_hw_addr_random

2018-06-29 Thread Rosen Penev
This automatically sets addr_assign_type to NET_ADDR_RANDOM.

Based on upstream Mediatek driver change.

Signed-off-by: Rosen Penev 
---
 .../files-4.14/drivers/net/ethernet/mediatek/mtk_eth_soc.c  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git 
a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mtk_eth_soc.c 
b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mtk_eth_soc.c
index e68ca204ed..a5704b0f1b 100644
--- a/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/target/linux/ramips/files-4.14/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -1330,7 +1330,7 @@ static int __init fe_init(struct net_device *dev)
 
/* If the mac address is invalid, use random mac address  */
if (!is_valid_ether_addr(dev->dev_addr)) {
-   random_ether_addr(dev->dev_addr);
+   eth_hw_addr_random(dev);
dev_err(priv->dev, "generated random MAC address %pM\n",
dev->dev_addr);
}
-- 
2.17.1


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 2/2] nmea.c: check return value of timegm() for errors

2018-06-29 Thread Alexander Couzens
Found-By: Coverity
Fixes CID 1432784
---
 nmea.c | 27 +--
 1 file changed, 17 insertions(+), 10 deletions(-)

diff --git a/nmea.c b/nmea.c
index 242bc21eda59..8bd91bb35f9a 100644
--- a/nmea.c
+++ b/nmea.c
@@ -97,19 +97,26 @@ nmea_rmc_cb(void)
DEBUG(3, "date: %s UTC\n", tmp);
 
if (adjust_clock) {
-   struct timeval tv = { timegm(&tm), 0 };
+   struct timeval tv = { 0 };
struct timeval cur;
+   time_t sec = timegm(&tm);
 
-   gettimeofday(&cur, NULL);
-
-   if (abs(cur.tv_sec - tv.tv_sec) > MAX_TIME_OFFSET) {
-   if (++nmea_bad_time > MAX_BAD_TIME) {
-   LOG("system time differs from GPS time 
by more than %d seconds. Using %s UTC as the new time\n", MAX_TIME_OFFSET, tmp);
-   /* only set datetime if specified by 
command line argument! */
-   settimeofday(&tv, NULL);
-   }
+   if (sec == -1) {
+   ERROR("failed to convert time via timegm()");
} else {
-   nmea_bad_time = 0;
+   tv.tv_sec = sec;
+
+   gettimeofday(&cur, NULL);
+
+   if (abs(cur.tv_sec - tv.tv_sec) > 
MAX_TIME_OFFSET) {
+   if (++nmea_bad_time > MAX_BAD_TIME) {
+   LOG("system time differs from 
GPS time by more than %d seconds. Using %s UTC as the new time\n", 
MAX_TIME_OFFSET, tmp);
+   /* only set datetime if 
specified by command line argument! */
+   settimeofday(&tv, NULL);
+   }
+   } else {
+   nmea_bad_time = 0;
+   }
}
}
}
-- 
2.18.0


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 1/2] nmea.c: Add null byte to nmea fields

2018-06-29 Thread Alexander Couzens
Either the main.c treat them as non-null terminated strings or
nmea adds a null byte to the fields.

Found-by: Coverity
Fixes CID 1431321 1431098
---
 nmea.c | 12 ++--
 nmea.h |  2 +-
 2 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/nmea.c b/nmea.c
index 73ee722dfb7e..242bc21eda59 100644
--- a/nmea.c
+++ b/nmea.c
@@ -51,7 +51,7 @@ struct nmea_param {
 } nmea_params[MAX_NMEA_PARAM];
 
 static int nmea_bad_time;
-char longitude[32] = { 0 }, latitude[32] = { 0 }, course[16] = { 0 }, 
speed[16] = { 0 }, elevation[16] = { 0 };
+char longitude[33] = { 0 }, latitude[33] = { 0 }, course[17] = { 0 }, 
speed[17] = { 0 }, elevation[17] = { 0 };
 int gps_valid = 0;
 
 static void
@@ -136,8 +136,8 @@ nmea_rmc_cb(void)
if (*nmea_params[6].str == 'W')
lon *= -1.0;
 
-   snprintf(latitude, sizeof(latitude), "%f", lat);
-   snprintf(longitude, sizeof(longitude), "%f", lon);
+   snprintf(latitude, sizeof(latitude) - 1, "%f", lat);
+   snprintf(longitude, sizeof(longitude) - 1, "%f", lon);
 
DEBUG(3, "position: %s %s\n", latitude, longitude);
gps_timestamp();
@@ -149,7 +149,7 @@ nmea_gga_cb(void)
 {
if (!gps_valid)
return;
-   strncpy(elevation, nmea_params[9].str, sizeof(elevation));
+   strncpy(elevation, nmea_params[9].str, sizeof(elevation) - 1);
DEBUG(4, "height: %s\n", elevation);
 }
 
@@ -158,8 +158,8 @@ nmea_vtg_cb(void)
 {
if (!gps_valid)
return;
-   strncpy(course, nmea_params[1].str, sizeof(course));
-   strncpy(speed, nmea_params[7].str, sizeof(speed));
+   strncpy(course, nmea_params[1].str, sizeof(course) - 1);
+   strncpy(speed, nmea_params[7].str, sizeof(speed) - 1);
DEBUG(4, "course: %s\n", course);
DEBUG(4, "speed: %s\n", speed);
 }
diff --git a/nmea.h b/nmea.h
index c6f1896df986..9f46d299983e 100644
--- a/nmea.h
+++ b/nmea.h
@@ -23,7 +23,7 @@
 
 #include 
 
-extern char longitude[32], latitude[32], course[16], speed[16], elevation[16];
+extern char longitude[33], latitude[33], course[17], speed[17], elevation[17];
 extern int nmea_open(char *dev, struct ustream_fd *s, speed_t speed);
 extern void gps_timestamp(void);
 extern unsigned int adjust_clock;
-- 
2.18.0


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH][v3] iprule: rework interface based rules to handle dynamic interfaces

2018-06-29 Thread Alexander Couzens
Previous netifd would only apply `ip rule`s while config phase.
If the iprule is depending on an interface (iif or oif), the rule
will fail if the interface is not up.

Allow iprules to track interfaces and their devices by using
the interface events.

Fixes: FS#1571
Signed-off-by: Alexander Couzens 
---
 iprule.c | 176 ---
 iprule.h |   9 +++
 2 files changed, 164 insertions(+), 21 deletions(-)

diff --git a/iprule.c b/iprule.c
index 7cf7422f4168..105f469b2b35 100644
--- a/iprule.c
+++ b/iprule.c
@@ -2,6 +2,7 @@
  * netifd - network interface daemon
  * Copyright (C) 2012 Felix Fietkau 
  * Copyright (C) 2013 Jo-Philipp Wich 
+ * Copyright (C) 2018 Alexander Couzens 
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2
@@ -12,6 +13,7 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  */
+#include 
 #include 
 #include 
 #include 
@@ -66,6 +68,16 @@ const struct uci_blob_param_list rule_attr_list = {
.params = rule_attr,
 };
 
+/* interface based rules are dynamic. */
+static bool rule_ready(struct iprule *rule) {
+   if (rule->flags & IPRULE_OUT && rule->out_dev == NULL)
+   return false;
+
+   if (rule->flags & IPRULE_IN && rule->in_dev == NULL)
+   return false;
+
+   return true;
+}
 
 static bool
 iprule_parse_mark(const char *mark, struct iprule *rule)
@@ -97,13 +109,102 @@ iprule_parse_mark(const char *mark, struct iprule *rule)
return true;
 }
 
+/* called on interface changes of the incoming interface */
+static void rule_in_cb(
+   struct interface_user *dep,
+   struct interface *iface,
+   enum interface_event ev)
+{
+   struct iprule *rule = container_of(dep, struct iprule, in_iface_user);
+
+   switch (ev) {
+   case IFEV_UP:
+   if (!iface->l3_dev.dev)
+   break;
+   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
sizeof(rule->in_dev));
+   if (rule_ready(rule))
+   system_add_iprule(rule);
+   break;
+   case IFEV_DOWN:
+   case IFEV_UP_FAILED:
+   case IFEV_FREE:
+   if (rule_ready(rule))
+   system_del_iprule(rule);
+   rule->in_dev[0] = 0;
+   break;
+   default:
+   break;
+   }
+}
+
+/* called on interface changes of the outgoing interface */
+static void rule_out_cb(
+   struct interface_user *dep,
+   struct interface *iface,
+   enum interface_event ev)
+{
+   struct iprule *rule = container_of(dep, struct iprule, out_iface_user);
+
+   switch (ev) {
+   case IFEV_UP:
+   if (!iface->l3_dev.dev)
+   break;
+   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
sizeof(rule->out_dev));
+   if (rule_ready(rule))
+   system_add_iprule(rule);
+   break;
+   case IFEV_DOWN:
+   case IFEV_UP_FAILED:
+   case IFEV_FREE:
+   if (rule_ready(rule))
+   system_del_iprule(rule);
+   rule->out_dev[0] = 0;
+   break;
+   default:
+   break;
+   }
+}
+
+/* called on all interface events */
+static void generic_interface_cb(
+   struct interface_user *dep,
+   struct interface *iface,
+   enum interface_event ev)
+{
+   struct iprule *rule;
+
+   if (ev != IFEV_CREATE)
+   return;
+
+   /* add new interfaces to rules */
+   vlist_for_each_element(&iprules, rule, node) {
+   if (rule_ready(rule))
+   continue;
+
+   if (!strcmp(rule->out_iface, iface->name)) {
+   assert(!rule->out_dev);
+   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
sizeof(rule->out_dev));
+   interface_add_user(&rule->out_iface_user, iface);
+   }
+
+   if (!strcmp(rule->in_iface, iface->name)) {
+   assert(!rule->in_dev);
+   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
sizeof(rule->in_dev));
+   interface_add_user(&rule->in_iface_user, iface);
+   }
+   }
+}
+
+struct interface_user generic_listener = {
+   .cb = generic_interface_cb
+};
+
 void
 iprule_add(struct blob_attr *attr, bool v6)
 {
-   struct interface *iif = NULL, *oif = NULL;
struct blob_attr *tb[__RULE_MAX], *cur;
-   struct interface *iface;
struct iprule *rule;
+   char *iface_name;
int af = v6 ? AF_INET6 : AF_INET;
 
blobmsg_parse(rule_attr, __RULE_MAX, tb, blobmsg_data(attr), 
blobmsg_data_len(attr));
@@ -119,26 +220,16 @@ iprule_add(struct bl

Re: [OpenWrt-Devel] Build currently broken when using usbutils

2018-06-29 Thread Jon Burgess
On Fri, 2018-06-29 at 16:46 +0200, Bjørn Mork wrote:
> Koen Vandeputte  writes:
> 
> > This looks like a good up-to-date candidate to replace it (or to
> > replace the mirror contents on OpenWrt with the contents of this
> > one)
> > http://www.linux-usb.org/usb.ids
> > 
> > 
> > Anyone with objections?
> 
> I believe the problem with that one is that there is the same as with
> the mirrors: No version info in the path.  So the build will break
> every
> time the database is updated.

Fedora gets the usb.ids from its hwdata package which uses files from:

Source: https://github.com/vcrhonek/hwdata/archive/v%{version}.tar.gz
URL:https://github.com/vcrhonek/hwdata

Where version is currently 0.312

Jon


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH 2/2] iprule: rework interface based rules to handle dynamic interfaces

2018-06-29 Thread Alexander Couzens
On Fri, 29 Jun 2018 16:23:02 +0200
Hans Dedecker  wrote:

> On Fri, Jun 29, 2018 at 5:23 AM Alexander Couzens 
> wrote: [...]  
> Is the rule_ready check and consequent call to system_add_iprule still
> required ? Above calls to interface_add_user install the callbacks; if
> the interface is up rule_in_cb and/or rule_out_cb is immediately
> invoked by interface_add_user which installs the ip rule if the rule
> is ready.

Indeed, it's not needed.


pgpcnAv4n4zD7.pgp
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] [PATCH 1/2 v2] kernel: bump 4.9 to 4.9.110 for 18.06

2018-06-29 Thread Stijn Segers
Compile-tested on ar71xx.

Signed-off-by: Stijn Segers 
---
 include/kernel-version.mk  |   4 +-
 .../ar71xx/patches-4.9/500-MIPS-fw-myloader.patch  |   2 +-
 .../generic/pending-4.9/308-mips32r2_tune.patch|   2 +-
 ...jecting-with-source-address-failed-policy.patch |  20 +-
 .../generic/pending-4.9/834-ledtrig-libata.patch   |   8 +-
 .../sunxi/patches-4.9/0052-stmmac-form-4-12.patch  | 344 ++---
 6 files changed, 179 insertions(+), 201 deletions(-)

diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 825a227915..6ab17a5ad3 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -4,12 +4,12 @@ LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .71
 LINUX_VERSION-4.4 = .121
-LINUX_VERSION-4.9 = .109
+LINUX_VERSION-4.9 = .110
 LINUX_VERSION-4.14 = .50
 
 LINUX_KERNEL_HASH-3.18.71 = 
5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
 LINUX_KERNEL_HASH-4.4.121 = 
44a88268b5088dc326b30c9b9133ac35a9a200b636b7268d08f32abeae6ca729
-LINUX_KERNEL_HASH-4.9.109 = 
3dcd5654a553432119492b69e649c4ed117781bfd571edcb02346c945be359b0
+LINUX_KERNEL_HASH-4.9.110 = 
379a143a70a79f0eea6c9f6638942b65e6043abdde17ad23264c0abd93c4ea7a
 LINUX_KERNEL_HASH-4.14.50 = 
703a8d013b25dc428d936f72858fa0c702c22cb3114a040fb9bb47562e4ea2ac
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1
diff --git a/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch 
b/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
index 301422a7d8..304fd69b22 100644
--- a/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
+++ b/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/Makefile
 +++ b/arch/mips/Makefile
-@@ -213,6 +213,7 @@ cflags-$(toolchain-virt)   += -DTOOLCHAIN
+@@ -218,6 +218,7 @@ cflags-$(toolchain-virt)   += -DTOOLCHAIN
  #
  libs-$(CONFIG_FW_ARC) += arch/mips/fw/arc/
  libs-$(CONFIG_FW_CFE) += arch/mips/fw/cfe/
diff --git a/target/linux/generic/pending-4.9/308-mips32r2_tune.patch 
b/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
index 63cf576bd8..9e1efe2713 100644
--- a/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
+++ b/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
@@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau 
 
 --- a/arch/mips/Makefile
 +++ b/arch/mips/Makefile
-@@ -148,7 +148,7 @@ cflags-$(CONFIG_CPU_R4X00) += -march=r46
+@@ -153,7 +153,7 @@ cflags-$(CONFIG_CPU_R4X00) += -march=r46
  cflags-$(CONFIG_CPU_TX49XX)   += -march=r4600 -Wa,--trap
  cflags-$(CONFIG_CPU_MIPS32_R1)+= $(call 
cc-option,-march=mips32,-mips32 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) \
-Wa,-mips32 -Wa,--trap
diff --git 
a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
 
b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
index 2cebf55a44..4757e81ea1 100644
--- 
a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
+++ 
b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
@@ -141,7 +141,7 @@ Signed-off-by: Jonas Gorski 
  static const struct rt6_info ip6_blk_hole_entry_template = {
.dst = {
.__refcnt   = ATOMIC_INIT(1),
-@@ -1970,6 +1987,11 @@ static struct rt6_info *ip6_route_info_c
+@@ -1967,6 +1984,11 @@ static struct rt6_info *ip6_route_info_c
rt->dst.output = ip6_pkt_prohibit_out;
rt->dst.input = ip6_pkt_prohibit;
break;
@@ -153,7 +153,7 @@ Signed-off-by: Jonas Gorski 
case RTN_THROW:
case RTN_UNREACHABLE:
default:
-@@ -2613,6 +2635,17 @@ static int ip6_pkt_prohibit_out(struct n
+@@ -2610,6 +2632,17 @@ static int ip6_pkt_prohibit_out(struct n
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, 
IPSTATS_MIB_OUTNOROUTES);
  }
  
@@ -171,7 +171,7 @@ Signed-off-by: Jonas Gorski 
  /*
   *Allocate a dst for local (unicast / anycast) address.
   */
-@@ -2850,7 +2883,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -2847,7 +2880,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT ||
@@ -181,7 +181,7 @@ Signed-off-by: Jonas Gorski 
cfg->fc_flags |= RTF_REJECT;
  
if (rtm->rtm_type == RTN_LOCAL)
-@@ -3222,6 +3256,9 @@ static int rt6_fill_node(struct net *net
+@@ -3219,6 +3253,9 @@ static int rt6_fill_node(struct net *net
case -EACCES:
rtm->rtm_type = RTN_PROHIBIT;
break;
@@ -191,7 +191,7 @@ Signed-off-by: Jonas Gorski 
case -EAGAIN:
rtm->rtm_type = RTN_THROW;
break;
-@@ -3498,6 +3535,8 @@

[OpenWrt-Devel] [PATCH 1/2] kernel: bump 4.9 to 4.9.110 for 18.06

2018-06-29 Thread Stijn Segers
---
 include/kernel-version.mk  |   4 +-
 .../ar71xx/patches-4.9/500-MIPS-fw-myloader.patch  |   2 +-
 .../generic/pending-4.9/308-mips32r2_tune.patch|   2 +-
 ...jecting-with-source-address-failed-policy.patch |  20 +-
 .../generic/pending-4.9/834-ledtrig-libata.patch   |   8 +-
 .../sunxi/patches-4.9/0052-stmmac-form-4-12.patch  | 344 ++---
 6 files changed, 179 insertions(+), 201 deletions(-)

diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 825a227915..6ab17a5ad3 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -4,12 +4,12 @@ LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .71
 LINUX_VERSION-4.4 = .121
-LINUX_VERSION-4.9 = .109
+LINUX_VERSION-4.9 = .110
 LINUX_VERSION-4.14 = .50
 
 LINUX_KERNEL_HASH-3.18.71 = 
5abc9778ad44ce02ed6c8ab52ece8a21c6d20d21f6ed8a19287b4a38a50c1240
 LINUX_KERNEL_HASH-4.4.121 = 
44a88268b5088dc326b30c9b9133ac35a9a200b636b7268d08f32abeae6ca729
-LINUX_KERNEL_HASH-4.9.109 = 
3dcd5654a553432119492b69e649c4ed117781bfd571edcb02346c945be359b0
+LINUX_KERNEL_HASH-4.9.110 = 
379a143a70a79f0eea6c9f6638942b65e6043abdde17ad23264c0abd93c4ea7a
 LINUX_KERNEL_HASH-4.14.50 = 
703a8d013b25dc428d936f72858fa0c702c22cb3114a040fb9bb47562e4ea2ac
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1
diff --git a/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch 
b/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
index 301422a7d8..304fd69b22 100644
--- a/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
+++ b/target/linux/ar71xx/patches-4.9/500-MIPS-fw-myloader.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/Makefile
 +++ b/arch/mips/Makefile
-@@ -213,6 +213,7 @@ cflags-$(toolchain-virt)   += -DTOOLCHAIN
+@@ -218,6 +218,7 @@ cflags-$(toolchain-virt)   += -DTOOLCHAIN
  #
  libs-$(CONFIG_FW_ARC) += arch/mips/fw/arc/
  libs-$(CONFIG_FW_CFE) += arch/mips/fw/cfe/
diff --git a/target/linux/generic/pending-4.9/308-mips32r2_tune.patch 
b/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
index 63cf576bd8..9e1efe2713 100644
--- a/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
+++ b/target/linux/generic/pending-4.9/308-mips32r2_tune.patch
@@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau 
 
 --- a/arch/mips/Makefile
 +++ b/arch/mips/Makefile
-@@ -148,7 +148,7 @@ cflags-$(CONFIG_CPU_R4X00) += -march=r46
+@@ -153,7 +153,7 @@ cflags-$(CONFIG_CPU_R4X00) += -march=r46
  cflags-$(CONFIG_CPU_TX49XX)   += -march=r4600 -Wa,--trap
  cflags-$(CONFIG_CPU_MIPS32_R1)+= $(call 
cc-option,-march=mips32,-mips32 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) \
-Wa,-mips32 -Wa,--trap
diff --git 
a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
 
b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
index 2cebf55a44..4757e81ea1 100644
--- 
a/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
+++ 
b/target/linux/generic/pending-4.9/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
@@ -141,7 +141,7 @@ Signed-off-by: Jonas Gorski 
  static const struct rt6_info ip6_blk_hole_entry_template = {
.dst = {
.__refcnt   = ATOMIC_INIT(1),
-@@ -1970,6 +1987,11 @@ static struct rt6_info *ip6_route_info_c
+@@ -1967,6 +1984,11 @@ static struct rt6_info *ip6_route_info_c
rt->dst.output = ip6_pkt_prohibit_out;
rt->dst.input = ip6_pkt_prohibit;
break;
@@ -153,7 +153,7 @@ Signed-off-by: Jonas Gorski 
case RTN_THROW:
case RTN_UNREACHABLE:
default:
-@@ -2613,6 +2635,17 @@ static int ip6_pkt_prohibit_out(struct n
+@@ -2610,6 +2632,17 @@ static int ip6_pkt_prohibit_out(struct n
return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, 
IPSTATS_MIB_OUTNOROUTES);
  }
  
@@ -171,7 +171,7 @@ Signed-off-by: Jonas Gorski 
  /*
   *Allocate a dst for local (unicast / anycast) address.
   */
-@@ -2850,7 +2883,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -2847,7 +2880,8 @@ static int rtm_to_fib6_config(struct sk_
if (rtm->rtm_type == RTN_UNREACHABLE ||
rtm->rtm_type == RTN_BLACKHOLE ||
rtm->rtm_type == RTN_PROHIBIT ||
@@ -181,7 +181,7 @@ Signed-off-by: Jonas Gorski 
cfg->fc_flags |= RTF_REJECT;
  
if (rtm->rtm_type == RTN_LOCAL)
-@@ -3222,6 +3256,9 @@ static int rt6_fill_node(struct net *net
+@@ -3219,6 +3253,9 @@ static int rt6_fill_node(struct net *net
case -EACCES:
rtm->rtm_type = RTN_PROHIBIT;
break;
@@ -191,7 +191,7 @@ Signed-off-by: Jonas Gorski 
case -EAGAIN:
rtm->rtm_type = RTN_THROW;
break;
-@@ -3498,6 +3535,8 @@ static int ip6_route_dev_notify(struct n
+@@ -3495,6 +3

[OpenWrt-Devel] [PATCH 0/2] Bump 4.9 and 4.14 for 18.06

2018-06-29 Thread Stijn Segers
* Bump 4.9 to 4.9.110 for 18.06
* Bump 4.14 to 4.14.52 for 18.06

Patches refreshed for all targets.

 include/kernel-version.mk  |   8 +-
 .../ar71xx/patches-4.9/500-MIPS-fw-myloader.patch  |   2 +-
 16-netfilter-flow-table-support-for-IPv6.patch |   2 +-
 ...r-improve-flow-table-Kconfig-dependencies.patch |   2 +-
 ...lowtable-infrastructure-depends-on-NETFIL.patch |   2 +-
 .../650-netfilter-add-xt_OFFLOAD-target.patch  |   4 +-
 ...leanup-offload-hooks-on-netdev-unregister.patch |   9 +-
 ...c_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch |   2 +-
 ...jecting-with-source-address-failed-policy.patch |  20 +-
 .../generic/pending-4.14/834-ledtrig-libata.patch  |   8 +-
 .../generic/pending-4.9/308-mips32r2_tune.patch|   2 +-
 ...jecting-with-source-address-failed-policy.patch |  20 +-
 .../generic/pending-4.9/834-ledtrig-libata.patch   |   8 +-
 .../902-essedma-alloc-skb-ip-align.patch   |   7 +-
 .../patches-4.14/997-device_tree_cmdline.patch |   4 +-
 ...ux-Split-out-register-accessors-for-reuse.patch |   6 +-
 .../patches-4.14/0069-arm-boot-add-dts-files.patch |  12 +-
 .../0012-clk-dont-disable-unused-clocks.patch  |   2 +-
 ...tek-add-reset-controller-dt-bindings-requ.patch |   6 -
 ...ek-pwrap-fixup-warnings-from-coding-style.patch |  11 +-
 ...mtu3-support-option-to-disable-usb3-ports.patch |  21 +-
 ...-mtu3-remove-dummy-wakeup-debounce-clocks.patch |  13 +-
 ...-mtu3-add-optional-mcu-and-dma-bus-clocks.patch |  28 +-
 .../0107-usb-mtu3-support-36-bit-DMA-address.patch |  29 +-
 ...e-FORCE-RG_IDDIG-to-implement-manual-DRD-.patch |  40 +-
 .../0109-usb-mtu3-add-support-for-usb3.1-IP.patch  |  33 +-
 ...mtu3-get-optional-vbus-for-host-only-mode.patch |   9 +-
 ...tu3-set-invalid-dr_mode-as-dual-role-mode.patch |   7 +-
 ...t-otg_sel-for-u2port-only-if-works-as-dua.patch |   9 +-
 ...-usb-mtu3-add-a-optional-property-to-disa.patch |   5 -
 ...-usb-mtu3-remove-dummy-clocks-and-add-opt.patch |   5 -
 ...indings-usb-mtu3-remove-optional-pinctrls.patch |   5 -
 ...-arm-mediatek-add-MT7622-string-to-the-PM.patch |   7 +-
 ...k-pwrap-add-pwrap_read32-for-reading-in-3.patch |  15 +-
 ...k-pwrap-add-pwrap_write32-for-writing-in-.patch |  11 +-
 ...k-pwrap-refactor-pwrap_init-for-the-vario.patch |  21 +-
 ...k-pwrap-add-MediaTek-MT6380-as-one-slave-.patch |  17 +-
 ...k-pwrap-add-common-way-for-setup-CS-timin.patch |  31 +-
 ...mediatek-pwrap-add-support-for-MT7622-SoC.patch |  13 +-
 ...k-place-Kconfig-for-all-SoC-drivers-under.patch |   5 -
 ...tek-cleanup-message-for-platform-selectio.patch |   5 -
 ...25-phy-phy-mtk-tphy-add-set_mode-callback.patch |   9 +-
 ...k-use-dma_set_mask_and_coherent-in-probe-.patch |   7 +-
 ...k-use-ports-count-from-xhci-in-xhci_mtk_s.patch |  13 +-
 ...-xhci-mtk-check-clock-stability-of-U3_MAC.patch |   7 +-
 ...-mtk-support-option-to-disable-usb3-ports.patch |  17 +-
 ...i-mtk-remove-dummy-wakeup-debounce-clocks.patch |  13 +-
 ...i-mtk-add-optional-mcu-and-dma-bus-clocks.patch |  13 +-
 ...st-modify-description-for-MTK-xHCI-config.patch |   5 -
 ...-usb-mtk-xhci-add-a-optional-property-to-.patch |   5 -
 ...-usb-mtk-xhci-remove-dummy-clocks-and-add.patch |   5 -
 ...-mtd-add-new-compatible-strings-and-impro.patch |   5 -
 ...36-mtd-mtk-nor-add-suspend-resume-support.patch |  15 +-
 ...-rtc-mediatek-add-bindings-for-MediaTek-S.patch |   6 -
 ...mediatek-add-driver-for-RTC-on-MT7622-SoC.patch |  12 +-
 ...k-enhance-the-description-for-MediaTek-PM.patch |   5 -
 ...k-change-the-compile-sequence-of-mtk_nand.patch |   7 +-
 ...ings-Add-reg-source_cg-latch-ck-for-Media.patch |   7 +-
 ...mmc-mediatek-add-support-of-mt2701-mt2712.patch |  19 +-
 ...-ARM-Mediatek-Document-bindings-for-MT271.patch |  32 +-
 ...ediatek-Add-dt-bindings-for-MT2712-clocks.patch |   6 -
 ...146-clk-mediatek-Add-MT2712-clock-support.patch |  43 +-
 ...-clock-mediatek-document-clk-bindings-for.patch |  27 --
 ...k-add-clocks-dt-bindings-required-header-.patch |   6 -
 ...mediatek-add-clock-support-for-MT7622-SoC.patch |  21 +-
 ...t8173-remove-mediatek-mt8135-mmc-from-mmc.patch |  13 +-
 ...k-make-hs400_tune_response-only-for-mt817.patch |   9 +-
 .../0153-mmc-mediatek-add-pad_tune0-support.patch  |  39 +-
 ...atek-add-async-fifo-and-data-tune-support.patch |  19 +-
 .../0155-mmc-mediatek-add-busy_check-support.patch |  15 +-
 ...k-add-stop_clk-fix-and-enhance_rx-support.patch |  19 +-
 ...c-mediatek-add-support-of-source_cg-clock.patch |  15 +-
 .../0158-mmc-mediatek-add-latch-ck-support.patch   |   9 +-
 ...k-improve-eMMC-hs400-mode-read-performanc.patch |  11 +-
 ...k-perfer-to-use-rise-edge-latching-for-cm.patch |   7 +-
 ...61-pwm-mediatek-Add-MT2712-MT7622-support.patch |  15 +-
 ...k-use-nand_reset-to-reset-NAND-devices-in.patch |   9 +-
 ...-mediatek-add-mt2712-into-compatible-list.patch |   7 +-
 .../0165-mtd-nand-mtk-update-DT-bindings.patch |   5 -
 ...k-Support-different-MTK-NAND-flash-contro.patch |  45 +--
 ...-mtk-Support-MT7622-NAND-fl

Re: [OpenWrt-Devel] Build currently broken when using usbutils

2018-06-29 Thread Bjørn Mork
Koen Vandeputte  writes:

> This looks like a good up-to-date candidate to replace it (or to
> replace the mirror contents on OpenWrt with the contents of this one)
> http://www.linux-usb.org/usb.ids
>
>
> Anyone with objections?

I believe the problem with that one is that there is the same as with
the mirrors: No version info in the path.  So the build will break every
time the database is updated.


Bjørn

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] [PATCH 2/2] iprule: rework interface based rules to handle dynamic interfaces

2018-06-29 Thread Hans Dedecker
On Fri, Jun 29, 2018 at 5:23 AM Alexander Couzens  wrote:
>
> Previous netifd would only apply `ip rule`s while config phase.
> If the iprule is depending on an interface (iif or oif), the rule
> will fail if the interface is not up.
>
> Allow iprules to track interfaces and their devices by using
> the interface events.
>
> Fixes: FS#1571
> ---
>  iprule.c | 179 ---
>  iprule.h |   9 +++
>  2 files changed, 167 insertions(+), 21 deletions(-)
>
> diff --git a/iprule.c b/iprule.c
> index 7cf7422f4168..740965431b4c 100644
> --- a/iprule.c
> +++ b/iprule.c
> @@ -2,6 +2,7 @@
>   * netifd - network interface daemon
>   * Copyright (C) 2012 Felix Fietkau 
>   * Copyright (C) 2013 Jo-Philipp Wich 
> + * Copyright (C) 2018 Alexander Couzens 
>   *
>   * This program is free software; you can redistribute it and/or modify
>   * it under the terms of the GNU General Public License version 2
> @@ -12,6 +13,7 @@
>   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>   * GNU General Public License for more details.
>   */
> +#include 
>  #include 
>  #include 
>  #include 
> @@ -66,6 +68,16 @@ const struct uci_blob_param_list rule_attr_list = {
> .params = rule_attr,
>  };
>
> +/* interface based rules are dynamic. */
> +static bool rule_ready(struct iprule *rule) {
> +   if (rule->flags & IPRULE_OUT && rule->out_dev == NULL)
> +   return false;
> +
> +   if (rule->flags & IPRULE_IN && rule->in_dev == NULL)
> +   return false;
> +
> +   return true;
> +}
>
>  static bool
>  iprule_parse_mark(const char *mark, struct iprule *rule)
> @@ -97,13 +109,105 @@ iprule_parse_mark(const char *mark, struct iprule *rule)
> return true;
>  }
>
> +/* called on interface changes of the incoming interface */
> +static void rule_in_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule = container_of(dep, struct iprule, in_iface_user);
> +
> +   switch (ev) {
> +   case IFEV_UP:
> +   if (!iface->l3_dev.dev)
> +   break;
> +   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->in_dev));
> +   if (rule_ready(rule))
> +   system_add_iprule(rule);
> +   break;
> +   case IFEV_DOWN:
> +   case IFEV_UP_FAILED:
> +   case IFEV_FREE:
> +   if (rule_ready(rule))
> +   system_del_iprule(rule);
> +   rule->in_dev[0] = 0;
> +   break;
> +   default:
> +   break;
> +   }
> +}
> +
> +/* called on interface changes of the outgoing interface */
> +static void rule_out_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule = container_of(dep, struct iprule, 
> out_iface_user);
> +
> +   switch (ev) {
> +   case IFEV_UP:
> +   if (!iface->l3_dev.dev)
> +   break;
> +   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->out_dev));
> +   if (rule_ready(rule))
> +   system_add_iprule(rule);
> +   break;
> +   case IFEV_DOWN:
> +   case IFEV_UP_FAILED:
> +   case IFEV_FREE:
> +   if (rule_ready(rule))
> +   system_del_iprule(rule);
> +   rule->out_dev[0] = 0;
> +   break;
> +   default:
> +   break;
> +   }
> +}
> +
> +/* called on all interface events */
> +static void generic_interface_cb(
> +   struct interface_user *dep,
> +   struct interface *iface,
> +   enum interface_event ev)
> +{
> +   struct iprule *rule;
> +
> +   if (ev != IFEV_CREATE)
> +   return;
> +
> +   /* add new interfaces to rules */
> +   vlist_for_each_element(&iprules, rule, node) {
> +   if (rule_ready(rule))
> +   continue;
> +
> +   if (!strcmp(rule->out_iface, iface->name)) {
> +   assert(!rule->out_dev);
> +   memcpy(rule->out_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->out_dev));
> +   interface_add_user(&rule->out_iface_user, iface);
> +   }
> +
> +   if (!strcmp(rule->in_iface, iface->name)) {
> +   assert(!rule->in_dev);
> +   memcpy(rule->in_dev, iface->l3_dev.dev->ifname, 
> sizeof(rule->in_dev));
> +   interface_add_user(&rule->in_iface_user, iface);
> +   }
> +
> +   if (rule_ready(rule))
> +   system_add_iprule(rule);
Is the rule_ready check and consequent call to system_add_iprule still
required ? Above calls to interface_add_user install t

Re: [OpenWrt-Devel] [PATCH 1/2] Introduce new interface event "create" (IFEV_CREATE)

2018-06-29 Thread Hans Dedecker
On Fri, Jun 29, 2018 at 5:23 AM Alexander Couzens  wrote:
>
> "create" will be called before the proto handlers initialised.
Acked-by: Hans Dedecker 
> ---
>  interface-event.c | 1 +
>  interface.c   | 1 +
>  interface.h   | 2 ++
>  3 files changed, 4 insertions(+)
>
> diff --git a/interface-event.c b/interface-event.c
> index 86e8f5488da8..a40f6dc883d3 100644
> --- a/interface-event.c
> +++ b/interface-event.c
> @@ -38,6 +38,7 @@ static const char * const eventnames[] = {
> [IFEV_FREE] = "free",
> [IFEV_RELOAD] = "reload",
> [IFEV_LINK_UP] = "iflink",
> +   [IFEV_CREATE] = "create",
>  };
>
>  static void
> diff --git a/interface.c b/interface.c
> index 2a23984922a1..400c605efc0c 100644
> --- a/interface.c
> +++ b/interface.c
> @@ -1275,6 +1275,7 @@ interface_update(struct vlist_tree *tree, struct 
> vlist_node *node_new,
> set_config_state(if_old, IFC_REMOVE);
> } else if (node_new) {
> D(INTERFACE, "Create interface '%s'\n", if_new->name);
> +   interface_event(if_new, IFEV_CREATE);
> proto_init_interface(if_new, if_new->config);
> interface_claim_device(if_new);
> netifd_ubus_add_interface(if_new);
> diff --git a/interface.h b/interface.h
> index 0e58f69c26e0..e5639eb326cd 100644
> --- a/interface.h
> +++ b/interface.h
> @@ -28,6 +28,8 @@ enum interface_event {
> IFEV_FREE,
> IFEV_RELOAD,
> IFEV_LINK_UP,
> +   /* send when a new interface created. This is before proto handlers 
> has been attached. */
> +   IFEV_CREATE,
>  };
>
>  enum interface_state {
> --
> 2.18.0
>

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] Build currently broken when using usbutils

2018-06-29 Thread Koen Vandeputte



On 2018-06-29 14:25, Bjørn Mork wrote:

Koen Vandeputte  writes:


The original location seems unavailable, and the backup has a wrong hash ..

See
https://www.zdnet.com/article/gentoo-github-mirror-hacked-and-considered-compromised/


Bjørn

Thanks Bjørn!


This looks like a good up-to-date candidate to replace it (or to replace 
the mirror contents on OpenWrt with the contents of this one)

http://www.linux-usb.org/usb.ids


Anyone with objections?

Koen

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] Build currently broken when using usbutils

2018-06-29 Thread Bjørn Mork
Koen Vandeputte  writes:

> The original location seems unavailable, and the backup has a wrong hash ..

See
https://www.zdnet.com/article/gentoo-github-mirror-hacked-and-considered-compromised/


Bjørn

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] Build currently broken when using usbutils

2018-06-29 Thread Koen Vandeputte

The original location seems unavailable, and the backup has a wrong hash ..



make[3]: Entering directory 
'/mnt/ramdisk/koen/firmware/builds/generic_x86_64/package/utils/usbutils'

mkdir -p /mnt/ramdisk/koen/firmware/builds/generic_x86_64/dl
SHELL= flock 
/mnt/ramdisk/koen/firmware/builds/generic_x86_64/tmp/.usb.ids.0a6be488b4c1485d30c9efee1cc895af5d4a1383.flock 
-c ' 
/mnt/ramdisk/koen/firmware/builds/generic_x86_64/scripts/download.pl 
"/mnt/ramdisk/koen/firmware/builds/generic_x86_64/dl" 
"usb.ids.0a6be488b4c1485d30c9efee1cc895af5d4a1383" 
"2d0403ffccc0ff7150e32c0bf8e2878816b76ba08d2c3bb1059f33627a3da30f" 
"usb.ids" 
"@GITHUB/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383"    '
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://raw.githubusercontent.com/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://raw.githubusercontent.com/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://raw.githubusercontent.com/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://raw.githubusercontent.com/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://raw.githubusercontent.com/gentoo/hwids/0a6be488b4c1485d30c9efee1cc895af5d4a1383/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://sources.lede-project.org/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
100  563k  100  563k    0 0  1086k  0 --:--:-- --:--:-- --:--:-- 
1087k
Hash of the downloaded file does not match (file: 
cee3dd0bab59a45031348807c3264b9195c075660587c04aef5400a52494d508, 
requested: 
2d0403ffccc0ff7150e32c0bf8e2878816b76ba08d2c3bb1059f33627a3da30f) - 
deleting download.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://mirror2.openwrt.org/sources/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
  0 0    0 0    0 0  0  0 --:--:-- --:--:-- 
--:--:-- 0

curl: (22) The requested URL returned error: 404 Not Found
Download failed.
+ curl -f --connect-timeout 20 --retry 5 --location --insecure 
https://downloads.openwrt.org/sources/usb.ids

  % Total    % Received % Xferd  Average Speed   Time    Time Time  Current
 Dload  Upload   Total   Spent Left  Speed
100   184  100   184    0 0    666  0 --:--:-- --:--:-- 
--:--:--   669
100  563k  100  563k    0 0   644k  0 --:--:-- --:--:-- --:--:-- 
3839k
Hash of the downloaded file does not match (file: 
cee3dd0bab59a45031348807c3264b9195c075660587c04aef5400a52494d508, 
requested: 
2d0403ffccc0ff7150e32c0bf8e2878816b76ba08d2c3bb1059f33627a3da30f) - 
deleting download.

No more mirrors to try - giving up.
Makefile:43: recipe for target 
'/mnt/ramdisk/koen/firmware/builds/generic_x86_64/dl/usb.ids.0a6be488b4c1485d30c9efee1cc895af5d4a1383' 
failed
make[3]: *** 
[/mnt/ramdisk/koen/firmware/builds/generic_x86_64/dl/usb.ids.0a6be488b4c1485d30c9efee1cc895af5d4a1383] 
Error 2
make[3]: Leaving directory 
'/mnt/ra

Re: [OpenWrt-Devel] Q: delayed jffs2 overlay mount

2018-06-29 Thread Zefir Kurtisi
+(fix John's email-address)

Hi Rafal,

thanks for the feedback.

On 06/29/2018 10:44 AM, Rafał Miłecki wrote:
> On Thu, 28 Jun 2018 at 17:37, Zefir Kurtisi  wrote:
>> What I fail to understand is this: most services are started between S10boot 
>> and
>> S95done, but without jffs2 overlay being mounted, they have no access to the
>> current configuration but operate with factory config. Does this make sense, 
>> or am
>> I missing something?
> 
> JFFS2 formatting happens on the first boot only. There is no "current
> configuration" then on the flash that would differ from the "factory
> config".
> 

There must be something that the jffs2 subsystem is doing every boot, since I
regularly get the "jffs2 not ready yet, using temporary tmpfs overlay" message
during S10boot when the rootfs_data partition is large (20MB+) - I was 
speculating
on garbage collection or scanning delays.

Though, this might be specific to our system (rather slow SPI-NOR flash, active
mtd_oops module, etc.). If in essence you are saying this should never happen
during regular boot, it helps a lot limiting the potential root causes.


Thanks,
Zefir

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] Q: delayed jffs2 overlay mount

2018-06-29 Thread Rafał Miłecki
On Thu, 28 Jun 2018 at 17:37, Zefir Kurtisi  wrote:
> What I fail to understand is this: most services are started between S10boot 
> and
> S95done, but without jffs2 overlay being mounted, they have no access to the
> current configuration but operate with factory config. Does this make sense, 
> or am
> I missing something?

JFFS2 formatting happens on the first boot only. There is no "current
configuration" then on the flash that would differ from the "factory
config".

-- 
Rafał

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel