wok-next rev 21037
Small updates.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Tue Nov 06 16:35:54 2018 +0200 (2018-11-06) |
parents | 8459b1de4897 |
children | 21ab7a6eb192 |
files | alsa-utils/stuff/overrides dmenu/receipt ebtables/receipt ebtables/stuff/overrides ed/receipt elfutils/receipt ettercap/.icon.png ettercap/receipt ettercap/stuff/patches/0001-First-draft-of-openssl-1.1-compatibility-layer.patch ettercap/stuff/patches/CVE-2017-6430.patch ettercap/stuff/patches/CVE-2017-8366.patch ettercap/stuff/patches/series eudev/receipt |
line diff
1.1 --- a/alsa-utils/stuff/overrides Tue Nov 06 14:32:27 2018 +0200 1.2 +++ b/alsa-utils/stuff/overrides Tue Nov 06 16:35:54 2018 +0200 1.3 @@ -1,1 +1,1 @@ 1.4 -41777 /var/tmp/ 1.5 +1777 /var/tmp/
2.1 --- a/dmenu/receipt Tue Nov 06 14:32:27 2018 +0200 2.2 +++ b/dmenu/receipt Tue Nov 06 16:35:54 2018 +0200 2.3 @@ -1,26 +1,25 @@ 2.4 # SliTaz package receipt v2. 2.5 2.6 PACKAGE="dmenu" 2.7 -VERSION="4.5" 2.8 -CATEGORY="misc" 2.9 +VERSION="4.8" 2.10 +CATEGORY="x-window" 2.11 SHORT_DESC="Dynamic menu lauch bar" 2.12 -MAINTAINER="devel@slitaz.org" 2.13 +MAINTAINER="al.bobylev@gmail.com" 2.14 LICENSE="MIT" 2.15 WEB_SITE="http://tools.suckless.org/dmenu/" 2.16 2.17 TARBALL="$PACKAGE-$VERSION.tar.gz" 2.18 WGET_URL="http://dl.suckless.org/tools/$TARBALL" 2.19 2.20 -BUILD_DEPENDS="xorg-libX11-dev xorg-libXinerama-dev" 2.21 +BUILD_DEPENDS="xorg-libX11-dev xorg-libXft-dev xorg-libXinerama-dev" 2.22 2.23 compile_rules() { 2.24 - make CC=${HOST_SYSTEM}-gcc && 2.25 - make DESTDIR=$install install 2.26 + make && 2.27 + make PREFIX=/usr install 2.28 } 2.29 2.30 genpkg_rules() { 2.31 - mkdir -p $fs/usr/bin 2.32 - cp -a $install/usr/local/bin/* $fs/usr/bin/ 2.33 - DEPENDS="xorg-libX11 xorg-libXau xorg-libXdmcp xorg-libXext xorg-libXinerama" 2.34 + copy @std 2.35 + DEPENDS="fontconfig xorg-libX11 xorg-libXft xorg-libXinerama" 2.36 TAGS="launchbar" 2.37 }
3.1 --- a/ebtables/receipt Tue Nov 06 14:32:27 2018 +0200 3.2 +++ b/ebtables/receipt Tue Nov 06 16:35:54 2018 +0200 3.3 @@ -1,29 +1,24 @@ 3.4 # SliTaz package receipt v2. 3.5 3.6 PACKAGE="ebtables" 3.7 -VERSION="v2.0.10-4" 3.8 +VERSION="2.0.10-4" 3.9 CATEGORY="network" 3.10 SHORT_DESC="Filtering tool for a Linux-based bridging firewall" 3.11 MAINTAINER="pascal.bellard@slitaz.org" 3.12 LICENSE="GPL2" 3.13 WEB_SITE="http://ebtables.netfilter.org/" 3.14 3.15 -TARBALL="$PACKAGE-$VERSION.tar.gz" 3.16 +TARBALL="$PACKAGE-v$VERSION.tar.gz" 3.17 WGET_URL="$SF_MIRROR/$PACKAGE/$TARBALL" 3.18 3.19 compile_rules() { 3.20 - sed -i 's/), ret = 0/), ret = ret - ret/' communication.c 3.21 - mkdir -p $install/etc/rc.d/init.d/ $install/etc/sysconfig/ 3.22 + sed -i 's|/usr/local|/usr|; s|/man|/share/man|; s|-Wall -Wunused -Werror||' Makefile 3.23 3.24 make && 3.25 - make DESTDIR=$install -j1 install 3.26 + make -j1 DESTDIR=$install install 3.27 } 3.28 3.29 genpkg_rules() { 3.30 - mkdir -p $fs/usr $fs/etc 3.31 - cp -a $install/etc/ethertypes $fs/etc 3.32 - cp -a $install/etc/sysconfig $fs/etc 3.33 - cp -a $install/usr/local/sbin $fs/usr 3.34 - cp -a $install/usr/lib $fs/usr 3.35 + copy @std 3.36 TAGS="firewall" 3.37 }
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 4.2 +++ b/ebtables/stuff/overrides Tue Nov 06 16:35:54 2018 +0200 4.3 @@ -0,0 +1,1 @@ 4.4 +0600 /etc/sysconfig/ebtables-config
5.1 --- a/ed/receipt Tue Nov 06 14:32:27 2018 +0200 5.2 +++ b/ed/receipt Tue Nov 06 16:35:54 2018 +0200 5.3 @@ -1,23 +1,24 @@ 5.4 -# SliTaz package receipt. 5.5 +# SliTaz package receipt v2. 5.6 5.7 PACKAGE="ed" 5.8 -VERSION="1.9" 5.9 +VERSION="1.14.2" 5.10 CATEGORY="development" 5.11 -SHORT_DESC="A line-oriented text editor" 5.12 +SHORT_DESC="Line-oriented text editor" 5.13 MAINTAINER="pascal.bellard@slitaz.org" 5.14 LICENSE="GPL3" 5.15 -WEB_SITE="http://www.gnu.org/software/ed/" 5.16 +WEB_SITE="https://www.gnu.org/software/ed/" 5.17 5.18 -TARBALL="$PACKAGE-$VERSION.tar.gz" 5.19 +TARBALL="$PACKAGE-$VERSION.tar.lz" 5.20 WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL" 5.21 5.22 +BUILD_DEPENDS="lzip" 5.23 + 5.24 compile_rules() { 5.25 ./configure --prefix=/usr && 5.26 - make CC=${HOST_SYSTEM}-gcc && 5.27 + make && 5.28 make install 5.29 } 5.30 5.31 genpkg_rules() { 5.32 - mkdir $fs/usr 5.33 - cp -a $install/usr/bin $fs/usr 5.34 + copy @std 5.35 }
6.1 --- a/elfutils/receipt Tue Nov 06 14:32:27 2018 +0200 6.2 +++ b/elfutils/receipt Tue Nov 06 16:35:54 2018 +0200 6.3 @@ -1,7 +1,7 @@ 6.4 # SliTaz package receipt v2. 6.5 6.6 PACKAGE="elfutils" 6.7 -VERSION="0.173" 6.8 +VERSION="0.174" 6.9 CATEGORY="development" 6.10 SHORT_DESC="ELF object file access library" 6.11 MAINTAINER="pascal.bellard@slitaz.org" 6.12 @@ -10,7 +10,8 @@ 6.13 6.14 TARBALL="$PACKAGE-$VERSION.tar.bz2" 6.15 WGET_URL="https://sourceware.org/elfutils/ftp/$VERSION/$TARBALL" 6.16 -TARBALL_MD5="35decb1ebfb90d565e4c411bee4185cc" 6.17 +TARBALL_MD5="48bec24c0c8b2c16820326956dff9378" 6.18 +TARBALL_SHA512="696708309c2a9a076099748809ecdc0490f4a8a842b2efc1aae0d746e7c5a8b203743f5626739eff837216b0c052696516b2821f5d3cc3f2eef86597c96d42df" 6.19 6.20 BUILD_DEPENDS="gettext zlib-dev bzip2-dev xz-dev" 6.21 SPLIT="$PACKAGE-dev"
7.1 Binary file ettercap/.icon.png has changed
8.1 --- a/ettercap/receipt Tue Nov 06 14:32:27 2018 +0200 8.2 +++ b/ettercap/receipt Tue Nov 06 16:35:54 2018 +0200 8.3 @@ -1,32 +1,54 @@ 8.4 # SliTaz package receipt v2. 8.5 8.6 PACKAGE="ettercap" 8.7 -VERSION="NG-0.7.3" 8.8 +VERSION="0.8.2" 8.9 CATEGORY="network" 8.10 -SHORT_DESC="Suite for 'man in the middle' attacks on LAN" 8.11 -MAINTAINER="claudinei@slitaz.org" 8.12 +SHORT_DESC="Multipurpose Network sniffer, analyser, interceptor, logger" 8.13 +MAINTAINER="al.bobylev@gmail.com" 8.14 LICENSE="GPL2" 8.15 -WEB_SITE="http://ettercap.sourceforge.net/" 8.16 +WEB_SITE="http://www.ettercap-project.org/" 8.17 8.18 TARBALL="$PACKAGE-$VERSION.tar.gz" 8.19 -WGET_URL="$SF_MIRROR/$PACKAGE/$TARBALL" 8.20 +WGET_URL="https://github.com/Ettercap/ettercap/releases/download/v$VERSION/$TARBALL" 8.21 +TARBALL_SHA1="04f50925a5f3b2555371075a048ab7bfe3892976" 8.22 8.23 -BUILD_DEPENDS="libpthread-stubs libpcap libpcap-dev libnet-dev libtool file \ 8.24 -zlib-dev" 8.25 +BUILD_DEPENDS="cmake openssl-dev zlib-dev curl-dev libpcap-dev libnet-dev \ 8.26 +gtk2-dev" 8.27 +SPLIT="$PACKAGE-gtk:gtk" 8.28 8.29 compile_rules() { 8.30 - sed -i 's/ettercap_LDFLAGS = -export-dynamic @EC_LIBS@/ettercap_LDADD += @EC_LIBS@\nettercap_LDFLAGS = -export-dynamic/' src/Makefile.* 8.31 + case $SET in 8.32 + '') SET_ARGS='-DENABLE_GTK=OFF';; 8.33 + gtk) SET_ARGS='-DENABLE_GTK=ON';; 8.34 + esac 8.35 8.36 - ./configure \ 8.37 - --enable-plugins \ 8.38 - --disable-gtk \ 8.39 - $CONFIGURE_ARGS && 8.40 - fix libtool && 8.41 + mkdir build 8.42 + cd build 8.43 + cmake \ 8.44 + -DCMAKE_INSTALL_PREFIX=/usr \ 8.45 + $SET_ARGS \ 8.46 + .. && 8.47 make && 8.48 - make DESTDIR=$install install 8.49 + make install 8.50 } 8.51 8.52 genpkg_rules() { 8.53 - copy @std 8.54 - DEPENDS="libpthread-stubs libpcap libnet libltdl zlib" 8.55 + case $PACKAGE in 8.56 + ettercap) 8.57 + copy @std 8.58 + find $fs \( -name '*.png' -o -name '*.svg' \) -delete 8.59 + DEPENDS="libcurl libnet libpcap libpcre ncurses ncurses-libform \ 8.60 + ncurses-libmenu ncurses-libpanel openssl zlib" 8.61 + CAT="network|console flavor" 8.62 + CONFIG_FILES="/etc/ettercap/etter.conf" 8.63 + ;; 8.64 + *-gtk) 8.65 + copy @std 8.66 + DEPENDS="glib gtk2 libcurl libnet libpcap libpcre ncurses \ 8.67 + ncurses-libform ncurses-libmenu ncurses-libpanel openssl zlib" 8.68 + CAT="network|GTK flavor" 8.69 + PROVIDE="ettercap" 8.70 + CONFIG_FILES="/etc/ettercap/etter.conf" 8.71 + ;; 8.72 + esac 8.73 }
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 9.2 +++ b/ettercap/stuff/patches/0001-First-draft-of-openssl-1.1-compatibility-layer.patch Tue Nov 06 16:35:54 2018 +0200 9.3 @@ -0,0 +1,257 @@ 9.4 +From f0d63b27c82df2ad5f7ada6310727d841b43fbcc Mon Sep 17 00:00:00 2001 9.5 +From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it> 9.6 +Date: Mon, 27 Jun 2016 12:41:33 +0200 9.7 +Subject: [PATCH] First draft of openssl 1.1 compatibility layer (from 9.8 + https://github.com/curl/curl/commit/cfe16c22d7891a1f65ea8cd4c5352504a2afbddc) 9.9 + Closes: #739 9.10 + 9.11 +--- 9.12 + src/dissectors/ec_ssh.c | 93 ++++++++++++++++++++++++++++++++++++++++++++++++- 9.13 + src/ec_sslwrap.c | 14 ++++++++ 9.14 + 2 files changed, 106 insertions(+), 1 deletion(-) 9.15 + 9.16 +diff --git a/src/dissectors/ec_ssh.c b/src/dissectors/ec_ssh.c 9.17 +index f89200dc..26c86491 100644 9.18 +--- a/src/dissectors/ec_ssh.c 9.19 ++++ b/src/dissectors/ec_ssh.c 9.20 +@@ -36,6 +36,10 @@ 9.21 + #include <openssl/md5.h> 9.22 + #include <zlib.h> 9.23 + 9.24 ++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) 9.25 ++#define HAVE_OPAQUE_RSA_DSA_DH 1 /* since 1.1.0 -pre5 */ 9.26 ++#endif 9.27 ++ 9.28 + #define SMSG_PUBLIC_KEY 2 9.29 + #define CMSG_SESSION_KEY 3 9.30 + #define CMSG_USER 4 9.31 +@@ -138,6 +142,11 @@ FUNC_DECODER(dissector_ssh) 9.32 + char tmp[MAX_ASCII_ADDR_LEN]; 9.33 + u_int32 ssh_len, ssh_mod; 9.34 + u_char ssh_packet_type, *ptr, *key_to_put; 9.35 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.36 ++ BIGNUM *h_n, *s_n, *m_h_n, *m_s_n; 9.37 ++ BIGNUM *h_e, *s_e, *m_h_e, *m_s_e; 9.38 ++ BIGNUM *h_d, *s_d, *m_h_d, *m_s_d; 9.39 ++#endif 9.40 + 9.41 + /* don't complain about unused var */ 9.42 + (void) DECODE_DATA; 9.43 +@@ -383,12 +392,25 @@ FUNC_DECODER(dissector_ssh) 9.44 + if (session_data->ptrkey == NULL) { 9.45 + /* Initialize RSA key structures (other fileds are set to 0) */ 9.46 + session_data->serverkey = RSA_new(); 9.47 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.48 ++ s_n = BN_new(); 9.49 ++ s_e = BN_new(); 9.50 ++ RSA_set0_key(session_data->serverkey, s_n, s_e, s_d); 9.51 ++#else 9.52 + session_data->serverkey->n = BN_new(); 9.53 + session_data->serverkey->e = BN_new(); 9.54 ++#endif 9.55 + 9.56 + session_data->hostkey = RSA_new(); 9.57 ++ 9.58 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.59 ++ h_n = BN_new(); 9.60 ++ h_e = BN_new(); 9.61 ++ RSA_set0_key(session_data->hostkey, h_n, h_e, h_d); 9.62 ++#else 9.63 + session_data->hostkey->n = BN_new(); 9.64 + session_data->hostkey->e = BN_new(); 9.65 ++#endif 9.66 + 9.67 + /* Get the RSA Key from the packet */ 9.68 + NS_GET32(server_mod,ptr); 9.69 +@@ -396,19 +418,37 @@ FUNC_DECODER(dissector_ssh) 9.70 + DEBUG_MSG("Dissector_ssh Bougs Server_Mod"); 9.71 + return NULL; 9.72 + } 9.73 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.74 ++ RSA_get0_key(session_data->serverkey, &s_n, &s_e, &s_d); 9.75 ++ get_bn(s_e, &ptr); 9.76 ++ get_bn(s_n, &ptr); 9.77 ++#else 9.78 + get_bn(session_data->serverkey->e, &ptr); 9.79 + get_bn(session_data->serverkey->n, &ptr); 9.80 ++#endif 9.81 + 9.82 + NS_GET32(host_mod,ptr); 9.83 + if (ptr + (host_mod/8) > PACKET->DATA.data + PACKET->DATA.len) { 9.84 + DEBUG_MSG("Dissector_ssh Bougs Host_Mod"); 9.85 + return NULL; 9.86 + } 9.87 ++ 9.88 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.89 ++ RSA_get0_key(session_data->hostkey, &h_n, &h_e, &h_d); 9.90 ++ get_bn(h_e, &ptr); 9.91 ++ get_bn(h_n, &ptr); 9.92 ++#else 9.93 + get_bn(session_data->hostkey->e, &ptr); 9.94 + get_bn(session_data->hostkey->n, &ptr); 9.95 ++#endif 9.96 + 9.97 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.98 ++ server_exp = BN_get_word(s_e); 9.99 ++ host_exp = BN_get_word(h_e); 9.100 ++#else 9.101 + server_exp = *(session_data->serverkey->e->d); 9.102 + host_exp = *(session_data->hostkey->e->d); 9.103 ++#endif 9.104 + 9.105 + /* Check if we already have a suitable RSA key to substitute */ 9.106 + index_ssl = &ssh_conn_key; 9.107 +@@ -424,7 +464,7 @@ FUNC_DECODER(dissector_ssh) 9.108 + SAFE_CALLOC(*index_ssl, 1, sizeof(ssh_my_key)); 9.109 + 9.110 + /* Generate the new key */ 9.111 +- (*index_ssl)->myserverkey = (RSA *)RSA_generate_key(server_mod, server_exp, NULL, NULL); 9.112 ++ (*index_ssl)->myserverkey = (RSA *)RSA_generate_key_ex(server_mod, server_exp, NULL, NULL); 9.113 + (*index_ssl)->myhostkey = (RSA *)RSA_generate_key(host_mod, host_exp, NULL, NULL); 9.114 + (*index_ssl)->server_mod = server_mod; 9.115 + (*index_ssl)->host_mod = host_mod; 9.116 +@@ -443,11 +483,25 @@ FUNC_DECODER(dissector_ssh) 9.117 + 9.118 + /* Put our RSA key in the packet */ 9.119 + key_to_put+=4; 9.120 ++ 9.121 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.122 ++ RSA_get0_key(session_data->ptrkey->myserverkey, &m_s_n, &m_s_e, &m_s_d); 9.123 ++ put_bn(m_s_e, &key_to_put); 9.124 ++ put_bn(m_s_n, &key_to_put); 9.125 ++#else 9.126 + put_bn(session_data->ptrkey->myserverkey->e, &key_to_put); 9.127 + put_bn(session_data->ptrkey->myserverkey->n, &key_to_put); 9.128 ++#endif 9.129 + key_to_put+=4; 9.130 ++ 9.131 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.132 ++ RSA_get0_key(session_data->ptrkey->myhostkey, &m_h_n, &m_h_e, &m_h_d); 9.133 ++ put_bn(m_h_e, &key_to_put); 9.134 ++ put_bn(m_h_n, &key_to_put); 9.135 ++#else 9.136 + put_bn(session_data->ptrkey->myhostkey->e, &key_to_put); 9.137 + put_bn(session_data->ptrkey->myhostkey->n, &key_to_put); 9.138 ++#endif 9.139 + 9.140 + /* Recalculate SSH crc */ 9.141 + *(u_int32 *)(PACKET->DATA.data + PACKET->DATA.len - 4) = htonl(CRC_checksum(PACKET->DATA.data+4, PACKET->DATA.len-8, CRC_INIT_ZERO)); 9.142 +@@ -482,19 +536,34 @@ FUNC_DECODER(dissector_ssh) 9.143 + key_to_put = ptr; 9.144 + 9.145 + /* Calculate real session id and our fake session id */ 9.146 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.147 ++ temp_session_id = ssh_session_id(cookie, h_n, s_n); 9.148 ++#else 9.149 + temp_session_id = ssh_session_id(cookie, session_data->hostkey->n, session_data->serverkey->n); 9.150 ++#endif 9.151 + if (temp_session_id) 9.152 + memcpy(session_id1, temp_session_id, 16); 9.153 ++ 9.154 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.155 ++ temp_session_id=ssh_session_id(cookie, m_h_n, m_s_n); 9.156 ++#else 9.157 + temp_session_id=ssh_session_id(cookie, session_data->ptrkey->myhostkey->n, session_data->ptrkey->myserverkey->n); 9.158 ++#endif 9.159 ++ 9.160 + if (temp_session_id) 9.161 + memcpy(session_id2, temp_session_id, 16); 9.162 + 9.163 + /* Get the session key */ 9.164 + enckey = BN_new(); 9.165 ++ 9.166 + get_bn(enckey, &ptr); 9.167 + 9.168 + /* Decrypt session key */ 9.169 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.170 ++ if (BN_cmp(m_s_n, m_h_n) > 0) { 9.171 ++#else 9.172 + if (BN_cmp(session_data->ptrkey->myserverkey->n, session_data->ptrkey->myhostkey->n) > 0) { 9.173 ++#endif 9.174 + rsa_private_decrypt(enckey, enckey, session_data->ptrkey->myserverkey); 9.175 + rsa_private_decrypt(enckey, enckey, session_data->ptrkey->myhostkey); 9.176 + } else { 9.177 +@@ -534,7 +603,11 @@ FUNC_DECODER(dissector_ssh) 9.178 + BN_add_word(bn, sesskey[i]); 9.179 + } 9.180 + 9.181 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.182 ++ if (BN_cmp(s_n, h_n) < 0) { 9.183 ++#else 9.184 + if (BN_cmp(session_data->serverkey->n, session_data->hostkey->n) < 0) { 9.185 ++#endif 9.186 + rsa_public_encrypt(bn, bn, session_data->serverkey); 9.187 + rsa_public_encrypt(bn, bn, session_data->hostkey); 9.188 + } else { 9.189 +@@ -716,7 +789,16 @@ static void rsa_public_encrypt(BIGNUM *out, BIGNUM *in, RSA *key) 9.190 + u_char *inbuf, *outbuf; 9.191 + int32 len, ilen, olen; 9.192 + 9.193 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.194 ++ BIGNUM *n; 9.195 ++ BIGNUM *e; 9.196 ++ BIGNUM *d; 9.197 ++ RSA_get0_key(key, &n, &e, &d); 9.198 ++ olen = BN_num_bytes(n); 9.199 ++#else 9.200 + olen = BN_num_bytes(key->n); 9.201 ++#endif 9.202 ++ 9.203 + outbuf = malloc(olen); 9.204 + if (outbuf == NULL) /* oops, couldn't allocate memory */ 9.205 + return; 9.206 +@@ -744,7 +826,16 @@ static void rsa_private_decrypt(BIGNUM *out, BIGNUM *in, RSA *key) 9.207 + u_char *inbuf, *outbuf; 9.208 + int32 len, ilen, olen; 9.209 + 9.210 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.211 ++ BIGNUM *n; 9.212 ++ BIGNUM *e; 9.213 ++ BIGNUM *d; 9.214 ++ RSA_get0_key(key, &n, &e, &d); 9.215 ++ olen = BN_num_bytes(n); 9.216 ++#else 9.217 + olen = BN_num_bytes(key->n); 9.218 ++#endif 9.219 ++ 9.220 + outbuf = malloc(olen); 9.221 + if (outbuf == NULL) /* oops, couldn't allocate memory */ 9.222 + return; 9.223 +diff --git a/src/ec_sslwrap.c b/src/ec_sslwrap.c 9.224 +index c6c74421..6369d251 100644 9.225 +--- a/src/ec_sslwrap.c 9.226 ++++ b/src/ec_sslwrap.c 9.227 +@@ -56,6 +56,10 @@ 9.228 + #define OPENSSL_NO_KRB5 1 9.229 + #include <openssl/ssl.h> 9.230 + 9.231 ++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) 9.232 ++#define HAVE_OPAQUE_RSA_DSA_DH 1 /* since 1.1.0 -pre5 */ 9.233 ++#endif 9.234 ++ 9.235 + #define BREAK_ON_ERROR(x,y,z) do { \ 9.236 + if (x == -E_INVALID) { \ 9.237 + SAFE_FREE(z.DATA.disp_data); \ 9.238 +@@ -1102,9 +1106,19 @@ static X509 *sslw_create_selfsigned(X509 *server_cert) 9.239 + index = X509_get_ext_by_NID(server_cert, NID_authority_key_identifier, -1); 9.240 + if (index >=0) { 9.241 + ext = X509_get_ext(server_cert, index); 9.242 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.243 ++ ASN1_OCTET_STRING* data; 9.244 ++ data = X509_EXTENSION_get_data (ext); 9.245 ++#endif 9.246 + if (ext) { 9.247 ++#ifdef HAVE_OPAQUE_RSA_DSA_DH 9.248 ++ data->data[7] = 0xe7; 9.249 ++ data->data[8] = 0x7e; 9.250 ++ X509_EXTENSION_set_data (ext, data); 9.251 ++#else 9.252 + ext->value->data[7] = 0xe7; 9.253 + ext->value->data[8] = 0x7e; 9.254 ++#endif 9.255 + X509_add_ext(out_cert, ext, -1); 9.256 + } 9.257 + } 9.258 +-- 9.259 +2.11.1 9.260 +
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 10.2 +++ b/ettercap/stuff/patches/CVE-2017-6430.patch Tue Nov 06 16:35:54 2018 +0200 10.3 @@ -0,0 +1,68 @@ 10.4 +From 4ad7f85dc01202e363659aa473c99470b3f4e1f4 Mon Sep 17 00:00:00 2001 10.5 +From: Gianfranco Costamagna <costamagnagianfranco@yahoo.it> 10.6 +Date: Tue, 7 Mar 2017 22:05:31 +0100 10.7 +Subject: [PATCH] Fix issue #782 10.8 + 10.9 +--- 10.10 + utils/etterfilter/ef_compiler.c | 4 +++- 10.11 + utils/etterfilter/ef_main.c | 10 +++++++--- 10.12 + utils/etterfilter/ef_output.c | 3 +++ 10.13 + 3 files changed, 13 insertions(+), 4 deletions(-) 10.14 + 10.15 +diff --git a/utils/etterfilter/ef_compiler.c b/utils/etterfilter/ef_compiler.c 10.16 +index db876636e..ddb73bd30 100644 10.17 +--- a/utils/etterfilter/ef_compiler.c 10.18 ++++ b/utils/etterfilter/ef_compiler.c 10.19 +@@ -239,7 +239,9 @@ size_t compile_tree(struct filter_op **fop) 10.20 + struct filter_op *array = NULL; 10.21 + struct unfold_elm *ue; 10.22 + 10.23 +- BUG_IF(tree_root == NULL); 10.24 ++ // invalid file 10.25 ++ if (tree_root == NULL) 10.26 ++ return 0; 10.27 + 10.28 + fprintf(stdout, " Unfolding the meta-tree "); 10.29 + fflush(stdout); 10.30 +diff --git a/utils/etterfilter/ef_main.c b/utils/etterfilter/ef_main.c 10.31 +index ae4591344..431084b91 100644 10.32 +--- a/utils/etterfilter/ef_main.c 10.33 ++++ b/utils/etterfilter/ef_main.c 10.34 +@@ -39,7 +39,7 @@ struct globals *gbls; 10.35 + 10.36 + int main(int argc, char *argv[]) 10.37 + { 10.38 +- 10.39 ++ int ret_value = 0; 10.40 + globals_alloc(); 10.41 + /* etterfilter copyright */ 10.42 + fprintf(stdout, "\n" EC_COLOR_BOLD "%s %s" EC_COLOR_END " copyright %s %s\n\n", 10.43 +@@ -84,8 +84,12 @@ int main(int argc, char *argv[]) 10.44 + fprintf(stdout, "\n\nThe script contains errors...\n\n"); 10.45 + 10.46 + /* write to file */ 10.47 +- if (write_output() != E_SUCCESS) 10.48 +- FATAL_ERROR("Cannot write output file (%s)", GBL_OPTIONS->output_file); 10.49 ++ ret_value = write_output(); 10.50 ++ if (ret_value == -E_NOTHANDLED) 10.51 ++ FATAL_ERROR("Cannot write output file (%s): the filter is not correctly handled.", GBL_OPTIONS->output_file); 10.52 ++ else if (ret_value == -E_INVALID) 10.53 ++ FATAL_ERROR("Cannot write output file (%s): the filter format is not correct. ", GBL_OPTIONS->output_file); 10.54 ++ 10.55 + globals_free(); 10.56 + return 0; 10.57 + } 10.58 +diff --git a/utils/etterfilter/ef_output.c b/utils/etterfilter/ef_output.c 10.59 +index 5ae591904..fcf19f010 100644 10.60 +--- a/utils/etterfilter/ef_output.c 10.61 ++++ b/utils/etterfilter/ef_output.c 10.62 +@@ -51,6 +51,9 @@ int write_output(void) 10.63 + if (fop == NULL) 10.64 + return -E_NOTHANDLED; 10.65 + 10.66 ++ if (ninst == 0) 10.67 ++ return -E_INVALID; 10.68 ++ 10.69 + /* create the file */ 10.70 + fd = open(GBL_OPTIONS->output_file, O_CREAT | O_RDWR | O_TRUNC | O_BINARY, 0644); 10.71 + ON_ERROR(fd, -1, "Can't create file %s", GBL_OPTIONS->output_file);
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 11.2 +++ b/ettercap/stuff/patches/CVE-2017-8366.patch Tue Nov 06 16:35:54 2018 +0200 11.3 @@ -0,0 +1,258 @@ 11.4 +From d14d2558da14a33abf7baab28957488a75d16af1 Mon Sep 17 00:00:00 2001 11.5 +From: Alexander Koeppe <format_c@online.de> 11.6 +Date: Thu, 1 Jun 2017 08:56:23 +0200 11.7 +Subject: [PATCH 1/4] Add ASAN compiler flags in DEBUG build type 11.8 + 11.9 +--- 11.10 + CMakeLists.txt | 2 +- 11.11 + 1 file changed, 1 insertion(+), 1 deletion(-) 11.12 + 11.13 +diff --git a/CMakeLists.txt b/CMakeLists.txt 11.14 +index 90050590f..8e823669c 100644 11.15 +--- a/CMakeLists.txt 11.16 ++++ b/CMakeLists.txt 11.17 +@@ -126,7 +126,7 @@ if(NOT DISABLE_RPATH) 11.18 + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) 11.19 + set(CMAKE_MACOSX_RPATH 1) 11.20 + endif(NOT DISABLE_RPATH) 11.21 +-set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls" CACHE STRING "" FORCE) 11.22 ++set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE) 11.23 + set(CMAKE_C_FLAGS_RELEASE "-O2 -w -D_FORTIFY_SOURCE=2" CACHE STRING "" FORCE) 11.24 + 11.25 + if(OS_DARWIN) 11.26 + 11.27 +From 044051d302da73e16b0577eb797cd42affba27e5 Mon Sep 17 00:00:00 2001 11.28 +From: Alexander Koeppe <format_c@online.de> 11.29 +Date: Thu, 1 Jun 2017 08:56:57 +0200 11.30 +Subject: [PATCH 2/4] fix buffer over- / underflow conditions 11.31 + 11.32 +--- 11.33 + include/ec_strings.h | 2 +- 11.34 + src/ec_strings.c | 25 +++++++++++++++---------- 11.35 + 2 files changed, 16 insertions(+), 11 deletions(-) 11.36 + 11.37 +diff --git a/include/ec_strings.h b/include/ec_strings.h 11.38 +index f791739da..9ad245ef3 100644 11.39 +--- a/include/ec_strings.h 11.40 ++++ b/include/ec_strings.h 11.41 +@@ -43,7 +43,7 @@ 11.42 + 11.43 + EC_API_EXTERN int match_pattern(const char *s, const char *pattern); 11.44 + EC_API_EXTERN int base64_decode(char *bufplain, const char *bufcoded); 11.45 +-EC_API_EXTERN int strescape(char *dst, char *src); 11.46 ++EC_API_EXTERN int strescape(char *dst, char *src, size_t len); 11.47 + EC_API_EXTERN int str_replace(char **text, const char *s, const char *d); 11.48 + EC_API_EXTERN size_t strlen_utf8(const char *s); 11.49 + EC_API_EXTERN char * ec_strtok(char *s, const char *delim, char **ptrptr); 11.50 +diff --git a/src/ec_strings.c b/src/ec_strings.c 11.51 +index 53583851a..21b71926c 100644 11.52 +--- a/src/ec_strings.c 11.53 ++++ b/src/ec_strings.c 11.54 +@@ -167,13 +167,14 @@ static int hextoint(int c) 11.55 + /* 11.56 + * convert the escaped string into a binary one 11.57 + */ 11.58 +-int strescape(char *dst, char *src) 11.59 ++int strescape(char *dst, char *src, size_t len) 11.60 + { 11.61 + char *olddst = dst; 11.62 ++ char *oldsrc = src; 11.63 + int c; 11.64 + int val; 11.65 + 11.66 +- while ((c = *src++) != '\0') { 11.67 ++ while ((c = *src++) != '\0' && (size_t)(src - oldsrc) <= len) { 11.68 + if (c == '\\') { 11.69 + switch ((c = *src++)) { 11.70 + case '\0': 11.71 +@@ -218,9 +219,11 @@ int strescape(char *dst, char *src) 11.72 + if (c >= '0' && c <= '7') 11.73 + val = (val << 3) | (c - '0'); 11.74 + else 11.75 +- --src; 11.76 ++ if (src > oldsrc) /* protect against buffer underflow */ 11.77 ++ --src; 11.78 + } else 11.79 +- --src; 11.80 ++ if (src > oldsrc) /* protect against buffer underflow */ 11.81 ++ --src; 11.82 + *dst++ = (char) val; 11.83 + break; 11.84 + 11.85 +@@ -232,15 +235,17 @@ int strescape(char *dst, char *src) 11.86 + c = hextoint(*src++); 11.87 + if (c >= 0) 11.88 + val = (val << 4) + c; 11.89 +- else 11.90 +- --src; 11.91 +- } else 11.92 +- --src; 11.93 ++ else if (src > oldsrc) /* protect against buffer underflow */ 11.94 ++ --src; 11.95 ++ } else if (src > oldsrc) /* protect against buffer underflow */ 11.96 ++ --src; 11.97 + *dst++ = (char) val; 11.98 + break; 11.99 + } 11.100 +- } else if (c == 8 || c == 263) /* the backspace */ 11.101 +- dst--; 11.102 ++ } else if (c == 8 || c == 263) { /* the backspace */ 11.103 ++ if (dst > oldsrc) /* protect against buffer underflow */ 11.104 ++ dst--; 11.105 ++ } 11.106 + else 11.107 + *dst++ = (char) c; 11.108 + } 11.109 + 11.110 +From 19706cf53b189fbc996791cdb4b0d9a1f0feae5f Mon Sep 17 00:00:00 2001 11.111 +From: Alexander Koeppe <format_c@online.de> 11.112 +Date: Thu, 1 Jun 2017 08:57:54 +0200 11.113 +Subject: [PATCH 3/4] adapt calls of strescape() adding strlen 11.114 + 11.115 +--- 11.116 + src/ec_encryption.c | 2 +- 11.117 + src/interfaces/curses/ec_curses_view_connections.c | 2 +- 11.118 + src/interfaces/gtk/ec_gtk_view_connections.c | 2 +- 11.119 + utils/etterfilter/ef_encode.c | 18 ++++++++++++------ 11.120 + 4 files changed, 15 insertions(+), 9 deletions(-) 11.121 + 11.122 +diff --git a/src/ec_encryption.c b/src/ec_encryption.c 11.123 +index 6c02529c1..3d5056030 100644 11.124 +--- a/src/ec_encryption.c 11.125 ++++ b/src/ec_encryption.c 11.126 +@@ -218,7 +218,7 @@ int set_wep_key(char *string) 11.127 + 11.128 + if (type == 's') { 11.129 + /* escape the string and check its length */ 11.130 +- if (strescape((char *)tmp_wkey, p) != (int)tmp_wkey_len) 11.131 ++ if (strescape((char *)tmp_wkey, p, strlen(tmp_wkey)+1) != (int)tmp_wkey_len) 11.132 + SEMIFATAL_ERROR("Specified WEP key length does not match the given string"); 11.133 + } else if (type == 'p') { 11.134 + /* create the key from the passphrase */ 11.135 +diff --git a/src/interfaces/curses/ec_curses_view_connections.c b/src/interfaces/curses/ec_curses_view_connections.c 11.136 +index fb52331cf..011c0edf7 100644 11.137 +--- a/src/interfaces/curses/ec_curses_view_connections.c 11.138 ++++ b/src/interfaces/curses/ec_curses_view_connections.c 11.139 +@@ -614,7 +614,7 @@ static void inject_user(void) 11.140 + size_t len; 11.141 + 11.142 + /* escape the sequnces in the buffer */ 11.143 +- len = strescape((char*)injectbuf, (char*)injectbuf); 11.144 ++ len = strescape((char*)injectbuf, (char*)injectbuf, strlen(injectbuf)+1); 11.145 + 11.146 + /* check where to inject */ 11.147 + if (wdg_c1->flags & WDG_OBJ_FOCUSED) { 11.148 +diff --git a/src/interfaces/gtk/ec_gtk_view_connections.c b/src/interfaces/gtk/ec_gtk_view_connections.c 11.149 +index fa7dfdc58..b55e1755a 100644 11.150 +--- a/src/interfaces/gtk/ec_gtk_view_connections.c 11.151 ++++ b/src/interfaces/gtk/ec_gtk_view_connections.c 11.152 +@@ -1627,7 +1627,7 @@ static void gtkui_inject_user(int side) 11.153 + size_t len; 11.154 + 11.155 + /* escape the sequnces in the buffer */ 11.156 +- len = strescape(injectbuf, injectbuf); 11.157 ++ len = strescape(injectbuf, injectbuf, strlen(injectbuf)+1); 11.158 + 11.159 + /* check where to inject */ 11.160 + if (side == 1 || side == 2) { 11.161 +diff --git a/utils/etterfilter/ef_encode.c b/utils/etterfilter/ef_encode.c 11.162 +index d4b9110cd..7e359e062 100644 11.163 +--- a/utils/etterfilter/ef_encode.c 11.164 ++++ b/utils/etterfilter/ef_encode.c 11.165 +@@ -136,7 +136,8 @@ int encode_const(char *string, struct filter_op *fop) 11.166 + fop->op.test.string = (u_char*)strdup(string + 1); 11.167 + 11.168 + /* escape it in the structure */ 11.169 +- fop->op.test.slen = strescape((char*)fop->op.test.string, (char*)fop->op.test.string); 11.170 ++ fop->op.test.slen = strescape((char*)fop->op.test.string, 11.171 ++ (char*)fop->op.test.string, strlen(fop->op.test.string)+1); 11.172 + 11.173 + return E_SUCCESS; 11.174 + 11.175 +@@ -184,7 +185,8 @@ int encode_function(char *string, struct filter_op *fop) 11.176 + fop->opcode = FOP_FUNC; 11.177 + fop->op.func.op = FFUNC_SEARCH; 11.178 + fop->op.func.string = (u_char*)strdup(dec_args[1]); 11.179 +- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string); 11.180 ++ fop->op.func.slen = strescape((char*)fop->op.func.string, 11.181 ++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1); 11.182 + ret = E_SUCCESS; 11.183 + } else 11.184 + SCRIPT_ERROR("Unknown offset %s ", dec_args[0]); 11.185 +@@ -202,7 +204,8 @@ int encode_function(char *string, struct filter_op *fop) 11.186 + fop->opcode = FOP_FUNC; 11.187 + fop->op.func.op = FFUNC_REGEX; 11.188 + fop->op.func.string = (u_char*)strdup(dec_args[1]); 11.189 +- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string); 11.190 ++ fop->op.func.slen = strescape((char*)fop->op.func.string, 11.191 ++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1); 11.192 + ret = E_SUCCESS; 11.193 + } else 11.194 + SCRIPT_ERROR("Unknown offset %s ", dec_args[0]); 11.195 +@@ -272,9 +275,11 @@ int encode_function(char *string, struct filter_op *fop) 11.196 + /* replace always operate at DATA level */ 11.197 + fop->op.func.level = 5; 11.198 + fop->op.func.string = (u_char*)strdup(dec_args[0]); 11.199 +- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string); 11.200 ++ fop->op.func.slen = strescape((char*)fop->op.func.string, 11.201 ++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1); 11.202 + fop->op.func.replace = (u_char*)strdup(dec_args[1]); 11.203 +- fop->op.func.rlen = strescape((char*)fop->op.func.replace, (char*)fop->op.func.replace); 11.204 ++ fop->op.func.rlen = strescape((char*)fop->op.func.replace, 11.205 ++ (char*)fop->op.func.replace, strlen(fop->op.func.replace)+1); 11.206 + ret = E_SUCCESS; 11.207 + } else 11.208 + SCRIPT_ERROR("Wrong number of arguments for function \"%s\" ", name); 11.209 +@@ -328,7 +333,8 @@ int encode_function(char *string, struct filter_op *fop) 11.210 + if (nargs == 1) { 11.211 + fop->op.func.op = FFUNC_MSG; 11.212 + fop->op.func.string = (u_char*)strdup(dec_args[0]); 11.213 +- fop->op.func.slen = strescape((char*)fop->op.func.string, (char*)fop->op.func.string); 11.214 ++ fop->op.func.slen = strescape((char*)fop->op.func.string, 11.215 ++ (char*)fop->op.func.string, strlen(fop->op.func.string)+1); 11.216 + ret = E_SUCCESS; 11.217 + } else 11.218 + SCRIPT_ERROR("Wrong number of arguments for function \"%s\" ", name); 11.219 + 11.220 +From b005d55d4eae444c5be14eb792b50657a14c7b1d Mon Sep 17 00:00:00 2001 11.221 +From: Alexander Koeppe <format_c@online.de> 11.222 +Date: Sun, 4 Jun 2017 08:09:04 +0200 11.223 +Subject: [PATCH 4/4] Only add ASAN flags depeding on compiler version 11.224 + 11.225 +--- 11.226 + CMakeLists.txt | 22 +++++++++++++++++++++- 11.227 + 1 file changed, 21 insertions(+), 1 deletion(-) 11.228 + 11.229 +diff --git a/CMakeLists.txt b/CMakeLists.txt 11.230 +index 8e823669c..8f7c7c368 100644 11.231 +--- a/CMakeLists.txt 11.232 ++++ b/CMakeLists.txt 11.233 +@@ -126,7 +126,27 @@ if(NOT DISABLE_RPATH) 11.234 + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) 11.235 + set(CMAKE_MACOSX_RPATH 1) 11.236 + endif(NOT DISABLE_RPATH) 11.237 +-set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE) 11.238 ++ 11.239 ++# set general build flags for debug build-type 11.240 ++set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb3 -DDEBUG -Wall -Wno-pointer-sign -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -Wextra -Wredundant-decls" CACHE STRING "" FORCE) 11.241 ++# append ASAN build flags if compiler version has support 11.242 ++if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU") 11.243 ++ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8) 11.244 ++ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE) 11.245 ++ message("Building with ASAN support (GNU compiler)") 11.246 ++ else (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8) 11.247 ++ message("Building without ASAN support (GNU compiler)") 11.248 ++ endif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8) 11.249 ++elseif ("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang") 11.250 ++ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1) 11.251 ++ set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fsanitize=address -fno-omit-frame-pointer" CACHE STRING "" FORCE) 11.252 ++ message("Building with ASAN support (Clang compiler)") 11.253 ++ elseif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1) 11.254 ++ message("Building without ASAN support (Clang compiler)") 11.255 ++ endif (CMAKE_C_COMPILER_VERSION VERSION_GREATER 3.1) 11.256 ++endif ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU") 11.257 ++ 11.258 ++# set build flags for release build-type 11.259 + set(CMAKE_C_FLAGS_RELEASE "-O2 -w -D_FORTIFY_SOURCE=2" CACHE STRING "" FORCE) 11.260 + 11.261 + if(OS_DARWIN)
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 12.2 +++ b/ettercap/stuff/patches/series Tue Nov 06 16:35:54 2018 +0200 12.3 @@ -0,0 +1,5 @@ 12.4 +# From Arch Linux 12.5 +# https://www.archlinux.org/packages/community/x86_64/ettercap-gtk/ 12.6 +0001-First-draft-of-openssl-1.1-compatibility-layer.patch 12.7 +CVE-2017-6430.patch 12.8 +CVE-2017-8366.patch
13.1 --- a/eudev/receipt Tue Nov 06 14:32:27 2018 +0200 13.2 +++ b/eudev/receipt Tue Nov 06 16:35:54 2018 +0200 13.3 @@ -1,17 +1,17 @@ 13.4 # SliTaz package receipt v2. 13.5 13.6 PACKAGE="eudev" 13.7 -VERSION="3.2.5" 13.8 +VERSION="3.2.7" 13.9 CATEGORY="base-system" 13.10 SHORT_DESC="Programs for dynamic creation of device nodes" 13.11 -MAINTAINER="devel@slitaz.org" 13.12 +MAINTAINER="al.bobylev@gmail.com" 13.13 LICENSE="GPL2" 13.14 WEB_SITE="https://dev.gentoo.org/~blueness/eudev/" 13.15 LFS="http://www.linuxfromscratch.org/lfs/view/development/chapter06/eudev.html" 13.16 13.17 TARBALL="$PACKAGE-$VERSION.tar.gz" 13.18 WGET_URL="${WEB_SITE}$TARBALL" 13.19 -TARBALL_MD5="6ca08c0e14380f87df8e8aceac123671" 13.20 +TARBALL_MD5="c75d99910c1791dd9430d26ab76059c0" 13.21 13.22 BUILD_DEPENDS="gobject-introspection-dev util-linux-blkid-dev gperf kmod-dev" 13.23 SPLIT="$PACKAGE-dev"