ncdc 1.15 released
This commit is contained in:
parent
94ae88d4b9
commit
c99ea0d9fc
10 changed files with 83 additions and 74 deletions
|
|
@ -45,7 +45,7 @@ On Debian and Ubuntu, that boils down to the following:
|
|||
|
||||
And for Arch Linux:
|
||||
|
||||
pacman -S base-devel perl-net-dbus
|
||||
pacman -S base-devel git perl-net-dbus
|
||||
|
||||
I've only tested things on Linux (glibc and L<musl|http://www.musl-libc.org>),
|
||||
but I intent to support more kinda-sane POSIX systems in the future as well.
|
||||
|
|
|
|||
18
dat/ncdc
18
dat/ncdc
|
|
@ -10,21 +10,17 @@ ncurses interface.
|
|||
|
||||
=item Latest version
|
||||
|
||||
1.14 ([dllink ncdc-1.14.tar.gz download]
|
||||
1.15 ([dllink ncdc-1.15.tar.gz download]
|
||||
- L<changes|http://dev.yorhel.nl/ncdc/changes>
|
||||
- L<mirror|https://sourceforge.net/projects/ncdc/files/ncdc/>)
|
||||
|
||||
Convenient static binaries for Linux:
|
||||
L<64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.14.tar.gz> -
|
||||
L<32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.14.tar.gz> -
|
||||
L<ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.14.tar.gz>.
|
||||
L<64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.15.tar.gz> -
|
||||
L<32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.15.tar.gz> -
|
||||
L<ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.15.tar.gz>.
|
||||
Check the L<installation instructions|http://dev.yorhel.nl/ncdc/install> for
|
||||
more info.
|
||||
|
||||
B<Note:> Compilation against glib versions older than 2.26.0 is broken in the
|
||||
1.14 release. Use the binaries above, compile the git version, or apply L<this
|
||||
patch|http://g.blicky.net/ncdc.git/commit?id=e6e0bc4> if you are affected.
|
||||
|
||||
=item Development version
|
||||
|
||||
The latest development version is available from git and can be cloned using
|
||||
|
|
@ -86,7 +82,9 @@ Common features all modern DC clients (should) have:
|
|||
|
||||
=item * Secure hub (adcs:// and nmdcs://) and client connections on both protocols,
|
||||
|
||||
=item * Bandwidth throttling.
|
||||
=item * Bandwidth throttling,
|
||||
|
||||
=item * IPv6 support.
|
||||
|
||||
=back
|
||||
|
||||
|
|
@ -127,8 +125,6 @@ clients, but which ncdc doesn't do. Yet.
|
|||
|
||||
=item * Segmented/parallel downloading,
|
||||
|
||||
=item * IPv6,
|
||||
|
||||
=item * NAT Traversal,
|
||||
|
||||
=item * OP features (e.g. client detection, file list scanning and other useful stuff for OPs),
|
||||
|
|
|
|||
|
|
@ -1,3 +1,24 @@
|
|||
1.15 - 2013-03-02
|
||||
- IPv6 support
|
||||
- Significantly shorten certificate creation time with old GnuTLS versions
|
||||
- Always enable tls_policy and sudp_policy by default
|
||||
- Link against libgcrypt if detected GnuTLS is older than 3.0
|
||||
- Add color_tab_active setting
|
||||
- Remove active_tls_port setting
|
||||
- Allow '-', '.' and '_' characters in hub names
|
||||
- Allow spaces before a command
|
||||
- Add Alt+backspace as alias for Ctrl+w
|
||||
- Add throttle for 'CGET tthl' requests
|
||||
- Don't throw away PMs from unknown users
|
||||
- Recognize mode field in $MyINFO without tag
|
||||
- Fix possible crash with C-C TLS and old GnuTLS versions
|
||||
- Fix old references to the removed ncdc-db-upgrade utility
|
||||
- Fix loading of file lists from Shareaza 2.6.0.0 and earlier
|
||||
- Fix handling of tab and carriage return in log window
|
||||
- Fix changing of download_dir/incoming_dir if either dir has been deleted
|
||||
- Fix compilation against glib < 2.26
|
||||
- Fix unclean C-C TLS disconnect on timeout
|
||||
|
||||
1.14 - 2012-11-04
|
||||
- Added BLOM support for ADC ('/hset adc_blom true' to enable it)
|
||||
- Added section on connection settings to man page
|
||||
|
|
|
|||
39
dat/ncdc-faq
39
dat/ncdc-faq
|
|
@ -79,43 +79,20 @@ press and release the 'Esc' key as a replacement for Alt-something. If you're
|
|||
on OS X, L<this stackoverflow answer|http://stackoverflow.com/a/438892>
|
||||
may be helpful.
|
||||
|
||||
|
||||
=head2 This "Generating certificates..." is taking ages!
|
||||
|
||||
When starting up ncdc for the first time, it will need to generate a TLS
|
||||
certificate. If you're on Linux, older versions of GnuTLS may use
|
||||
C</dev/random> to obtain random bytes. Unfortunately, this can be horribly
|
||||
slow, and in extreme cases it may take several hours before the certificate has
|
||||
been generated. GnuTLS does not provide a way to use a faster but less secure
|
||||
alternative, so here are some tips to speed it up or cheat a little.
|
||||
|
||||
B<Speed it up:> If you're on a desktop, the general advise is to do something
|
||||
else on the background so that Linux can generate more data. For example, move
|
||||
your mouse around a bit, go do some web surfing or play a game. Any activity
|
||||
might help. If you're on a server, you could try transferring some large data
|
||||
over the network.
|
||||
|
||||
B<Cheat:> If you have root access, you can probably trick GnuTLS by temporarily
|
||||
replacing C</dev/random> with something else. For example, run C<mv /dev/random
|
||||
/dev/random.old && ln /dev/urandom /dev/random> as root, then start ncdc as you
|
||||
normally would, let it generate the certificates, and then restore your
|
||||
modifications with C<mv /dev/random.old /dev/random>.
|
||||
If you're on Linux with ncdc 1.14 or older and a GnuTLS older than 3.0, then
|
||||
creating the certificates required access to C</dev/random> to obtain random
|
||||
data. This could take a while to complete, especially on headless servers and
|
||||
low-end devices. Updating to ncdc 1.15 should fix this.
|
||||
|
||||
|
||||
=head2 Ncdc crashes a lot!
|
||||
|
||||
Since version 1.13, the following crash is still possible:
|
||||
|
||||
=over
|
||||
|
||||
=item * You're using an old GnuTLS version (< 3.0, you can check this with
|
||||
C<ncdc --version>), and you have tls_policy enabled. To fix this, upgrade
|
||||
GnuTLS or use C</set tls_policy disabled>. (Bug
|
||||
L<#11|http://dev.yorhel.nl/ncdc/bug/11>).
|
||||
|
||||
=back
|
||||
|
||||
If you're running an older version of ncdc, please upgrade! If your ncdc is up
|
||||
to date and you still have a crash not described here, please report a bug.
|
||||
Ncdc 1.15 has no known bugs that may cause a crash. If you're running an older
|
||||
version of ncdc, please upgrade. If your ncdc is up to date and you still have
|
||||
a crash, please report a bug.
|
||||
|
||||
|
||||
=head2 Ncdc uses too much disk space!
|
||||
|
|
|
|||
|
|
@ -38,11 +38,11 @@ compiling and/or installing it, I also offer statically linked binaries:
|
|||
|
||||
=over
|
||||
|
||||
=item * L<Linux, 64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.14.tar.gz>
|
||||
=item * L<Linux, 64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.15.tar.gz>
|
||||
|
||||
=item * L<Linux, 32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.14.tar.gz>
|
||||
=item * L<Linux, 32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.15.tar.gz>
|
||||
|
||||
=item * L<Linux, ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.14.tar.gz>
|
||||
=item * L<Linux, ARM|http://dev.yorhel.nl/download/ncdc-linux-arm-1.15.tar.gz>
|
||||
|
||||
=back
|
||||
|
||||
|
|
@ -119,9 +119,9 @@ First install some required packages (as root):
|
|||
|
||||
Then, fetch the ncdc source tarball, extract and build as follows:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.14.tar.gz
|
||||
tar -xf ncdc-1.14.tar.gz
|
||||
cd ncdc-1.14
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.15.tar.gz
|
||||
tar -xf ncdc-1.15.tar.gz
|
||||
cd ncdc-1.15
|
||||
export PATH="$PATH:/usr/perl5/5.10.0/bin"
|
||||
./configure --prefix=/usr LDFLAGS='-L/usr/gnu/lib -R/usr/gnu/lib'
|
||||
make
|
||||
|
|
@ -169,9 +169,9 @@ required libraries:
|
|||
|
||||
Then run the following commands to download and install ncdc:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.14.tar.gz
|
||||
tar -xf ncdc-1.14.tar.gz
|
||||
cd ncdc-1.14
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.15.tar.gz
|
||||
tar -xf ncdc-1.15.tar.gz
|
||||
cd ncdc-1.15
|
||||
./configure --prefix=/usr
|
||||
make
|
||||
sudo make install
|
||||
|
|
@ -213,8 +213,8 @@ website|http://cygwin.com/> and use it to install the following packages:
|
|||
Then open a Cygwin terminal and run the following commands to download,
|
||||
compile, and install ncdc:
|
||||
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.14.tar.gz
|
||||
tar -xf ncdc-1.14.tar.gz
|
||||
cd ncdc-1.14
|
||||
wget http://dev.yorhel.nl/download/ncdc-1.15.tar.gz
|
||||
tar -xf ncdc-1.15.tar.gz
|
||||
cd ncdc-1.15
|
||||
./configure --prefix=/usr
|
||||
make install
|
||||
|
|
|
|||
33
dat/ncdc-man
33
dat/ncdc-man
|
|
@ -113,13 +113,11 @@ automatically, but in the event that this fails, you can also set it yourself:
|
|||
/set active_ip 13.33.33.7
|
||||
|
||||
If you are behind a NAT or firewall, you have to ensure that the port you
|
||||
configured is somehow allowed and/or forwarded. You have a lot of freedom in
|
||||
configuring ports within ncdc: The C<active_udp_port> setting is used for
|
||||
incoming UDP messages, the C<active_tls_port> setting is used for incoming
|
||||
encrypted TCP connections, and the C<active_port> setting is used as a default
|
||||
for the other two and for all incoming and unencrypted connections. Unlike
|
||||
other currently available Direct Connect clients, ncdc allows the TLS and TCP
|
||||
port to be the same, which tends to ease NAT configuration.
|
||||
configured is somehow allowed and/or forwarded. The C<active_port> setting is
|
||||
used for incoming TCP connections and UDP messages. You can configure a
|
||||
different UDP port with the C<active_udp_port> setting. Contrary to many toher
|
||||
Direct Connect clients, ncdc only uses a single port for incoming TCP and TLS
|
||||
connections; There is no separate port for TLS.
|
||||
|
||||
The C</listen> command can tell you which ports it expects to be forwarded, and
|
||||
for which hubs these ports will be used. It only lists hubs on which you are
|
||||
|
|
@ -374,15 +372,13 @@ Enables or disables active mode. You may have to configure your router and/or fi
|
|||
|
||||
=item B<active_ip> <string>
|
||||
|
||||
Your public IP address for use in active mode. If this is not set, ncdc will try to automatically get your IP address from the hub. If you do set this manually, it is important that other clients can reach you using this IP address. If you connect to a hub on the internet, this should be your internet (WAN) IP. Likewise, if you connect to a hub on your LAN, this should be your LAN IP.
|
||||
Your public IP address for use in active mode. If this is not set or set to '0.0.0.0' for IPv4 or '::' for IPv6, then ncdc will try to automatically get your IP address from the hub. If you do set this manually, it is important that other clients can reach you using this IP address. If you connect to a hub on the internet, this should be your internet (WAN) IP. Likewise, if you connect to a hub on your LAN, this should be your LAN IP.
|
||||
|
||||
Both an IPv4 and an IPv6 address are set by providing two IP addresses separated with a comma. When unset, '0.0.0.0,::' is assumed. Only the IP version used to connect to the hub is used. That is, if you connect to an IPv6 hub, then the configured IPv6 address is used and the IPv4 address is ignored.
|
||||
|
||||
=item B<active_port> <integer>
|
||||
|
||||
The listen port for incoming connections in active mode. Set to `0' to automatically assign a random port. This setting is by default also used for the UDP and TLS ports, see the `active_udp_port' and `active_tls_port' settings to change those. If you are behind a router or firewall, make sure that you have configured it to forward and allow these ports.
|
||||
|
||||
=item B<active_tls_port> <integer>
|
||||
|
||||
The listen port for incoming TLS connections in active mode. Incoming TLS connections by default use the same port as non-TLS connections, but when traffic shaping is in effect it may be beneficial to separate these ports. This setting has no effect when the `tls_policy' setting has been disabled.
|
||||
The listen port for incoming connections in active mode. Set to `0' to automatically assign a random port. This setting is by default also used for the UDP port, see the `active_tls_port' settings to change that. If you are behind a router or firewall, make sure that you have configured it to forward and allow these ports.
|
||||
|
||||
=item B<active_udp_port> <integer>
|
||||
|
||||
|
|
@ -423,6 +419,7 @@ The settings starting with the `color_' prefix allow you to change the interface
|
|||
log_join - color of join messages
|
||||
log_quit - color of quit messages
|
||||
separator - the list separator/footer bar
|
||||
tab_active - the active tab in the tab list
|
||||
tabprio_low - low priority tab notification color
|
||||
tabprio_med - medium priority tab notification color
|
||||
tabprio_high - high priority tab notification color
|
||||
|
|
@ -502,7 +499,9 @@ The directory where incomplete downloads are stored. This setting can only be ch
|
|||
|
||||
=item B<local_address> <string>
|
||||
|
||||
Specifies the address of the local network interface to use for connecting to the outside and for accepting incoming connections in active mode. When unset, ncdc will use the default gateway interface to connect to the outside world, and will bind to all interfaces (address 0.0.0.0) for incoming connections in active mode.
|
||||
Specifies the address of the local network interface to use for connecting to the outside and for accepting incoming connections in active mode. Both an IPv4 and an IPv6 address are set by providing two IP addresses separated with a comma. When unset, '0.0.0.0,::' is assumed.
|
||||
|
||||
If no IPv4 address is specified, '0.0.0.0' is added automatically. Similarly, if no IPv6 address is specified, '::' is added automatically. The address that is actually used depends on the IP version actually used. That is, if you're on an IPv6 hub, then ncdc will listen on the specified IPv6 address. Note that, even if the hub you're on is on IPv6, ncdc may still try to connect to another client over IPv4, at which point the socket will be bound to the configured IPv4 address.
|
||||
|
||||
=item B<log_debug> <boolean>
|
||||
|
||||
|
|
@ -818,7 +817,7 @@ directory at the same time.
|
|||
|
||||
=head1 LICENSE
|
||||
|
||||
Copyright (C) 2011-2012 Yoran Heling <projects@yorhel.nl>
|
||||
Copyright (C) 2011-2013 Yoran Heling <projects@yorhel.nl>
|
||||
|
||||
ncdc is distributed under the MIT license, please read the COPYING file for
|
||||
more information.
|
||||
|
|
@ -833,7 +832,3 @@ development hub at adc://dc.blicky.net:2780/.
|
|||
ncdc is written by Yoran Heling <projects@yorhel.nl>
|
||||
|
||||
Web: L<http://dev.yorhel.nl/ncdc>
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
L<ncdc-db-upgrade(1)>.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue