Creating a DC++ version in Java

Problems compiling? Don't understand the source code? Don't know how to code your feature? Post here.

Moderator: Moderators

Locked
DJViking
Posts: 3
Joined: 2006-09-24 16:46

Creating a DC++ version in Java

Post by DJViking » 2006-09-24 16:59

I was thinking about programming a Java DC client based upon DC++, appearance, functions and features. Yes I know there exist a Java DC client, but this one is far from complete or very functional(I have tried both JavaDC and JavaDC3). But JavaDC3 has potential.

I mostly want to do this because I like DC++ and want it for Linux(The linux DC clients I have tried, I do not like, nor is complete, finished).

How is the best way to do this
1. Code a Java DC client from scratch with NMDC/ADC protocol support?
2. Port DC++ C++ code to Java?
3. Use DC++ C++ code with Java JNI?

ivulfusbar
Posts: 506
Joined: 2003-01-03 07:33

Post by ivulfusbar » 2006-09-24 23:33

1) Ofcourse....
Everyone is supposed to download from the hubs, - I don´t know why, but I never do anymore.

TheParanoidOne
Forum Moderator
Posts: 1420
Joined: 2003-04-22 14:37

Re: Creating a DC++ version in Java

Post by TheParanoidOne » 2006-09-25 00:20

DJViking wrote:I mostly want to do this because I like DC++ and want it for Linux(The linux DC clients I have tried, I do not like, nor is complete, finished).
Have you tried LinuxDC++? It's a fairly complete port of DC++.
The world is coming to an end. Please log off.

DC++ Guide | Words

DJViking
Posts: 3
Joined: 2006-09-24 16:46

Re: Creating a DC++ version in Java

Post by DJViking » 2006-09-25 09:35

TheParanoidOne wrote:
DJViking wrote:I mostly want to do this because I like DC++ and want it for Linux(The linux DC clients I have tried, I do not like, nor is complete, finished).
Have you tried LinuxDC++? It's a fairly complete port of DC++.
Well, it seems like a fairly good DC client, but since it do not have an installer of some sort I was kinda stuck(using cvs, and could not find all its dependencies).

Mummy
Posts: 9
Joined: 2006-09-13 06:19

Post by Mummy » 2006-09-25 11:00

it's btw in debian testing (july version) and unstable (september) ;o)
but it seems that it lacks of support of some newer dc++-features like SSL

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-09-26 06:53

Its core is DC++ 0.691, so it has SSL.

Mummy
Posts: 9
Joined: 2006-09-13 06:19

Post by Mummy » 2006-09-26 13:34

are you sure? would be great...

but i see no ssl/tls library used.. that has not a lot to say, of course
ldd /usr/bin/linuxdcpp
linux-gate.so.1 => (0xffffe000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xa7f9a000)
libz.so.1 => /usr/lib/libz.so.1 (0xa7f86000)
libbz2.so.1.0 => /lib/libbz2.so.1.0 (0xa7f75000)
libglade-2.0.so.0 => /usr/lib/libglade-2.0.so.0 (0xa7f5d000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xa7c73000)
libxml2.so.2 => /usr/lib/libxml2.so.2 (0xa7b5a000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xa7ad9000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xa7abf000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xa7aa8000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xa7aa0000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xa7a76000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xa7a68000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0xa7a60000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xa7a5d000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xa7a54000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xa7a50000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xa7a47000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xa7a42000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xa7a08000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0xa79a6000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xa78de000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xa78a4000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xa78a1000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xa789d000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xa780b000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xa7807000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xa7726000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xa7701000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xa76f6000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xa75c2000)
/lib/ld-linux.so.2 (0xa7fc5000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xa7597000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xa752c000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xa750d000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xa750a000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xa74e6000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xa74e1000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xa74d7000)

are you just guessing or do you know it? i noticed that you're a developer (or contributor) of it, so i assume you know what you're saying.. so... how can it be controlled? i found no settings, at least..

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-09-27 06:11

Well, it doesn't utilize YaSSL (like DC++ does), nor is there any setting inside of LinuxDC++. Granted, yassl isn't included in the package, but I assume (1) LinuxDC++ should be able to utilize Linux's built-in capabilites or (2) adding yassl (as DC++ has) to the build process would "add" SSL.

There is no one here that are developing YaSSL. It's a stand alone project not asscociated with us. The SSL stuff required for DC++ to do SSL is in client/ which LinuxDC++ does utilize.

Mummy
Posts: 9
Joined: 2006-09-13 06:19

Post by Mummy » 2006-09-27 10:08

ah ok.. well.. is dc++ using the openssl compatibility layer of yassl (ssh.h)? so it can easily be compiled with openssl support (i think u mean that with linux' built-in capabilities) instead of yassl..?

or to cut a long story short:
does one just has to ./configure linuxdcpp with an ssl-option pointing to openSSL or is it deactivated in the source and someone has to explicitly integrate it in linuxdcpp? (if so, i could take a look)


oh, and sorry for asking so many questions ;o)

TheParanoidOne
Forum Moderator
Posts: 1420
Joined: 2003-04-22 14:37

Post by TheParanoidOne » 2006-09-27 15:01

Mummy wrote:does one just has to ./configure linuxdcpp with an ssl-option pointing to openSSL or is it deactivated in the source and someone has to explicitly integrate it in linuxdcpp? (if so, i could take a look)
The linuxdc++ mailing list would know for definite.
The world is coming to an end. Please log off.

DC++ Guide | Words

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-09-27 15:27

Or possibly #linuxdc++ on Freenode.

DJViking
Posts: 3
Joined: 2006-09-24 16:46

Post by DJViking » 2006-10-06 18:32

Is there any available source code for a Java DC++ client I could use? I can't see to find any source code for JavaDC, JavaDC2 or JavaDC3

I have not seen the C++ source code for DC++, but is there any chance of reuse of its core DC++ code on to Java?

GargoyleMT
DC++ Contributor
Posts: 3212
Joined: 2003-01-07 21:46
Location: .pa.us

Post by GargoyleMT » 2006-10-06 19:44

DJViking wrote:Java DC++ client
Please drop the ++ - the network is "Direct Connect".

You're better off writing your code from scratch, especially since you will want to include support for ADC if you're maintaining compatibility with DC++. Java versions, at this point, will have very serious interoperability issues with recent versions of DC++. The ones I know about have no support for TTH hashing, XML file lists, and $ADCGET support. You may want to refer to the wiki (see the header for this page), since the Protocol is documented fairly well there.

Locked