All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/1] package/ettercap: new package
@ 2020-08-12 10:16 Jugurtha BELKALEM
  2020-08-12 10:16 ` [Buildroot] [PATCH 1/1] " Jugurtha BELKALEM
  0 siblings, 1 reply; 7+ messages in thread
From: Jugurtha BELKALEM @ 2020-08-12 10:16 UTC (permalink / raw)
  To: buildroot

Ettercap is a comprehensive suite for man
in the middle attacks. It integrates various security
functionalities like sniffing live connections, content
filtering on the fly and arp poisoning.

Ettercap can help identify misconfigured networks,
testing intrusion detection and prevention
applications and build robust embedded systems that
are security by design compliant.
-------------------------------------------

v3
- Fix for ISO-8859-1 to utf-8 invalid conversion.
- Adding missing host dependencies that fail to compile
  on some architectures.
v2
- Bump to ettercap version 0.8.3.1.
- Adding missing toolchain required dependencies.

Jugurtha BELKALEM (1):
  package/ettercap: new package

 DEVELOPERS                     |  1 +
 package/Config.in              |  1 +
 package/ettercap/Config.in     | 32 ++++++++++++++++++++++++++++++++
 package/ettercap/ettercap.hash |  3 +++
 package/ettercap/ettercap.mk   | 32 ++++++++++++++++++++++++++++++++
 5 files changed, 69 insertions(+)
 create mode 100644 package/ettercap/Config.in
 create mode 100644 package/ettercap/ettercap.hash
 create mode 100644 package/ettercap/ettercap.mk

-- 
2.7.4

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-08-12 10:16 [Buildroot] [PATCH 0/1] package/ettercap: new package Jugurtha BELKALEM
@ 2020-08-12 10:16 ` Jugurtha BELKALEM
  2020-09-15 20:57   ` Heiko Thiery
  0 siblings, 1 reply; 7+ messages in thread
From: Jugurtha BELKALEM @ 2020-08-12 10:16 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
---
 DEVELOPERS                     |  1 +
 package/Config.in              |  1 +
 package/ettercap/Config.in     | 32 ++++++++++++++++++++++++++++++++
 package/ettercap/ettercap.hash |  3 +++
 package/ettercap/ettercap.mk   | 32 ++++++++++++++++++++++++++++++++
 5 files changed, 69 insertions(+)
 create mode 100644 package/ettercap/Config.in
 create mode 100644 package/ettercap/ettercap.hash
 create mode 100644 package/ettercap/ettercap.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 42fa5a4..2097f4d 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1396,6 +1396,7 @@ N:	Joshua Henderson <joshua.henderson@microchip.com>
 F:	package/qt5/qt5wayland/
 
 N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+F:	package/ettercap/
 F:	package/python-cycler/
 F:	package/python-matplotlib/
 
diff --git a/package/Config.in b/package/Config.in
index d7e79f4..db886a1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2042,6 +2042,7 @@ menu "Networking applications"
 	source "package/ebtables/Config.in"
 	source "package/ejabberd/Config.in"
 	source "package/ethtool/Config.in"
+	source "package/ettercap/Config.in"
 	source "package/faifa/Config.in"
 	source "package/fail2ban/Config.in"
 	source "package/fastd/Config.in"
diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
new file mode 100644
index 0000000..e0693f4
--- /dev/null
+++ b/package/ettercap/Config.in
@@ -0,0 +1,32 @@
+config BR2_PACKAGE_ETTERCAP
+	bool "ettercap"
+	depends on !BR2_STATIC_LIBS
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_USE_WCHAR # ncurses wchar
+	select BR2_PACKAGE_ETHTOOL # runtime
+	select BR2_PACKAGE_GEOIP
+	select BR2_PACKAGE_LIBCURL
+	select BR2_PACKAGE_LIBNET
+	select BR2_PACKAGE_LIBPCAP
+	select BR2_PACKAGE_NCURSES
+	select BR2_PACKAGE_NCURSES_WCHAR
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_ZLIB
+	help
+	  Ettercap is a comprehensive suite for man
+	  in the middle attacks. It features sniffing of
+	  live connections, content filtering on the fly
+	  and many other interesting tricks. It supports
+	  active and passive dissection of many protocols
+	  and includes many features for network and
+	  host analysis.
+
+	  Note : Ettercap can provide better tracking
+	  for IP addresses when GeoIP.dat is provided by
+	  users (GeoIP.dat is available on maxmind website).
+
+	  http://www.ettercap-project.org/
+
+comment "ettercap needs a toolchain w/ threads, wchar, dynamic library"
+	depends on BR2_TOOLCHAIN_HAS_THREADS \
+		|| !BR2_USE_WCHAR ||BR2_STATIC_LIBS
diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
new file mode 100644
index 0000000..61ecbec
--- /dev/null
+++ b/package/ettercap/ettercap.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-0.8.3.1.tar.gz
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
new file mode 100644
index 0000000..ee8c8a2
--- /dev/null
+++ b/package/ettercap/ettercap.mk
@@ -0,0 +1,32 @@
+################################################################################
+#
+# ettercap
+#
+################################################################################
+
+ETTERCAP_VERSION = 0.8.3.1
+ETTERCAP_SITE = $(call github,Ettercap,ettercap,v$(ETTERCAP_VERSION))
+ETTERCAP_LICENSE = GPL-2.0+
+ETTERCAP_LICENSE_FILES = LICENSE
+ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
+ETTERCAP_INSTALL_STAGING = YES
+ETTERCAP_DEPENDENCIES = geoip libcurl libnet libpcap ncurses openssl zlib \
+	host-bison host-flex host-pkgconf
+
+ETTERCAP_CONF_OPTS = -DENABLE_IPV6=ON -DENABLE_GTK=OFF -DBUNDLED_LIBS=OFF
+
+ifeq ($(BR2_PACKAGE_PCRE),y)
+ETTERCAP_DEPENDENCIES += pcre
+endif
+
+# Replaces default encoding set (ISO-8859-1) with UTF-8 in ettercap
+# configuration file installed by the package.
+# It ensures that all characters are properly decoded and avoids
+# any fatal errors while running in text mode (-T).
+define ETTERCAP_SET_UTF8_ENCODING
+	$(SED) 's%^utf8_encoding.*%utf8_encoding = "UTF-8"%' \
+		$(TARGET_DIR)/etc/ettercap/etter.conf
+endef
+ETTERCAP_POST_INSTALL_TARGET_HOOKS += ETTERCAP_SET_UTF8_ENCODING
+
+$(eval $(cmake-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-08-12 10:16 ` [Buildroot] [PATCH 1/1] " Jugurtha BELKALEM
@ 2020-09-15 20:57   ` Heiko Thiery
  2020-09-15 21:13     ` Romain Naour
  0 siblings, 1 reply; 7+ messages in thread
