meta-openembedded: subtree update:fd123c9bb2..7206f7f5bc

Adam Miartus (1):
      cereal: add cereal a header-only c++11 serialization library

Andreas Müller (14):
      xfce4-appfinder: upgrade 4.16.0 -> 4.16.1
      xfce4-whiskermenu-plugin: upgrade 2.5.2 -> 2.5.3
      xfce4-panel: upgrade 4.16.0 -> 4.16.1
      xfce4-notes-plugin: re-add 1.9.0
      gparted: upgrade 1.1.0 -> 1.2.0
      poppler: upgrade 21.01.0 -> 21.02.0
      fluidsynth: upgrade 2.1.6 -> 2.1.7
      mousepad: upgrade 0.5.1 -> 0.5.2
      xfce4-cpugraph-plugin: upgrade 1.2.0 -> 1.2.1
      babl: upgrade 0.1.82 -> 0.1.84
      gegl: upgrade 0.4.26 -> 0.4.28
      gtk+: upgrade 2.24.32 -> 2.24.33
      libsigc++-2.0: upgrade 2.10.3 -> 2.10.6
      gtkmm3: upgrade 3.24.2 -> 3.24.3

Andrei Gherzan (1):
      gateone: Cleanup assets for removed recipe

Andrey Zhizhikin (1):
      iperf3: fix build with autoconf 2.71

Gianfranco (1):
      mosquitto: Upgrade 1.6.12 -> 2.0.7

Harpritkaur Bhandari (1):
      rapidjson: Remove unwanted patches

Hongxu Jia (4):
      lksctp-tools: make conpatible to autoconf-2.70
      spice: make conpatible to autoconf-2.70
      freeradius: fix build failure with autoconf 2.71
      ndpi: fix autoconf-2.71 compatibility

Kai Kang (3):
      meta-oe: add crash to NON_MULTILIB_RECIPES
      lxdm: support to change user password
      lxdm: disallow empty new password

Khem Raj (28):
      libssh2: Fix build with autoconf 2.70+
      yasm: Fix build with autotools 2.70+
      boinc-client: Upgrade to 7.16.16 release
      net-snmp: Remove hardcoded paths to build host in net-snmp-config
      keepalived: Upgrade to 2.2.1
      gst-shark: Upgrade to 0.7.2
      hidapi: Backport patch to fix build with autotools 2.70+
      libsrtp: Update to 2.3.0
      libsrtp: Do not invoke automake during configure
      klibc: Upgrade to 2.0.8 release
      geany,geany-plugins: Upgrade to 1.37.x
      libstatgrab: Fix build with autoconf 2.70+
      libmypaint: Fix build with autotools 2.70+
      geany: Fix build with autotools 2.70+
      ubi-utils-klibc: Fix build with clang
      kexecboot: Fix build with clang
      glm: Upgrade to 0.9.9.8
      gimp: Fix build with autoconf-2.70+
      klibc: Fix x86_64 build with binutils 2.36+
      pavucontrol: Depend on libxml-parser-perl-native
      libsrtp: Copy ar-lib from automake
      libmcrypt: Run autoreconf steps manually
      libsdl2-mixer: Fix build with autoconf 2.70+
      openldap: Fix build with autoconf 2.70+
      transmission: Fix build with autotools 2.70+
      boinc-client: Fix build with autotools 2.70+
      iwd: Fix build with ell 0.37
      kernel-selftest: Disable building bpf

