Patchwork new package: proxychains

login
register
mail settings
Submitter Stefan Fröberg
Date Dec. 23, 2012, 12:20 a.m.
Message ID <1356222029-6290-1-git-send-email-stefan.froberg@petroprogram.com>
Download mbox | patch
Permalink /patch/207946/
State Accepted
Commit 5f70f5caea8a8e229a5adad948b32fe4e3c88289
Headers show

Comments

Stefan Fröberg - Dec. 23, 2012, 12:20 a.m.
Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
---
 package/Config.in                  |    1 +
 package/proxychains/Config.in      |    7 +++++++
 package/proxychains/proxychains.mk |   10 ++++++++++
 3 files changed, 18 insertions(+), 0 deletions(-)
 create mode 100644 package/proxychains/Config.in
 create mode 100644 package/proxychains/proxychains.mk
Peter Korsgaard - Dec. 23, 2012, 9:17 p.m.
>>>>> "Stefan" == Stefan Fröberg <stefan.froberg@petroprogram.com> writes:

 Stefan> Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
 Stefan> ---
 Stefan>  package/Config.in                  |    1 +
 Stefan>  package/proxychains/Config.in      |    7 +++++++
 Stefan>  package/proxychains/proxychains.mk |   10 ++++++++++
 Stefan>  3 files changed, 18 insertions(+), 0 deletions(-)
 Stefan>  create mode 100644 package/proxychains/Config.in
 Stefan>  create mode 100644 package/proxychains/proxychains.mk

Committed, thanks.
Thomas Petazzoni - Jan. 8, 2013, 5:09 p.m.
Dear Stefan Fröberg,

On Sun, 23 Dec 2012 02:20:29 +0200, Stefan Fröberg wrote:
> Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
> ---
>  package/Config.in                  |    1 +
>  package/proxychains/Config.in      |    7 +++++++
>  package/proxychains/proxychains.mk |   10 ++++++++++
>  3 files changed, 18 insertions(+), 0 deletions(-)
>  create mode 100644 package/proxychains/Config.in
>  create mode 100644 package/proxychains/proxychains.mk

This new package generates the following build failure:

  http://autobuild.buildroot.org/results/7364b557c1fea642a3631c4735dd93f02ba70dd5/build-end.log

Can you try to investigate and see if you can provide a patch to fix it?

Thanks!

Thomas
Stefan Fröberg - Jan. 8, 2013, 6:17 p.m.
Hi Thomas

8.1.2013 19:09, Thomas Petazzoni kirjoitti:
> Dear Stefan Fröberg,
>
> On Sun, 23 Dec 2012 02:20:29 +0200, Stefan Fröberg wrote:
>> Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
>> ---
>>  package/Config.in                  |    1 +
>>  package/proxychains/Config.in      |    7 +++++++
>>  package/proxychains/proxychains.mk |   10 ++++++++++
>>  3 files changed, 18 insertions(+), 0 deletions(-)
>>  create mode 100644 package/proxychains/Config.in
>>  create mode 100644 package/proxychains/proxychains.mk
> This new package generates the following build failure:
>
>   http://autobuild.buildroot.org/results/7364b557c1fea642a3631c4735dd93f02ba70dd5/build-end.log
>
> Can you try to investigate and see if you can provide a patch to fix it?
>
> Thanks!
>
> Thomas

Well, I can try to make a patch to that  libproxychains.c:291:5: error:
conflicting types for 'getnameinfo'  error but I can't test it in arm
because I don't
have any real arm machine here and my poor hard drive is already so
stuffed that building arm qemu-image would be difficult
 :-(

But I will take a look of this

Stefan
Stefan Fröberg - Jan. 8, 2013, 6:47 p.m.
Thomas, this is what my getnameinfo() function from
$(STAGING_DIR)/usr/include/netdb.h  looks like:

/* Translate a socket address to a location and service name.

   This function is a possible cancellation point and therefore not
   marked with __THROW.  */
extern int getnameinfo (__const struct sockaddr *__restrict __sa,
            socklen_t __salen, char *__restrict __host,
            socklen_t __hostlen, char *__restrict __serv,
            socklen_t __servlen, unsigned int __flags);
#endif    /* POSIX */

__END_DECLS

#endif    /* netdb.h */

And here is the snip of my proxychain building

>>> proxychains 3.1 Building
PATH="/mnt/hee/new/buildroot-2012.08/output/host/bin:/mnt/hee/new/buildroot-2012.08/output/host/usr/bin:/mnt/hee/new/buildroot-2012.08/output/host/usr/sbin/:/root/perl5/bin:/root/perl5/bin:/root/perl5/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
PERLLIB="/mnt/hee/new/buildroot-2012.08/output/host/usr/lib/perl" 
/usr/bin/make -j4  -C
/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/
make[1]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1"
/usr/bin/make  all-recursive
make[2]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1"
Making all in proxychains
make[3]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains"
Making all in docs
make[4]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs"
Making all in en
make[5]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs/en"
make[5]: Kohteelle "all" ei tarvitse tehdä mitään.
make[5]: Poistutaan hakemistosta
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs/en"
make[5]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs"
make[5]: Kohteelle "all-am" ei tarvitse tehdä mitään.
make[5]: Poistutaan hakemistosta
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs"
make[4]: Poistutaan hakemistosta
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains/docs"
make[4]: Siirrytään hakemistoon
"/mnt/hee/new/buildroot-2012.08/output/build/proxychains-3.1/proxychains"
/bin/sh ../libtool --mode=compile
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I..     -pipe -funit-at-a-time -Wno-error -Os
-Os  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c
libproxychains.c
/bin/sh ../libtool --mode=compile
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I..     -pipe -funit-at-a-time -Wno-error -Os
-Os  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c
core.c
mkdir .libs
 /mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I.. -pipe -funit-at-a-time -Wno-error -Os -Os
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-Wp,-MD,.deps/libproxychains.pp -c libproxychains.c  -fPIC -DPIC -o
.libs/libproxychains.o
 /mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I.. -pipe -funit-at-a-time -Wno-error -Os -Os
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-Wp,-MD,.deps/core.pp -c core.c  -fPIC -DPIC -o .libs/core.o
 /mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I.. -pipe -funit-at-a-time -Wno-error -Os -Os
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-Wp,-MD,.deps/libproxychains.pp -c libproxychains.c -o libproxychains.o
>/dev/null 2>&1
 /mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-DHAVE_CONFIG_H -I. -I. -I.. -pipe -funit-at-a-time -Wno-error -Os -Os
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-Wp,-MD,.deps/core.pp -c core.c -o core.o >/dev/null 2>&1
/bin/sh ../libtool --mode=link
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc 
-pipe -funit-at-a-time -Wno-error -Os -Os  -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wl,-S -Wl,-O1
-Wl,--as-needed -Wl,-z -Wl,combreloc -Wl,--enable-new-dtags
-Wl,--hash-style=gnu -o libproxychains.la -rpath /usr/lib -version-info
3:0:0  libproxychains.lo core.lo -ldl
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-gcc
-shared  .libs/libproxychains.o .libs/core.o  -ldl  -Wl,-S -Wl,-O1
-Wl,--as-needed -Wl,-z -Wl,combreloc -Wl,--enable-new-dtags
-Wl,--hash-style=gnu -Wl,-soname -Wl,libproxychains.so.3 -o
.libs/libproxychains.so.3.0.0
(cd .libs && rm -f libproxychains.so.3 && ln -s libproxychains.so.3.0.0
libproxychains.so.3)
(cd .libs && rm -f libproxychains.so && ln -s libproxychains.so.3.0.0
libproxychains.so)
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-ar
cru .libs/libproxychains.a  libproxychains.o core.o
/mnt/hee/new/buildroot-2012.08/output/host/usr/bin/i586-unknown-linux-uclibc-ranlib
.libs/libproxychains.a
creating libproxychains.la


Stefan


8.1.2013 20:17, Stefan Fröberg kirjoitti:
> Hi Thomas
>
> 8.1.2013 19:09, Thomas Petazzoni kirjoitti:
>> Dear Stefan Fröberg,
>>
>> On Sun, 23 Dec 2012 02:20:29 +0200, Stefan Fröberg wrote:
>>> Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
>>> ---
>>>  package/Config.in                  |    1 +
>>>  package/proxychains/Config.in      |    7 +++++++
>>>  package/proxychains/proxychains.mk |   10 ++++++++++
>>>  3 files changed, 18 insertions(+), 0 deletions(-)
>>>  create mode 100644 package/proxychains/Config.in
>>>  create mode 100644 package/proxychains/proxychains.mk
>> This new package generates the following build failure:
>>
>>   http://autobuild.buildroot.org/results/7364b557c1fea642a3631c4735dd93f02ba70dd5/build-end.log
>>
>> Can you try to investigate and see if you can provide a patch to fix it?
>>
>> Thanks!
>>
>> Thomas
> Well, I can try to make a patch to that  libproxychains.c:291:5: error:
> conflicting types for 'getnameinfo'  error but I can't test it in arm
> because I don't
> have any real arm machine here and my poor hard drive is already so
> stuffed that building arm qemu-image would be difficult
>  :-(
>
> But I will take a look of this
>
> Stefan
>
>
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Stefan Fröberg - Jan. 8, 2013, 6:57 p.m.
8.1.2013 19:09, Thomas Petazzoni kirjoitti:
> Dear Stefan Fröberg,
>
> On Sun, 23 Dec 2012 02:20:29 +0200, Stefan Fröberg wrote:
>> Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
>> ---
>>  package/Config.in                  |    1 +
>>  package/proxychains/Config.in      |    7 +++++++
>>  package/proxychains/proxychains.mk |   10 ++++++++++
>>  3 files changed, 18 insertions(+), 0 deletions(-)
>>  create mode 100644 package/proxychains/Config.in
>>  create mode 100644 package/proxychains/proxychains.mk
> This new package generates the following build failure:
>
>   http://autobuild.buildroot.org/results/7364b557c1fea642a3631c4735dd93f02ba70dd5/build-end.log
>
> Can you try to investigate and see if you can provide a patch to fix it?
>
> Thanks!
>
> Thomas


/bin/bash ../libtool --mode=compile /home/test/test/output1/host/usr/bin/arm-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I. -I..   -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -Os  -c core.c
mkdir .libs
mkdir .libs
mkdir: cannot create directory `.libs': File exists
 /home/test/test/output1/host/usr/bin/arm-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I. -I.. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -Os -Wp,-MD,.deps/core.pp -c core.c  -fPIC -DPIC -o .libs/core.o
 /home/test/test/output1/host/usr/bin/arm-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I. -I.. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -pipe -Os -Wp,-MD,.deps/libproxychains.pp -c libproxychains.c  -fPIC -DPIC -o .libs/libproxychains.o
libproxychains.c:291:5: error: conflicting types for 'getnameinfo'
In file included from libproxychains.c:26:0:
/home/test/test/output1/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/include/./netdb.h:679:12: note: previous declaration of 'getnameinfo' was here
make[4]: *** [libproxychains.lo] Error 1
make[4]: *** Waiting for unfinished jobs...

Hmmm... could this be a some weird parallel compiling problem ????
Thomas Petazzoni - Jan. 8, 2013, 7:18 p.m.
Dear Stefan Fröberg,

On Tue, 08 Jan 2013 20:57:07 +0200, Stefan Fröberg wrote:

> Hmmm... could this be a some weird parallel compiling problem ????

No. proxychains is a program that LD_PRELOAD a library to overload some
of the C library functions. So it reimplements some functions of the C
library, but in this case, it reimplements getnameinfo() with a
prototype that doesn't match the one of the C library.

Maybe an idea would be to upgrade to proxychains 4.4:
http://sourceforge.net/projects/proxychains/forums/forum/644747/topic/6519406.

The main page of proxychains mentions 3.1 as the latest version, but it
is not the case. The official Git repo at
https://github.com/rofl0r/proxychains contains many more recent
versions. Most likely the problem is already fixed in a more recent
version than 3.1.

Could you test a more recent version and submit the corresponding patch?

Thanks!

Thomas
Stefan Fröberg - Jan. 8, 2013, 7:31 p.m.
Hi Thomas

8.1.2013 21:18, Thomas Petazzoni kirjoitti:
> Dear Stefan Fröberg,
>
> On Tue, 08 Jan 2013 20:57:07 +0200, Stefan Fröberg wrote:
>
>> Hmmm... could this be a some weird parallel compiling problem ????
> No. proxychains is a program that LD_PRELOAD a library to overload some
> of the C library functions. So it reimplements some functions of the C
> library, but in this case, it reimplements getnameinfo() with a
> prototype that doesn't match the one of the C library.

That's really strange because it did match my headers and I had no problem.

> Maybe an idea would be to upgrade to proxychains 4.4:
> http://sourceforge.net/projects/proxychains/forums/forum/644747/topic/6519406.
>
> The main page of proxychains mentions 3.1 as the latest version, but it
> is not the case. The official Git repo at
> https://github.com/rofl0r/proxychains contains many more recent
> versions. Most likely the problem is already fixed in a more recent
> version than 3.1.
>
> Could you test a more recent version and submit the corresponding patch?
>
> Thanks!
>
> Thomas
Ok, Ill take a look and try a newer version.

Stefan
Stefan Fröberg - Jan. 8, 2013, 9:10 p.m.
Thomas, All.

This is something that I susbect most of you already know but I repeat
it here anyway:

Newer completely trust those free public proxies that are listed outside
in the Net.
Ever.

Some of them like https://hidemyass.com/proxy-list will offer free
"anonymous" proxies for your use.
I did some testing and found out that not single one of those so called
free high "anonymous" proxies in
that list did what it was suppose to do but happily revealed your true
IP-address.

Some free anonymous proxy sites on the other hand do what they promise
for example: http://www.freeproxylists.net/?pr=HTTPS&a[]=2&s=rs

Bottom line is this:
If you are using this proxychains program to bybass censorhip
(a' la Great Firewall of China, so that you can watch Youtube) of your
country then please take care
and *always test your proxy or proxies beforehand!!!*

There are plenty of sites like http://www.whatsmyip.org and others that
can show if your IP is the same
as proxy or if the proxy(proxies) will reveal your true IP.
(I even made one IP sniffing page myself
http://www.petroprogram.com/ProxyCheckSimple2.php )

So always remember to test those free proxies beforehand and newer do
any e-mail checking or online bank
stuff throught those proxies. Even if it's HTTPS enabled proxy.
Ever!

Regards
Stefan


8.1.2013 21:31, Stefan Fröberg kirjoitti:
> Hi Thomas
>
> 8.1.2013 21:18, Thomas Petazzoni kirjoitti:
>> Dear Stefan Fröberg,
>>
>> On Tue, 08 Jan 2013 20:57:07 +0200, Stefan Fröberg wrote:
>>
>>> Hmmm... could this be a some weird parallel compiling problem ????
>> No. proxychains is a program that LD_PRELOAD a library to overload some
>> of the C library functions. So it reimplements some functions of the C
>> library, but in this case, it reimplements getnameinfo() with a
>> prototype that doesn't match the one of the C library.
> That's really strange because it did match my headers and I had no problem.
>
>> Maybe an idea would be to upgrade to proxychains 4.4:
>> http://sourceforge.net/projects/proxychains/forums/forum/644747/topic/6519406.
>>
>> The main page of proxychains mentions 3.1 as the latest version, but it
>> is not the case. The official Git repo at
>> https://github.com/rofl0r/proxychains contains many more recent
>> versions. Most likely the problem is already fixed in a more recent
>> version than 3.1.
>>
>> Could you test a more recent version and submit the corresponding patch?
>>
>> Thanks!
>>
>> Thomas
> Ok, Ill take a look and try a newer version.
>
> Stefan
>
>
>
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Patch

diff --git a/package/Config.in b/package/Config.in
index 562bfda..47a281e 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -656,6 +656,7 @@  source "package/portmap/Config.in"
 source "package/pppd/Config.in"
 source "package/pptp-linux/Config.in"
 source "package/proftpd/Config.in"
+source "package/proxychains/Config.in"
 source "package/quagga/Config.in"
 source "package/radvd/Config.in"
 source "package/rp-pppoe/Config.in"
diff --git a/package/proxychains/Config.in b/package/proxychains/Config.in
new file mode 100644
index 0000000..332aa3b
--- /dev/null
+++ b/package/proxychains/Config.in
@@ -0,0 +1,7 @@ 
+config BR2_PACKAGE_PROXYCHAINS
+	bool "proxychains"
+	help
+	  force any tcp connections to flow through a proxy (or proxy chain)
+
+	  http://proxychains.sourceforge.net
+
diff --git a/package/proxychains/proxychains.mk b/package/proxychains/proxychains.mk
new file mode 100644
index 0000000..7c4500d
--- /dev/null
+++ b/package/proxychains/proxychains.mk
@@ -0,0 +1,10 @@ 
+#############################################################
+#
+# ProxyChains
+#
+#############################################################
+PROXYCHAINS_VERSION = 3.1
+PROXYCHAINS_SOURCE = proxychains-$(PROXYCHAINS_VERSION).tar.gz
+PROXYCHAINS_SITE = http://downloads.sourceforge.net/project/proxychains/proxychains/version%20$(PROXYCHAINS_VERSION)
+
+$(eval $(autotools-package))