From: Heiko Thiery @ 2020-09-15 20:57 UTC (permalink / raw)
  To: buildroot

Hi Jugurtha, Hi Romain,

Am Mi., 12. Aug. 2020 um 12:16 Uhr schrieb Jugurtha BELKALEM
<jugurtha.belkalem@smile.fr>:
>
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> ---
>  DEVELOPERS                     |  1 +
>  package/Config.in              |  1 +
>  package/ettercap/Config.in     | 32 ++++++++++++++++++++++++++++++++
>  package/ettercap/ettercap.hash |  3 +++
>  package/ettercap/ettercap.mk   | 32 ++++++++++++++++++++++++++++++++
>  5 files changed, 69 insertions(+)
>  create mode 100644 package/ettercap/Config.in
>  create mode 100644 package/ettercap/ettercap.hash
>  create mode 100644 package/ettercap/ettercap.mk
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 42fa5a4..2097f4d 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1396,6 +1396,7 @@ N:        Joshua Henderson <joshua.henderson@microchip.com>
>  F:     package/qt5/qt5wayland/
>
>  N:     Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +F:     package/ettercap/
>  F:     package/python-cycler/
>  F:     package/python-matplotlib/
>
> diff --git a/package/Config.in b/package/Config.in
> index d7e79f4..db886a1 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -2042,6 +2042,7 @@ menu "Networking applications"
>         source "package/ebtables/Config.in"
>         source "package/ejabberd/Config.in"
>         source "package/ethtool/Config.in"
> +       source "package/ettercap/Config.in"
>         source "package/faifa/Config.in"
>         source "package/fail2ban/Config.in"
>         source "package/fastd/Config.in"
> diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
> new file mode 100644
> index 0000000..e0693f4
> --- /dev/null
> +++ b/package/ettercap/Config.in
> @@ -0,0 +1,32 @@
> +config BR2_PACKAGE_ETTERCAP
> +       bool "ettercap"
> +       depends on !BR2_STATIC_LIBS
> +       depends on BR2_TOOLCHAIN_HAS_THREADS
> +       depends on BR2_USE_WCHAR # ncurses wchar
> +       select BR2_PACKAGE_ETHTOOL # runtime
> +       select BR2_PACKAGE_GEOIP

As far as I can see in the CMakelist.txt this can be disabled. So this
looks to me like an option for the package.

> +       select BR2_PACKAGE_LIBCURL

Tried to build and failed due to missing:
select BR2_PACKAGE_LIBICONV

> +       select BR2_PACKAGE_LIBNET
> +       select BR2_PACKAGE_LIBPCAP
> +       select BR2_PACKAGE_NCURSES
> +       select BR2_PACKAGE_NCURSES_WCHAR

Same for ncurses support. This seems also to be optional.

> +       select BR2_PACKAGE_OPENSSL
> +       select BR2_PACKAGE_ZLIB
> +       help
> +         Ettercap is a comprehensive suite for man
> +         in the middle attacks. It features sniffing of
> +         live connections, content filtering on the fly
> +         and many other interesting tricks. It supports
> +         active and passive dissection of many protocols
> +         and includes many features for network and
> +         host analysis.
> +
> +         Note : Ettercap can provide better tracking
> +         for IP addresses when GeoIP.dat is provided by
> +         users (GeoIP.dat is available on maxmind website).
> +
> +         http://www.ettercap-project.org/
> +
> +comment "ettercap needs a toolchain w/ threads, wchar, dynamic library"
> +       depends on BR2_TOOLCHAIN_HAS_THREADS \
                               ^