Leon Anavi (29):
      python3-gevent: Upgrade 20.9.0 -> 21.1.2
      python3-prompt-toolkit: Upgrade 3.0.11 -> 3.0.14
      python3-urllib3: Upgrade 1.26.2 -> 1.26.3
      python3-pybind11: Upgrade 2.5.0 -> 2.6.2
      python3-xlrd: Upgrade 1.2.0 -> 2.0.1
      python3-croniter: Upgrade 1.0.2 -> 1.0.4
      python3-cantools: Upgrade 36.1.0 -> 36.2.0
      python3-pyzmq: Upgrade 21.0.2 -> 22.0.2
      python3-aiohttp-jinja2: Upgrade 1.2.0 -> 1.4.2
      python3-prctl: Upgrade 1.7 -> 1.8.1
      python3-cmd2: Upgrade 1.4.0 -> 1.5.0
      python3-elementpath: Upgrade 2.1.2 -> 2.1.3
      python3-croniter: Upgrade 1.0.4 -> 1.0.5
      python3-pychromecast: Upgrade 7.7.2 -> 8.0.0
      python3-alembic: Upgrade 1.5.2 -> 1.5.3
      python3-meh: Upgrade 0.49 -> 0.50
      python3-pywbem: Upgrade 1.1.0 -> 1.1.3
      python3-ipython: Upgrade 7.19.0 -> 7.20.0
      python3-croniter: Upgrade 1.0.5 -> 1.0.6
      python3-pywbemtools: Upgrade 0.8.0 -> 0.8.1
      python3-sqlalchemy: Upgrade 1.3.22 -> 1.3.23
      python3-flask-migrate: Upgrade 2.5.3 -> 2.6.0
      python3-javaobj-py3: Upgrade 0.4.1 -> 0.4.2
      python3-pytest-html: Upgrade 2.1.1 -> 3.1.1
      python3-graphviz: Upgrade 0.14.2 -> 0.16
      python3-tqdm: Upgrade 4.51.0 -> 4.56.0
      python3-alembic: Upgrade 1.5.3 -> 1.5.4
      python3-pymongo: Upgrade 3.11.2 -> 3.11.3
      python3-pymisp: Upgrade 2.4.137.1 -> 2.4.137.3

Martin Jansa (6):
      zbar: fix random do_prepare_recipe_sysroot_gettext failures
      zbar: use 4 spaces for indentation
      net-snmp: fix build with dash
      wireguard-module: remove PKG assignment
      graphviz: drop unused SRCREV and outdated comment
      pidgin: upgrade to 2.14.1 and fix autoconf-2.71 compatibility

Mingli Yu (5):
      net-snmp: improve reproducibility
      python3-h5py: improve reproducibility
      opencv: improve reproducibility
      mozjs: improve reproducibility
      netsnmp: remove --with-openssl=PATH configure option

Nicolas Jeker (2):
      network-manager-applet: Build without libteam support
      networkmanager: Add PACKAGECONFIG for ovs

Oleksandr Kravchuk (24):
      iwd: update to 1.11
      cpuid: update to 20201006
      libblockdev: update to 2.25
      nano: update to 5.5
      plymouth: update to 0.9.5
      adcli: update to 0.9.0
      cannelloni: update to 1.0.0
      ipset: update to 7.10
      kronosnet: update 1.20
      nghttp2: update to 1.43.0
      atftp: update to 0.7.4
      cereal: update to 1.3.0
      python3-aws-iot-device-sdk-python: update to 1.4.9
      python3-flask-socketio: update to 4.3.1
      python3-greenstalk: update to 2.0.0
      python3-twitter: update to 3.10.0
      fetchmail: udpate to 6.4.16
      wireshark: update to 3.4.3
      iqrencode: update to 4.1.1
      libconfig add UPSTREAM_CHECK_URI
      ceres-solver: update to 2.0.0
      libgit2: update to 1.1.0
      hexedit: update to 1.5
      ttf-abyssinica: update to 2.000

Oleksiy Obitotskyy (1):
      libhugetlbfs: improve reproducibility

Peter Smith (1):
      python3-ruamel-yaml: add support for native and nativesdk

Qi.Chen@windriver.com (1):
      minifi-cpp: set PSEUDO_CONSIDER_PATHS

Ramon Fried (2):
      fluentbit: fix systemd input plugin
      fluentbit: Fix SIGSEGV caused by using flb_free instead of mk_mem_free

Robert P. J. Day (1):
      correct "RRCOMMENDS" typo in ipset recipe

Ross Burton (2):
      python3-ruamel-yaml: add native and nativesdk class extension
      python3-pykwalify: fix RDEPENDS

Sakib Sajal (2):
      libgpiod: add ptest
      xfce4-session: increase ALTERNATIVE_PRIORITY

Wang Mingyu (1):
      dnsmasq: upgrade 2.82 -> 2.84

Yi Fan Yu (1):
      postgresql: bypass autoconf version check

Yi Zhao (1):
      openipmi: upgrade 2.0.30 -> 2.0.31

Zang Ruochen (7):
      libfastjson: upgrade 0.99.8 -> 0.99.9
      libio-pty-perl: upgrade 1.15 -> 1.16
      libjson-perl: upgrade 4.02000 -> 4.03000
      libmbim: upgrade 1.24.4 -> 1.24.6
      sanlock: upgrade 3.8.2 -> 3.8.3
      python3-matplotlib: upgrade 3.3.2 -> 3.3.4
      python3-pytz: upgrade 2020.1 -> 2021.1

akuster (2):
      enca: Fix SRC_URI
      meta-oe/README: add Ubuntu prerequisite information

zangrc (6):
      libtalloc: upgrade 2.3.1 -> 2.3.2
      gensio: upgrade 2.2.0 -> 2.2.3
      zchunk: upgrade 1.1.8 -> 1.1.9
      libnet-ldap-perl: upgrade 0.67 -> 0.68
      librole-tiny-perl: upgrade 2.002003 -> 2.002004
      cpprest: upgrade 2.10.17 -> 2.10.18

zhengruoqin (4):
      open-isns: upgrade 0.99 -> 0.101
      gd: upgrade 2.3.0 -> 2.3.1
      live555: upgrade 20210101 -> 20210129
      python3-periphery: upgrade 2.1.0 -> 2.2.0

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: I65a2b942fbfbc262976e6417d7481ae3fc82cb17
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0007-greeter.c-support-to-update-expired-password.patch b/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0007-greeter.c-support-to-update-expired-password.patch
new file mode 100644
index 0000000..84a9fae
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0007-greeter.c-support-to-update-expired-password.patch
@@ -0,0 +1,180 @@
+From bae6a2b3a2232abd16a8d8558dda542d4970f1bb Mon Sep 17 00:00:00 2001
+From: Kai Kang <kai.kang@windriver.com>
+Date: Tue, 12 Jan 2021 09:23:05 +0800
+Subject: [PATCH 7/8] greeter.c: support to update expired password
+
+Update greeter to work with ui to handle expired password. It checks
+whether password is expired after input user and password. If expired,
+force user to update password immediately. It allows 3 times to try. If
+exceeds, reset to input user.
+
+Upstream-Status: Submitted [https://sourceforge.net/p/lxdm/code/merge-requests/1/]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ src/greeter.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 81 insertions(+), 2 deletions(-)
+
+diff --git a/src/greeter.c b/src/greeter.c
+index f100c72..804fca0 100644
+--- a/src/greeter.c
++++ b/src/greeter.c
+@@ -77,6 +77,8 @@ static GtkWidget *lang_menu;
+ 
+ static char* user = NULL;
+ static char* pass = NULL;
++static char* new_pass = NULL;
++static gboolean pass_expired = FALSE;
+ 
+ static char* ui_file = NULL;
+ static char *ui_nobody = NULL;
+@@ -167,10 +169,19 @@ static void switch_to_input_passwd(void)
+ 		else
+ 			gtk_widget_hide(user_list);
+ 	}
+-	gtk_label_set_text( GTK_LABEL(prompt), _("Password:") );
++	if (pass_expired) {
++		if (!new_pass) {
++			gtk_label_set_text(GTK_LABEL(prompt), _("New password:"));
++		} else {
++			gtk_label_set_text(GTK_LABEL(prompt), _("Retype new password:"));
++		}
++	} else {
++		gtk_label_set_text( GTK_LABEL(prompt), _("Password:") );
++	}
+ 	gtk_entry_set_text(GTK_ENTRY(login_entry), "");
+ 	gtk_entry_set_visibility(GTK_ENTRY(login_entry), FALSE);
+ 	gtk_widget_show(login_entry);
++	gtk_widget_show(prompt);
+ 	gtk_widget_grab_focus(login_entry);
+ }
+ 
+@@ -189,6 +200,8 @@ static void try_login_user(const char *user)
+ 
+ static void on_entry_activate(GtkEntry* entry)
+ {
++	static int count = 0;
++
+ 	char* tmp;
+ 	if( !user )
+ 	{
+@@ -217,6 +230,46 @@ static void on_entry_activate(GtkEntry* entry)
+ 	}
+ 	else
+ 	{
++		if (pass_expired) {
++			if (!new_pass) {
++				new_pass = g_strdup(gtk_entry_get_text(entry));
++				switch_to_input_passwd();
++			} else {
++				tmp = g_strdup(gtk_entry_get_text(entry));
++				if (strcmp(new_pass, tmp)) {
++					g_free(new_pass);
++					new_pass = NULL;
++					// if new passwords not match, retry for 3 times at most
++					if (++count < 3) {
++						switch_to_input_passwd();
++					} else {
++						count = 0;
++						pass_expired = FALSE;
++						switch_to_input_user();
++					}
++				} else if (!strcmp(pass, g_base64_encode((guchar*)new_pass, strlen(new_pass) + 1))) {
++					// if new password is same as old one
++					g_free(new_pass);
++					new_pass = NULL;
++					if (++count < 3) {
++						switch_to_input_passwd();
++					} else {
++						count = 0;
++						pass_expired = FALSE;
++						switch_to_input_user();
++					}
++				} else {
++					char *session_exec=get_session_exec();
++					char *session_lang=get_session_lang();
++
++					printf("update-new-password user=%s newpass=%s session=%s lang=%s\n",
++						user, new_pass, session_exec, session_lang);
++				}
++			}
++
++			return ;
++		}
++
+ 		char *session_exec=get_session_exec();
+ 		char *session_lang=get_session_lang();
+ 		
+@@ -227,6 +280,7 @@ static void on_entry_activate(GtkEntry* entry)
+ 		printf("login user=%s pass=%s session=%s lang=%s\n",
+ 			user, pass, session_exec, session_lang);
+ 
++#if 0
+ 		/* password check failed */
+ 		g_free(user);
+ 		user = NULL;
+@@ -241,6 +295,7 @@ static void on_entry_activate(GtkEntry* entry)
+ 		gtk_label_set_text( GTK_LABEL(prompt), _("User:") );
+ 		gtk_entry_set_text(GTK_ENTRY(entry), "");
+ 		gtk_entry_set_visibility(GTK_ENTRY(entry), TRUE);
++#endif
+ 	}
+ }
+ 
+@@ -1091,8 +1146,12 @@ static void on_screen_size_changed(GdkScreen *screen,GtkWidget *win)
+ 
+ static gint login_entry_on_key_press (GtkWidget *widget,GdkEventKey *event)
+ {
+-	if(event->keyval == GDK_Escape)
++	if(event->keyval == GDK_Escape) {
++		g_free(new_pass);
++		new_pass = NULL;
++		pass_expired = FALSE;
+ 		switch_to_input_user();
++	}
+ 	return FALSE;
+ }		     
+ 
+@@ -1285,8 +1344,10 @@ static void create_win()
+ 
+ static gboolean on_lxdm_command(GIOChannel *source, GIOCondition condition, gpointer data)
+ {
++
+ 	GIOStatus ret;
+ 	char *str;
++	static int count = 0;
+ 
+ 	if( !(G_IO_IN & condition) )
+ 		return FALSE;
+@@ -1300,10 +1361,28 @@ static gboolean on_lxdm_command(GIOChannel *source, GIOCondition condition, gpoi
+ 	{
+ 		switch_to_input_user();
+ 	}
++	else if (!strncmp(str, "password-expire", 15))
++	{
++		pass_expired = TRUE;
++		switch_to_input_passwd();
++	}
+ 	else if( !strncmp(str, "password", 8))
+ 	{
+ 		switch_to_input_passwd();
+ 	}
++	else if (!strncmp(str, "invalid-new-password", 20))
++	{
++		g_free(new_pass);
++		new_pass = NULL;
++
++		if (count++ < 3) {
++			switch_to_input_passwd();
++		} else {
++			count = 0;
++			pass_expired = FALSE;
++			switch_to_input_user();
++		}
++	}
+ 	g_free(str);
+ 	return TRUE;
+ }
+-- 
+2.25.1
+