I think the "!" is missing?!

> +               || !BR2_USE_WCHAR ||BR2_STATIC_LIBS

> diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
> new file mode 100644
> index 0000000..61ecbec
> --- /dev/null
> +++ b/package/ettercap/ettercap.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-0.8.3.1.tar.gz
> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
> diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
> new file mode 100644
> index 0000000..ee8c8a2
> --- /dev/null
> +++ b/package/ettercap/ettercap.mk
> @@ -0,0 +1,32 @@
> +################################################################################
> +#
> +# ettercap
> +#
> +################################################################################
> +
> +ETTERCAP_VERSION = 0.8.3.1
> +ETTERCAP_SITE = $(call github,Ettercap,ettercap,v$(ETTERCAP_VERSION))
> +ETTERCAP_LICENSE = GPL-2.0+
> +ETTERCAP_LICENSE_FILES = LICENSE
> +ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
> +ETTERCAP_INSTALL_STAGING = YES

Why do we need to install in staging?

> +ETTERCAP_DEPENDENCIES = geoip libcurl libnet libpcap ncurses openssl zlib \
> +       host-bison host-flex host-pkgconf

Add dependency for libiconv (see above).

> +
> +ETTERCAP_CONF_OPTS = -DENABLE_IPV6=ON -DENABLE_GTK=OFF -DBUNDLED_LIBS=OFF
> +
> +ifeq ($(BR2_PACKAGE_PCRE),y)
> +ETTERCAP_DEPENDENCIES += pcre
> +endif
> +
> +# Replaces default encoding set (ISO-8859-1) with UTF-8 in ettercap
> +# configuration file installed by the package.
> +# It ensures that all characters are properly decoded and avoids
> +# any fatal errors while running in text mode (-T).
> +define ETTERCAP_SET_UTF8_ENCODING
> +       $(SED) 's%^utf8_encoding.*%utf8_encoding = "UTF-8"%' \
> +               $(TARGET_DIR)/etc/ettercap/etter.conf
> +endef
> +ETTERCAP_POST_INSTALL_TARGET_HOOKS += ETTERCAP_SET_UTF8_ENCODING
> +
> +$(eval $(cmake-package))

Thank you.
-- 
Heiko

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-09-15 20:57   ` Heiko Thiery
@ 2020-09-15 21:13     ` Romain Naour
  2022-01-06 11:24       ` Romain Naour
  0 siblings, 1 reply; 7+ messages in thread
From: Romain Naour @ 2020-09-15 21:13 UTC (permalink / raw)
  To: buildroot

Hi Heiko,

Le 15/09/2020 ? 22:57, Heiko Thiery a ?crit?:
> Hi Jugurtha, Hi Romain,
> 
> Am Mi., 12. Aug. 2020 um 12:16 Uhr schrieb Jugurtha BELKALEM
> <jugurtha.belkalem@smile.fr>:
>>
>> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>> ---
>>  DEVELOPERS                     |  1 +
>>  package/Config.in              |  1 +
>>  package/ettercap/Config.in     | 32 ++++++++++++++++++++++++++++++++
>>  package/ettercap/ettercap.hash |  3 +++
>>  package/ettercap/ettercap.mk   | 32 ++++++++++++++++++++++++++++++++
>>  5 files changed, 69 insertions(+)
>>  create mode 100644 package/ettercap/Config.in
>>  create mode 100644 package/ettercap/ettercap.hash
>>  create mode 100644 package/ettercap/ettercap.mk
>>
>> diff --git a/DEVELOPERS b/DEVELOPERS
>> index 42fa5a4..2097f4d 100644
>> --- a/DEVELOPERS
>> +++ b/DEVELOPERS
>> @@ -1396,6 +1396,7 @@ N:        Joshua Henderson <joshua.henderson@microchip.com>
>>  F:     package/qt5/qt5wayland/
>>
>>  N:     Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>> +F:     package/ettercap/
>>  F:     package/python-cycler/
>>  F:     package/python-matplotlib/
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index d7e79f4..db886a1 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -2042,6 +2042,7 @@ menu "Networking applications"
>>         source "package/ebtables/Config.in"
>>         source "package/ejabberd/Config.in"
>>         source "package/ethtool/Config.in"
>> +       source "package/ettercap/Config.in"
>>         source "package/faifa/Config.in"
>>         source "package/fail2ban/Config.in"
>>         source "package/fastd/Config.in"
>> diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
>> new file mode 100644
>> index 0000000..e0693f4
>> --- /dev/null
>> +++ b/package/ettercap/Config.in
>> @@ -0,0 +1,32 @@
>> +config BR2_PACKAGE_ETTERCAP
>> +       bool "ettercap"
>> +       depends on !BR2_STATIC_LIBS
>> +       depends on BR2_TOOLCHAIN_HAS_THREADS
>> +       depends on BR2_USE_WCHAR # ncurses wchar
>> +       select BR2_PACKAGE_ETHTOOL # runtime
>> +       select BR2_PACKAGE_GEOIP
> 
> As far as I can see in the CMakelist.txt this can be disabled. So this
> looks to me like an option for the package.

Indeed, geoip is optional. But even when selected the geoip package doesn't
install MaxMind's GeoIP lite databases.

Jugurtha, maybe we can just turn it off ?

> 
>> +       select BR2_PACKAGE_LIBCURL
> 
> Tried to build and failed due to missing:
> select BR2_PACKAGE_LIBICONV

libiconv package is only used for uclibc based toolchain. The dependency must be
conditional.
> 
>> +       select BR2_PACKAGE_LIBNET
>> +       select BR2_PACKAGE_LIBPCAP
>> +       select BR2_PACKAGE_NCURSES
>> +       select BR2_PACKAGE_NCURSES_WCHAR
> 
> Same for ncurses support. This seems also to be optional.

Jugurtha, can you have a look ?

> 
>> +       select BR2_PACKAGE_OPENSSL
>> +       select BR2_PACKAGE_ZLIB
>> +       help
>> +         Ettercap is a comprehensive suite for man
>> +         in the middle attacks. It features sniffing of
>> +         live connections, content filtering on the fly
>> +         and many other interesting tricks. It supports
>> +         active and passive dissection of many protocols
>> +         and includes many features for network and
>> +         host analysis.
>> +
>> +         Note : Ettercap can provide better tracking
>> +         for IP addresses when GeoIP.dat is provided by
>> +         users (GeoIP.dat is available on maxmind website).
>> +
>> +         http://www.ettercap-project.org/
>> +
>> +comment "ettercap needs a toolchain w/ threads, wchar, dynamic library"
>> +       depends on BR2_TOOLCHAIN_HAS_THREADS \
>                                ^
> I think the "!" is missing?!

Indeed

> 
>> +               || !BR2_USE_WCHAR ||BR2_STATIC_LIBS

need space between "||" and "BR2_STATIC_LIBS"

> 
>> diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
>> new file mode 100644
>> index 0000000..61ecbec
>> --- /dev/null
>> +++ b/package/ettercap/ettercap.hash
>> @@ -0,0 +1,3 @@
>> +# Locally calculated
>> +sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-0.8.3.1.tar.gz
>> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
>> diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
>> new file mode 100644
>> index 0000000..ee8c8a2
>> --- /dev/null
>> +++ b/package/ettercap/ettercap.mk
>> @@ -0,0 +1,32 @@
>> +################################################################################
>> +#
>> +# ettercap
>> +#
>> +################################################################################
>> +
>> +ETTERCAP_VERSION = 0.8.3.1
>> +ETTERCAP_SITE = $(call github,Ettercap,ettercap,v$(ETTERCAP_VERSION))
>> +ETTERCAP_LICENSE = GPL-2.0+
>> +ETTERCAP_LICENSE_FILES = LICENSE
>> +ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
>> +ETTERCAP_INSTALL_STAGING = YES
> 
> Why do we need to install in staging?

Ettercap should provide libettercap.so.0 (I need to check).

https://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/e/ettercap-0.8.3.1-1.fc33.i686.html

Heiko, thanks for the review!

Best regards,
Romain

> 
>> +ETTERCAP_DEPENDENCIES = geoip libcurl libnet libpcap ncurses openssl zlib \
>> +       host-bison host-flex host-pkgconf
> 
> Add dependency for libiconv (see above).
> 
>> +
>> +ETTERCAP_CONF_OPTS = -DENABLE_IPV6=ON -DENABLE_GTK=OFF -DBUNDLED_LIBS=OFF
>> +
>> +ifeq ($(BR2_PACKAGE_PCRE),y)
>> +ETTERCAP_DEPENDENCIES += pcre
>> +endif
>> +
>> +# Replaces default encoding set (ISO-8859-1) with UTF-8 in ettercap
>> +# configuration file installed by the package.
>> +# It ensures that all characters are properly decoded and avoids
>> +# any fatal errors while running in text mode (-T).
>> +define ETTERCAP_SET_UTF8_ENCODING
>> +       $(SED) 's%^utf8_encoding.*%utf8_encoding = "UTF-8"%' \
>> +               $(TARGET_DIR)/etc/ettercap/etter.conf
>> +endef
>> +ETTERCAP_POST_INSTALL_TARGET_HOOKS += ETTERCAP_SET_UTF8_ENCODING
>> +
>> +$(eval $(cmake-package))
> 
> Thank you.
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-09-15 21:13     ` Romain Naour
@ 2022-01-06 11:24       ` Romain Naour
  0 siblings, 0 replies; 7+ messages in thread
From: Romain Naour @ 2022-01-06 11:24 UTC (permalink / raw)
  To: Heiko Thiery, Jugurtha BELKALEM; +Cc: buildroot

Hello Jugurtha,

Le 15/09/2020 à 23:13, Romain Naour a écrit :
> Hi Heiko,
> 
> Le 15/09/2020 à 22:57, Heiko Thiery a écrit :
>> Hi Jugurtha, Hi Romain,
>>
>> Am Mi., 12. Aug. 2020 um 12:16 Uhr schrieb Jugurtha BELKALEM
>> <jugurtha.belkalem@smile.fr>:
>>>
>>> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>>> ---
>>>  DEVELOPERS                     |  1 +
>>>  package/Config.in              |  1 +
>>>  package/ettercap/Config.in     | 32 ++++++++++++++++++++++++++++++++
>>>  package/ettercap/ettercap.hash |  3 +++
>>>  package/ettercap/ettercap.mk   | 32 ++++++++++++++++++++++++++++++++
>>>  5 files changed, 69 insertions(+)
>>>  create mode 100644 package/ettercap/Config.in
>>>  create mode 100644 package/ettercap/ettercap.hash
>>>  create mode 100644 package/ettercap/ettercap.mk
>>>
>>> diff --git a/DEVELOPERS b/DEVELOPERS
>>> index 42fa5a4..2097f4d 100644
>>> --- a/DEVELOPERS
>>> +++ b/DEVELOPERS
>>> @@ -1396,6 +1396,7 @@ N:        Joshua Henderson <joshua.henderson@microchip.com>
>>>  F:     package/qt5/qt5wayland/
>>>
>>>  N:     Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
>>> +F:     package/ettercap/
>>>  F:     package/python-cycler/
>>>  F:     package/python-matplotlib/
>>>
>>> diff --git a/package/Config.in b/package/Config.in
>>> index d7e79f4..db886a1 100644
>>> --- a/package/Config.in
>>> +++ b/package/Config.in
>>> @@ -2042,6 +2042,7 @@ menu "Networking applications"
>>>         source "package/ebtables/Config.in"
>>>         source "package/ejabberd/Config.in"
>>>         source "package/ethtool/Config.in"
>>> +       source "package/ettercap/Config.in"
>>>         source "package/faifa/Config.in"
>>>         source "package/fail2ban/Config.in"
>>>         source "package/fastd/Config.in"
>>> diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
>>> new file mode 100644
>>> index 0000000..e0693f4
>>> --- /dev/null
>>> +++ b/package/ettercap/Config.in
>>> @@ -0,0 +1,32 @@
>>> +config BR2_PACKAGE_ETTERCAP
>>> +       bool "ettercap"
>>> +       depends on !BR2_STATIC_LIBS
>>> +       depends on BR2_TOOLCHAIN_HAS_THREADS
>>> +       depends on BR2_USE_WCHAR # ncurses wchar
>>> +       select BR2_PACKAGE_ETHTOOL # runtime
>>> +       select BR2_PACKAGE_GEOIP
>>
>> As far as I can see in the CMakelist.txt this can be disabled. So this
>> looks to me like an option for the package.
> 
> Indeed, geoip is optional. But even when selected the geoip package doesn't
> install MaxMind's GeoIP lite databases.
> 
> Jugurtha, maybe we can just turn it off ?
> 
>>
>>> +       select BR2_PACKAGE_LIBCURL
>>
>> Tried to build and failed due to missing:
>> select BR2_PACKAGE_LIBICONV
> 
> libiconv package is only used for uclibc based toolchain. The dependency must be
> conditional.
>>
>>> +       select BR2_PACKAGE_LIBNET
>>> +       select BR2_PACKAGE_LIBPCAP
>>> +       select BR2_PACKAGE_NCURSES
>>> +       select BR2_PACKAGE_NCURSES_WCHAR
>>
>> Same for ncurses support. This seems also to be optional.
> 
> Jugurtha, can you have a look ?

Based on the feedback from Heiko Thiery and I, I have marked this patch as
"Changes Requested".

Best regards,
Romain

> 
>>
>>> +       select BR2_PACKAGE_OPENSSL
>>> +       select BR2_PACKAGE_ZLIB
>>> +       help
>>> +         Ettercap is a comprehensive suite for man
>>> +         in the middle attacks. It features sniffing of
>>> +         live connections, content filtering on the fly
>>> +         and many other interesting tricks. It supports
>>> +         active and passive dissection of many protocols
>>> +         and includes many features for network and
>>> +         host analysis.
>>> +
>>> +         Note : Ettercap can provide better tracking
>>> +         for IP addresses when GeoIP.dat is provided by
>>> +         users (GeoIP.dat is available on maxmind website).
>>> +
>>> +         http://www.ettercap-project.org/
>>> +
>>> +comment "ettercap needs a toolchain w/ threads, wchar, dynamic library"
>>> +       depends on BR2_TOOLCHAIN_HAS_THREADS \
>>                                ^
>> I think the "!" is missing?!
> 
> Indeed
> 
>>
>>> +               || !BR2_USE_WCHAR ||BR2_STATIC_LIBS
> 
> need space between "||" and "BR2_STATIC_LIBS"
> 
>>
>>> diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
>>> new file mode 100644
>>> index 0000000..61ecbec
>>> --- /dev/null
>>> +++ b/package/ettercap/ettercap.hash
>>> @@ -0,0 +1,3 @@
>>> +# Locally calculated
>>> +sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-0.8.3.1.tar.gz
>>> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
>>> diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
>>> new file mode 100644
>>> index 0000000..ee8c8a2
>>> --- /dev/null
>>> +++ b/package/ettercap/ettercap.mk
>>> @@ -0,0 +1,32 @@
>>> +################################################################################
>>> +#
>>> +# ettercap
>>> +#
>>> +################################################################################
>>> +
>>> +ETTERCAP_VERSION = 0.8.3.1
>>> +ETTERCAP_SITE = $(call github,Ettercap,ettercap,v$(ETTERCAP_VERSION))
>>> +ETTERCAP_LICENSE = GPL-2.0+
>>> +ETTERCAP_LICENSE_FILES = LICENSE
>>> +ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
>>> +ETTERCAP_INSTALL_STAGING = YES
>>
>> Why do we need to install in staging?
> 
> Ettercap should provide libettercap.so.0 (I need to check).
> 
> https://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/e/ettercap-0.8.3.1-1.fc33.i686.html
> 
> Heiko, thanks for the review!
> 
> Best regards,
> Romain
> 
>>
>>> +ETTERCAP_DEPENDENCIES = geoip libcurl libnet libpcap ncurses openssl zlib \
>>> +       host-bison host-flex host-pkgconf
>>
>> Add dependency for libiconv (see above).
>>
>>> +
>>> +ETTERCAP_CONF_OPTS = -DENABLE_IPV6=ON -DENABLE_GTK=OFF -DBUNDLED_LIBS=OFF
>>> +
>>> +ifeq ($(BR2_PACKAGE_PCRE),y)
>>> +ETTERCAP_DEPENDENCIES += pcre
>>> +endif
>>> +
>>> +# Replaces default encoding set (ISO-8859-1) with UTF-8 in ettercap
>>> +# configuration file installed by the package.
>>> +# It ensures that all characters are properly decoded and avoids
>>> +# any fatal errors while running in text mode (-T).
>>> +define ETTERCAP_SET_UTF8_ENCODING
>>> +       $(SED) 's%^utf8_encoding.*%utf8_encoding = "UTF-8"%' \
>>> +               $(TARGET_DIR)/etc/ettercap/etter.conf
>>> +endef
>>> +ETTERCAP_POST_INSTALL_TARGET_HOOKS += ETTERCAP_SET_UTF8_ENCODING
>>> +
>>> +$(eval $(cmake-package))
>>
>> Thank you.
>>
> 

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-08-11 18:37 ` [Buildroot] [PATCH 1/1] package/ettercap: new package Jugurtha BELKALEM
@ 2020-08-11 19:40   ` Romain Naour
  0 siblings, 0 replies; 7+ messages in thread
From: Romain Naour @ 2020-08-11 19:40 UTC (permalink / raw)
  To: buildroot

Hello Jugurtha,

Le 11/08/2020 ? 20:37, Jugurtha BELKALEM via buildroot a ?crit?:
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> 
> Fix missing libpcap
> 
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> 
> Fix comments
> 
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> 
> Fix invalid utf-8 error

It seems you squashed some commit before sending the patch, don't forget to
remove duplicate lines and improve the git log.

> 
> Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> ---

The log between two version of the patch should be below "---" line.

v2: Fix missing libpcap
    Fix invalid utf-8 error

>  DEVELOPERS                                         |  1 +
>  package/Config.in                                  |  1 +
>  .../0001-Fix-invalid-utf-8-is-not-supported.patch  | 31 ++++++++++++++++++++++
>  package/ettercap/Config.in                         | 24 +++++++++++++++++
>  package/ettercap/ettercap.hash                     |  3 +++
>  package/ettercap/ettercap.mk                       | 15 +++++++++++
>  6 files changed, 75 insertions(+)
>  create mode 100644 package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
>  create mode 100644 package/ettercap/Config.in
>  create mode 100644 package/ettercap/ettercap.hash
>  create mode 100644 package/ettercap/ettercap.mk
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index ee840db..fee80f0 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1395,6 +1395,7 @@ N:	Joshua Henderson <joshua.henderson@microchip.com>
>  F:	package/qt5/qt5wayland/
>  
>  N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +F:	package/ettercap/
>  F:	package/python-cycler/
>  F:	package/python-matplotlib/
>  
> diff --git a/package/Config.in b/package/Config.in
> index d7e79f4..db886a1 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -2042,6 +2042,7 @@ menu "Networking applications"
>  	source "package/ebtables/Config.in"
>  	source "package/ejabberd/Config.in"
>  	source "package/ethtool/Config.in"
> +	source "package/ettercap/Config.in"
>  	source "package/faifa/Config.in"
>  	source "package/fail2ban/Config.in"
>  	source "package/fastd/Config.in"
> diff --git a/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch b/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
> new file mode 100644
> index 0000000..0c6a923
> --- /dev/null
> +++ b/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
> @@ -0,0 +1,31 @@
> +From b00e1efceaae979ed103abf343fc44812b48de62 Mon Sep 17 00:00:00 2001
> +From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +Date: Tue, 11 Aug 2020 20:11:25 +0200
> +Subject: [PATCH] Fix invalid utf-8 is not supported
> +
> +Fixes fatal error message generated even when
> +utf-8 is available.
> +Ettercap requires gettext package and works fine.

I don't recall what was the issue and why we really need to remove those lines.
So even with gettext we need to remove them ?

> +
> +Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
> +---
> + src/ec_format.c | 3 ---
> + 1 file changed, 3 deletions(-)
> +
> +diff --git a/src/ec_format.c b/src/ec_format.c
> +index 5c9b850..b3e7f21 100644
> +--- a/src/ec_format.c
> ++++ b/src/ec_format.c
> +@@ -418,9 +418,6 @@ int set_utf8_encoding(u_char *fromcode)
> +    /* make sure encoding type is supported */
> +    cd = iconv_open("UTF-8", (const char*)fromcode);
> +    
> +-   if (cd == (iconv_t)(-1))
> +-      SEMIFATAL_ERROR("The conversion from %s to UTF-8 is not supported.", fromcode);
> +-   
> +    iconv_close(cd);
> + 
> +    utf8_encoding = strdup((const char*)fromcode);
> +-- 
> +2.7.4
> +
> diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
> new file mode 100644
> index 0000000..b11834a
> --- /dev/null
> +++ b/package/ettercap/Config.in
> @@ -0,0 +1,24 @@
> +config BR2_PACKAGE_ETTERCAP
> +	bool "ettercap"
> +	depends on BR2_PACKAGE_NCURSES
> +	depends on BR2_PACKAGE_NCURSES_WCHAR
> +	depends on !BR2_STATIC_LIBS
> +	select BR2_PACKAGE_OPENSSL

Openssl is a virtual package, by default libopenssl is used but it can be
replaced by libressl. Did you test with libressl ?

> +	select BR2_PACKAGE_LIBCURL
> +	select BR2_PACKAGE_GEOIP
> +	select BR2_PACKAGE_LIBNET
> +	select BR2_PACKAGE_LIBPCAP
> +	select BR2_PACKAGE_ETHTOOL # runtime
> +	select BR2_PACKAGE_GETTEXT # runtime

We really need gettext on the target ?

> +	select BR2_PACKAGE_LIBPTHREAD_STUB # runtime
> +	select BR2_PACKAGE_ZLIB # runtime
> +	help
> +	  Ettercap is a comprehensive suite for man
> +	  in the middle attacks. It features sniffing of
> +	  live connections, content filtering on the fly
> +	  and many other interesting tricks. It supports
> +	  active and passive dissection of many protocols
> +	  and includes many features for network and
> +	  host analysis.
> +
> +	  http://www.ettercap-project.org/
> diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
> new file mode 100644
> index 0000000..21f7df4
> --- /dev/null
> +++ b/package/ettercap/ettercap.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-v0.8.3.1.tar.gz
> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
> diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
> new file mode 100644
> index 0000000..d419094
> --- /dev/null
> +++ b/package/ettercap/ettercap.mk
> @@ -0,0 +1,15 @@
> +################################################################################
> +#
> +# ettercap
> +#
> +################################################################################
> +
> +ETTERCAP_VERSION = v0.8.3.1

I think we prefer using 0.8.3.1 as version number...
> +ETTERCAP_SITE = $(call github,Ettercap,ettercap,$(ETTERCAP_VERSION))
                                                   ^^
and add "v" before $(ETTERCAP_VERSION)

> +ETTERCAP_LICENSE = GPL-2.0+
> +ETTERCAP_LICENSE_FILES = LICENSE
> +ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
> +ETTERCAP_DEPENDENCIES = ncurses libopenssl libcurl geoip libnet libpcap

We prefer the dependencies list alphabetically sorted

Best regards,
Romain


> +ETTERCAP_CONF_OPTS = -DENABLE_GTK=OFF
> +
> +$(eval $(cmake-package))
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Buildroot] [PATCH 1/1] package/ettercap: new package
  2020-08-11 18:37 [Buildroot] [PATCH 0/1] Ettercap tools suite Jugurtha BELKALEM
@ 2020-08-11 18:37 ` Jugurtha BELKALEM
  2020-08-11 19:40   ` Romain Naour
  0 siblings, 1 reply; 7+ messages in thread
From: Jugurtha BELKALEM @ 2020-08-11 18:37 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

Fix missing libpcap

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

Fix comments

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>

Fix invalid utf-8 error

Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
---
 DEVELOPERS                                         |  1 +
 package/Config.in                                  |  1 +
 .../0001-Fix-invalid-utf-8-is-not-supported.patch  | 31 ++++++++++++++++++++++
 package/ettercap/Config.in                         | 24 +++++++++++++++++
 package/ettercap/ettercap.hash                     |  3 +++
 package/ettercap/ettercap.mk                       | 15 +++++++++++
 6 files changed, 75 insertions(+)
 create mode 100644 package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
 create mode 100644 package/ettercap/Config.in
 create mode 100644 package/ettercap/ettercap.hash
 create mode 100644 package/ettercap/ettercap.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index ee840db..fee80f0 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1395,6 +1395,7 @@ N:	Joshua Henderson <joshua.henderson@microchip.com>
 F:	package/qt5/qt5wayland/
 
 N:	Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+F:	package/ettercap/
 F:	package/python-cycler/
 F:	package/python-matplotlib/
 
diff --git a/package/Config.in b/package/Config.in
index d7e79f4..db886a1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2042,6 +2042,7 @@ menu "Networking applications"
 	source "package/ebtables/Config.in"
 	source "package/ejabberd/Config.in"
 	source "package/ethtool/Config.in"
+	source "package/ettercap/Config.in"
 	source "package/faifa/Config.in"
 	source "package/fail2ban/Config.in"
 	source "package/fastd/Config.in"
diff --git a/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch b/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
new file mode 100644
index 0000000..0c6a923
--- /dev/null
+++ b/package/ettercap/0001-Fix-invalid-utf-8-is-not-supported.patch
@@ -0,0 +1,31 @@
+From b00e1efceaae979ed103abf343fc44812b48de62 Mon Sep 17 00:00:00 2001
+From: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+Date: Tue, 11 Aug 2020 20:11:25 +0200
+Subject: [PATCH] Fix invalid utf-8 is not supported
+
+Fixes fatal error message generated even when
+utf-8 is available.
+Ettercap requires gettext package and works fine.
+
+Signed-off-by: Jugurtha BELKALEM <jugurtha.belkalem@smile.fr>
+---
+ src/ec_format.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/src/ec_format.c b/src/ec_format.c
+index 5c9b850..b3e7f21 100644
+--- a/src/ec_format.c
++++ b/src/ec_format.c
+@@ -418,9 +418,6 @@ int set_utf8_encoding(u_char *fromcode)
+    /* make sure encoding type is supported */
+    cd = iconv_open("UTF-8", (const char*)fromcode);
+    
+-   if (cd == (iconv_t)(-1))
+-      SEMIFATAL_ERROR("The conversion from %s to UTF-8 is not supported.", fromcode);
+-   
+    iconv_close(cd);
+ 
+    utf8_encoding = strdup((const char*)fromcode);
+-- 
+2.7.4
+
diff --git a/package/ettercap/Config.in b/package/ettercap/Config.in
new file mode 100644
index 0000000..b11834a
--- /dev/null
+++ b/package/ettercap/Config.in
@@ -0,0 +1,24 @@
+config BR2_PACKAGE_ETTERCAP
+	bool "ettercap"
+	depends on BR2_PACKAGE_NCURSES
+	depends on BR2_PACKAGE_NCURSES_WCHAR
+	depends on !BR2_STATIC_LIBS
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_LIBCURL
+	select BR2_PACKAGE_GEOIP
+	select BR2_PACKAGE_LIBNET
+	select BR2_PACKAGE_LIBPCAP
+	select BR2_PACKAGE_ETHTOOL # runtime
+	select BR2_PACKAGE_GETTEXT # runtime
+	select BR2_PACKAGE_LIBPTHREAD_STUB # runtime
+	select BR2_PACKAGE_ZLIB # runtime
+	help
+	  Ettercap is a comprehensive suite for man
+	  in the middle attacks. It features sniffing of
+	  live connections, content filtering on the fly
+	  and many other interesting tricks. It supports
+	  active and passive dissection of many protocols
+	  and includes many features for network and
+	  host analysis.
+
+	  http://www.ettercap-project.org/
diff --git a/package/ettercap/ettercap.hash b/package/ettercap/ettercap.hash
new file mode 100644
index 0000000..21f7df4
--- /dev/null
+++ b/package/ettercap/ettercap.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 d0c3ef88dfc284b61d3d5b64d946c1160fd04276b448519c1ae4438a9cdffaf3  ettercap-v0.8.3.1.tar.gz
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  LICENSE
diff --git a/package/ettercap/ettercap.mk b/package/ettercap/ettercap.mk
new file mode 100644
index 0000000..d419094
--- /dev/null
+++ b/package/ettercap/ettercap.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# ettercap
+#
+################################################################################
+
+ETTERCAP_VERSION = v0.8.3.1
+ETTERCAP_SITE = $(call github,Ettercap,ettercap,$(ETTERCAP_VERSION))
+ETTERCAP_LICENSE = GPL-2.0+
+ETTERCAP_LICENSE_FILES = LICENSE
+ETTERCAP_SUPPORTS_IN_SOURCE_BUILD = NO
+ETTERCAP_DEPENDENCIES = ncurses libopenssl libcurl geoip libnet libpcap
+ETTERCAP_CONF_OPTS = -DENABLE_GTK=OFF
+
+$(eval $(cmake-package))
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-01-06 11:24 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-12 10:16 [Buildroot] [PATCH 0/1] package/ettercap: new package Jugurtha BELKALEM
2020-08-12 10:16 ` [Buildroot] [PATCH 1/1] " Jugurtha BELKALEM
2020-09-15 20:57   ` Heiko Thiery
2020-09-15 21:13     ` Romain Naour
2022-01-06 11:24       ` Romain Naour
  -- strict thread matches above, loose matches on Subject: below --
2020-08-11 18:37 [Buildroot] [PATCH 0/1] Ettercap tools suite Jugurtha BELKALEM
2020-08-11 18:37 ` [Buildroot] [PATCH 1/1] package/ettercap: new package Jugurtha BELKALEM
2020-08-11 19:40   ` Romain Naour

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.