Lots of changes
- ncdc 1.6 released - ncdc FAQ updates - 3 new images for /dump/nccol - added my final report to /doc - added ncdc-transfer-stats and ncdc-share-report to /dump
This commit is contained in:
parent
f1f08a5fe0
commit
0a8812e31a
11 changed files with 316 additions and 213 deletions
|
|
@ -1,135 +1,158 @@
|
|||
1.6 - 2011-12-07
|
||||
- Use SQLite3 for storage instead of GDBM
|
||||
- Converted config.ini to SQLite3 database
|
||||
- Added ncdc-db-upgrade utility
|
||||
- Session directory is architecture-independent
|
||||
- All data is safe against crashes and power failures
|
||||
- Added support for removing/adding directories without rehashing
|
||||
- Always match every file list on 'Q' key on TTH search
|
||||
- Immediately flush log entries to the kernel
|
||||
- Faster start-up
|
||||
- Added support for per-hub 'active_ip' settings
|
||||
- Allow interval notation when setting autorefresh
|
||||
- Broadcast SF (number of shared files) on ADC hubs
|
||||
- Combine TTH data for downloaded files to blocks of at least 1MiB
|
||||
- Increased hash buffer size (10KiB -> 512KiB)
|
||||
- Fix case-insensitivity of search results
|
||||
- Fix reporting of user state in pm tabs at hub disconnect
|
||||
- Fix generation of client certificates with openssl
|
||||
- Fix segfault with duplicate users on an ADC hub
|
||||
- Fix segfault when opening of a filelist fails
|
||||
- Fix base32 decoding bug (fixes login sequence on some ADC hubs)
|
||||
|
||||
1.5 - 2011-11-03
|
||||
- Added filelist_maxage setting
|
||||
- Added flush_file_cache setting
|
||||
- Added /ungrant and improved /grant management
|
||||
- Added key to download queue to clear user state for all files
|
||||
- Added keys to search results to download file list and match queue
|
||||
- Select the right user when using the 'q' key in connection tab
|
||||
- Fixed possible crash when opening file list from search results
|
||||
- Fixed detection of incompatible session directory version
|
||||
- Added filelist_maxage setting
|
||||
- Added flush_file_cache setting
|
||||
- Added /ungrant and improved /grant management
|
||||
- Added key to download queue to clear user state for all files
|
||||
- Added keys to search results to download file list and match queue
|
||||
- Select the right user when using the 'q' key in connection tab
|
||||
- Fixed possible crash when opening file list from search results
|
||||
- Fixed detection of incompatible session directory version
|
||||
|
||||
1.4 - 2011-10-26
|
||||
- Added sorting functionality to file list
|
||||
- Added color settings: title, separator, list_default, list_header and list_select
|
||||
- Added "blink" color attribute
|
||||
- Allow /disconnect to be used on the main tab
|
||||
- Display number of matched and added items when using match queue feature
|
||||
- Use git-describe to create a version string, if available
|
||||
- Decreased memory usage for large file lists
|
||||
- Handle duplicate filenames in other users' file list
|
||||
- Fixed incorrect setting of the "Incomplete" flag in files.xml.bz2
|
||||
- Fixed handling of the PM param in MSG commands on ADC
|
||||
- Fixed user change notifications for PM tabs
|
||||
- Added sorting functionality to file list
|
||||
- Added color settings: title, separator, list_default, list_header and
|
||||
list_select
|
||||
- Added "blink" color attribute
|
||||
- Allow /disconnect to be used on the main tab
|
||||
- Display number of matched and added items when using match queue feature
|
||||
- Use git-describe to create a version string, if available
|
||||
- Decreased memory usage for large file lists
|
||||
- Handle duplicate filenames in other users' file list
|
||||
- Fixed incorrect setting of the "Incomplete" flag in files.xml.bz2
|
||||
- Fixed handling of the PM param in MSG commands on ADC
|
||||
- Fixed user change notifications for PM tabs
|
||||
|
||||
1.3 - 2011-10-14
|
||||
- Added multi-source downloading
|
||||
- Added user information view and management keys to download queue tab
|
||||
- Added "search for alternative" key to queue, file browser and search tabs
|
||||
- Added "match queue" key to file browser and search tabs
|
||||
- Added ui_time_format setting
|
||||
- Added chat_only setting
|
||||
- Changed default value of color_log_time to dark grey
|
||||
- Improved tracking of a parent for each tab
|
||||
- Improved portability for Solaris
|
||||
- Fixed crash when closing a hub tab while it is connecting
|
||||
- Fixed crash when auto-completing settings without auto-completion
|
||||
- Fixed bug with file name display if download_dir ends with a slash
|
||||
- Fixed bug with uploading chunks larger than 2GiB
|
||||
- Fixed handling of directory search results on ADC
|
||||
- Added multi-source downloading
|
||||
- Added user information view and management keys to download queue tab
|
||||
- Added "search for alternative" key to queue, file browser and search tabs
|
||||
- Added "match queue" key to file browser and search tabs
|
||||
- Added ui_time_format setting
|
||||
- Added chat_only setting
|
||||
- Changed default value of color_log_time to dark grey
|
||||
- Improved tracking of a parent for each tab
|
||||
- Improved portability for Solaris
|
||||
- Fixed crash when closing a hub tab while it is connecting
|
||||
- Fixed crash when auto-completing settings without auto-completion
|
||||
- Fixed bug with file name display if download_dir ends with a slash
|
||||
- Fixed bug with uploading chunks larger than 2GiB
|
||||
- Fixed handling of directory search results on ADC
|
||||
|
||||
1.2 - 2011-09-25
|
||||
- Fixed incorrect handling of outgoing NMDC connections
|
||||
- Fixed incorrect handling of outgoing NMDC connections
|
||||
|
||||
1.1 - 2011-09-25
|
||||
- Select item in file browser when opened from a search result
|
||||
- Added active_bind setting
|
||||
- Added share_exclude setting
|
||||
- Added download_exclude setting
|
||||
- Added incoming_dir setting
|
||||
- Added autocompletion for the previous values of certain settings
|
||||
- Allow the "connection" setting to be used for ADC as well
|
||||
- Added IP column to user list
|
||||
- Allow sorting on description, email, tag and IP columns in user list
|
||||
- Display upload speeds in the user list of an ADC hub
|
||||
- Added TLS indication to connection list
|
||||
- Mark selected items bold in listings
|
||||
- Allow /reconnect on the main tab to reconnect all hubs
|
||||
- Added slash to base path in partial file lists
|
||||
- Added delay of 5 seconds before reconnecting to a hub
|
||||
- Added recognition of the AP param on ADC
|
||||
- Added support for UserIP2 on NMDC
|
||||
- Removed support for unexpected incoming NMDC connections
|
||||
- Select item in file browser when opened from a search result
|
||||
- Added active_bind setting
|
||||
- Added share_exclude setting
|
||||
- Added download_exclude setting
|
||||
- Added incoming_dir setting
|
||||
- Added autocompletion for the previous values of certain settings
|
||||
- Allow the "connection" setting to be used for ADC as well
|
||||
- Added IP column to user list
|
||||
- Allow sorting on description, email, tag and IP columns in user list
|
||||
- Display upload speeds in the user list of an ADC hub
|
||||
- Added TLS indication to connection list
|
||||
- Mark selected items bold in listings
|
||||
- Allow /reconnect on the main tab to reconnect all hubs
|
||||
- Added slash to base path in partial file lists
|
||||
- Added delay of 5 seconds before reconnecting to a hub
|
||||
- Added recognition of the AP param on ADC
|
||||
- Added support for UserIP2 on NMDC
|
||||
- Removed support for unexpected incoming NMDC connections
|
||||
|
||||
1.0 - 2011-09-16
|
||||
- Added ncdc(1) and ncdc-gen-cert(1) manual pages
|
||||
- Documented settings (/help set <setting>)
|
||||
- Documented key bindings (/help keys)
|
||||
- Improved line wrapping algorithm for the log window
|
||||
- Added support for client-to-client TLS on NMDC
|
||||
- Added support for the CGFI command on ADC
|
||||
- Throttle GET requests on the same file + offset
|
||||
- Fixed glib assertion failure when disabling active mode
|
||||
- Fixed downloading from clients using $ADCSND with -1 bytes
|
||||
- Fixed race condition in file uploading code
|
||||
- Fixed idle time calculation while connecting to another client
|
||||
- Properly include unistd.h in dl.c
|
||||
- Added ncdc(1) and ncdc-gen-cert(1) manual pages
|
||||
- Documented settings (/help set <setting>)
|
||||
- Documented key bindings (/help keys)
|
||||
- Improved line wrapping algorithm for the log window
|
||||
- Added support for client-to-client TLS on NMDC
|
||||
- Added support for the CGFI command on ADC
|
||||
- Throttle GET requests on the same file + offset
|
||||
- Fixed glib assertion failure when disabling active mode
|
||||
- Fixed downloading from clients using $ADCSND with -1 bytes
|
||||
- Fixed race condition in file uploading code
|
||||
- Fixed idle time calculation while connecting to another client
|
||||
- Properly include unistd.h in dl.c
|
||||
|
||||
0.9 - 2011-09-03
|
||||
- Added TLS support (adcs://, nmdcs://, and ADC client-to-client)
|
||||
- Added tls_policy setting
|
||||
- Added KEYP support for ADC
|
||||
- Added warning when a hub changes TLS certificate
|
||||
- Display exact listen ports when enabling active mode
|
||||
- Added TLS support (adcs://, nmdcs://, and ADC client-to-client)
|
||||
- Added tls_policy setting
|
||||
- Added KEYP support for ADC
|
||||
- Added warning when a hub changes TLS certificate
|
||||
- Display exact listen ports when enabling active mode
|
||||
|
||||
0.8 - 2011-08-26
|
||||
- Added transfer log
|
||||
- Added log_downloads and log_uploads settings
|
||||
- Added day changed indicators to the log windows
|
||||
- Added common readline keys to the text input box
|
||||
- Changed /refresh shortcut from Ctrl+e/u to Alt+r
|
||||
- Allow join messages to work even when the join completion detection fails
|
||||
- Select parent tab when closing a userlist, PM or filelist tab
|
||||
- Re-open log files when receiving SIGUSR1
|
||||
- Perform a clean shutdown when the terminal is closed
|
||||
- Fixed bug in formatting the title of a /search tab
|
||||
- Fixed log indent for non-ASCII nicks
|
||||
- Fixed log highlighting and indenting for /me messages
|
||||
- Added transfer log
|
||||
- Added log_downloads and log_uploads settings
|
||||
- Added day changed indicators to the log windows
|
||||
- Added common readline keys to the text input box
|
||||
- Changed /refresh shortcut from Ctrl+e/u to Alt+r
|
||||
- Allow join messages to work even when the join completion detection fails
|
||||
- Select parent tab when closing a userlist, PM or filelist tab
|
||||
- Re-open log files when receiving SIGUSR1
|
||||
- Perform a clean shutdown when the terminal is closed
|
||||
- Fixed bug in formatting the title of a /search tab
|
||||
- Fixed log indent for non-ASCII nicks
|
||||
- Fixed log highlighting and indenting for /me messages
|
||||
|
||||
0.7 - 2011-08-17
|
||||
- Added word wrapping for the log window
|
||||
- Added basic colors and nick highlighting to the log window
|
||||
- Allow colors to be changed with the /set command
|
||||
- Added backlog feature and setting
|
||||
- Added silent building to the configure script
|
||||
- Automatically re-open log files when they are moved/truncated externally
|
||||
- Accept 'nmdc://' URLs as alternative to 'dchub://'
|
||||
- Fixed spamming of useless $MyINFO and BINF commands every 5 minutes
|
||||
- Fixed minor memory leak when closing/clearing the log window
|
||||
- Added word wrapping for the log window
|
||||
- Added basic colors and nick highlighting to the log window
|
||||
- Allow colors to be changed with the /set command
|
||||
- Added backlog feature and setting
|
||||
- Added silent building to the configure script
|
||||
- Automatically re-open log files when they are moved/truncated externally
|
||||
- Accept 'nmdc://' URLs as alternative to 'dchub://'
|
||||
- Fixed spamming of useless $MyINFO and BINF commands every 5 minutes
|
||||
- Fixed minor memory leak when closing/clearing the log window
|
||||
|
||||
0.6 - 2011-08-08
|
||||
- Added file searching, through a /search command
|
||||
- Added tab to display the search results
|
||||
- Listen for incoming messages on UDP in active mode
|
||||
- Allow specifying a hub address with /open
|
||||
- Fixed case-sensitivity of shared files
|
||||
- Various bugfixes and other improvements
|
||||
- Added file searching, through a /search command
|
||||
- Added tab to display the search results
|
||||
- Listen for incoming messages on UDP in active mode
|
||||
- Allow specifying a hub address with /open
|
||||
- Fixed case-sensitivity of shared files
|
||||
- Various bugfixes and other improvements
|
||||
|
||||
0.5 - 2011-08-02
|
||||
- Downloaded files are now TTH-checked
|
||||
- Added download queue priorities
|
||||
- Download queue items are automatically disabled on error
|
||||
- Improved error handling and reporting for downloads
|
||||
- Added download_slots setting
|
||||
- Use a separate thread to load other users' file list
|
||||
- Improved /gc to also clean up download queue related data
|
||||
- Decreased memory usage for large file lists
|
||||
- Improved error handling with sendfile()
|
||||
- Fixed downloading in passive mode on ADC hubs
|
||||
- Fixed adding a dir to the download queue while connected to the user
|
||||
- Fixed segfault when the userlist is open while disconnecting from a hub
|
||||
- Downloaded files are now TTH-checked
|
||||
- Added download queue priorities
|
||||
- Download queue items are automatically disabled on error
|
||||
- Improved error handling and reporting for downloads
|
||||
- Added download_slots setting
|
||||
- Use a separate thread to load other users' file list
|
||||
- Improved /gc to also clean up download queue related data
|
||||
- Decreased memory usage for large file lists
|
||||
- Improved error handling with sendfile()
|
||||
- Fixed downloading in passive mode on ADC hubs
|
||||
- Fixed adding a dir to the download queue while connected to the user
|
||||
- Fixed segfault when the userlist is open while disconnecting from a hub
|
||||
|
||||
0.4 - 2011-07-23
|
||||
- Added file downloading support.
|
||||
- Added file downloading support
|
||||
WARNING: Downloaded files are not TTH checked at this moment.
|
||||
- Added persistent download queue
|
||||
- Added busy indicators on start-up and with /gc
|
||||
|
|
|
|||
37
dat/ncdc-faq
37
dat/ncdc-faq
|
|
@ -50,19 +50,26 @@ up-to-date client that still uses any of these features.
|
|||
This is for Ubuntu 11.10, but may work for other versions as well. Run the
|
||||
following command:
|
||||
|
||||
sudo apt-get install libbz2-dev libgdbm-dev\
|
||||
libncursesw5-dev libxml2-dev libglib2.0-dev gnutls-bin
|
||||
sudo apt-get install libbz2-dev libsqlite3-dev\
|
||||
libncursesw5-dev libxml2-dev libglib2.0-dev
|
||||
|
||||
And then follow the instructions in the README.
|
||||
|
||||
|
||||
=head2 I'm getting the error "No PEM-encoded private key found" on startup
|
||||
=head2 Ncdc uses too much disk space!
|
||||
|
||||
Most likely this is caused by a L<bug in
|
||||
glib-networking|https://bugzilla.gnome.org/show_bug.cgi?id=664321>. To get
|
||||
around it, install the "certtool" utility that comes with gnutls (package
|
||||
"gnutls-bin" on Ubuntu), delete the old certificates (C<rm ~/.ncdc/cert/*>),
|
||||
and then start ncdc again.
|
||||
First, look where this disk space goes to (hint: use
|
||||
L<ncdu|http://dev.yorhel.nl/ncdu>). If it's the log files: you can safely
|
||||
delete or rotate them (see next question).
|
||||
|
||||
The I<db.sqlite3> file can also grow quite large in certain situations. If you
|
||||
modify or rename a lot of files in your share and ncdc re-hashes them, the old
|
||||
hash data associated with the files is not removed from the database, resulting
|
||||
in wasted disk space. The C</gc> command in ncdc can be used to clean up this
|
||||
unused data. Be warned, however, that this command needs roughly twice the size
|
||||
of the old db.sqlite3 file for temporary storage, so make sure you have enough
|
||||
space available. (Note that this behaviour is not specific to ncdc, most other
|
||||
DC clients do the same.)
|
||||
|
||||
|
||||
=head2 Why doesn't ncdc rotate log files automatically?
|
||||
|
|
@ -73,6 +80,15 @@ L<this is the script I use|http://p.blicky.net/s7132>, which is run as a
|
|||
monthly cron job.
|
||||
|
||||
|
||||
=head2 I'm getting the error "No PEM-encoded private key found" on startup
|
||||
|
||||
(This issue should have been fixed in 1.6) Most likely this is caused by a
|
||||
L<bug in glib-networking|https://bugzilla.gnome.org/show_bug.cgi?id=664321>. To
|
||||
get around it, install the "certtool" utility that comes with gnutls (package
|
||||
"gnutls-bin" on Ubuntu), delete the old certificates (C<rm ~/.ncdc/cert/*>),
|
||||
and then start ncdc again.
|
||||
|
||||
|
||||
|
||||
=head1 Can ncdc...
|
||||
|
||||
|
|
@ -123,6 +139,7 @@ myself, though. I just run ncdc directly on my router. :-)
|
|||
|
||||
=head2 Are there any programs available for analyzing the transfers.log file?
|
||||
|
||||
Nothing like that is included in the release yet, but there is a simple
|
||||
Perl script available: L<ncdc-transfer-stats|http://p.blicky.net/agolr>.
|
||||
Nothing like that is included in the release yet, but there is a simple Perl
|
||||
script available: L<ncdc-transfer-stats|http://p.blicky.net/agolr>, and a short
|
||||
Go program: L<ncdc-share-report|http://p.blicky.net/6yx2d>.
|
||||
|
||||
|
|
|
|||
160
dat/ncdc-man
160
dat/ncdc-man
|
|
@ -38,13 +38,13 @@ GETTING STARTED
|
|||
/set active true
|
||||
|
||||
See the help text for each of the commands and settings for more information.
|
||||
Of course, all of the above settings are saved to the configuration file and
|
||||
will be used again on the next run.
|
||||
Of course, all of the above settings are saved to the database and will be used
|
||||
again on the next run.
|
||||
|
||||
To connect to a hub, use /open:
|
||||
/open ncdc adc://dc.blicky.net:2780/
|
||||
Here `ncdc' is the personal name you give to the hub, and the second argument
|
||||
the URL. This URL will be saved in the config file, so the next time you want to
|
||||
the URL. This URL will be saved in the database, so the next time you want to
|
||||
connect to this hub, you can simply do:
|
||||
/open ncdc
|
||||
See the help text for '/open' and '/connect' for more information. If you want
|
||||
|
|
@ -88,7 +88,7 @@ INTERACTIVE COMMANDS
|
|||
/accept
|
||||
Use this command to accept the TLS certificate of a hub. This command is
|
||||
used only in the case the keyprint of the TLS certificate of a hub does
|
||||
not match the keyprint stored in the configuration file.
|
||||
not match the keyprint stored in the database.
|
||||
|
||||
/browse [[-f] <user>]
|
||||
Without arguments, this opens a new tab where you can browse your own
|
||||
|
|
@ -133,22 +133,27 @@ INTERACTIVE COMMANDS
|
|||
|
||||
/gc
|
||||
Cleans up unused data and reorganizes existing data to allow more effi‐
|
||||
cient storage and usage. Currently, this commands cleans up hashdata.dat
|
||||
and dl.dat, removes unused files in inc/ and old files in fl/.
|
||||
cient storage and usage. Currently, this commands removes unused hash
|
||||
data, does a VACUUM on db.sqlite3, removes unused files in inc/ and old
|
||||
files in fl/.
|
||||
|
||||
This command may take some time to complete, and will fully block ncdc
|
||||
while it is running. You won't have to perform this command very often.
|
||||
This command may take some time to complete, and will fully block ncdc
|
||||
while it is running. It is recommended to run this command every once in
|
||||
a while. Every month is a good interval. Note that when ncdc says that it
|
||||
has completed this command, it's lying to you. Ncdc will still run a few
|
||||
large queries on the background, which may take up to a minute to com‐
|
||||
plete.
|
||||
|
||||
/grant [-list|<user>]
|
||||
Grant someone a slot. This allows the user to download from you even if
|
||||
you have no free slots. The slot will be granted for as long as ncdc
|
||||
Grant someone a slot. This allows the user to download from you even if
|
||||
you have no free slots. The slot will be granted for as long as ncdc
|
||||
stays open or the /ungrant command is used. If you restart ncdc, the user
|
||||
will have to wait for a regular slot. Unless, of course, you /grant a
|
||||
will have to wait for a regular slot. Unless, of course, you /grant a
|
||||
slot again.
|
||||
|
||||
To get a list of users whom you have granted a slot, use `/grant' without
|
||||
arguments or with `-list'. Be warned that using `/grant' without argu‐
|
||||
ments on a PM tab will grant the slot to the user you are talking with.
|
||||
arguments or with `-list'. Be warned that using `/grant' without argu‐
|
||||
ments on a PM tab will grant the slot to the user you are talking with.
|
||||
Make sure to use `-all' in that case.
|
||||
|
||||
Note that a granted slot is specific to a single hub. If the same user is
|
||||
|
|
@ -162,20 +167,20 @@ INTERACTIVE COMMANDS
|
|||
|
||||
|
||||
/kick <user>
|
||||
Kick a user from the hub. This command only works on NMDC hubs, and you
|
||||
Kick a user from the hub. This command only works on NMDC hubs, and you
|
||||
need to be an OP to be able to use it.
|
||||
|
||||
/me <message>
|
||||
This allows you to talk in third person. Most clients will display your
|
||||
This allows you to talk in third person. Most clients will display your
|
||||
message as something like:
|
||||
** Nick is doing something
|
||||
|
||||
Note that this command only works correctly on ADC hubs. The NMDC proto‐
|
||||
col does not have this feature, and your message will be sent as-is,
|
||||
Note that this command only works correctly on ADC hubs. The NMDC proto‐
|
||||
col does not have this feature, and your message will be sent as-is,
|
||||
including the /me.
|
||||
|
||||
/msg <user> [<message>]
|
||||
Send a private message to a user on the currently opened hub. If no mes‐
|
||||
Send a private message to a user on the currently opened hub. If no mes‐
|
||||
sage is given, the tab will be opened but no message will be sent.
|
||||
|
||||
/nick [<nick>]
|
||||
|
|
@ -183,19 +188,19 @@ INTERACTIVE COMMANDS
|
|||
|
||||
/open [-n] <name> [<address>]
|
||||
Opens a new tab to use for a hub. The name is a (short) personal name you
|
||||
use to identify the hub, and will be used for storing hub-specific con‐
|
||||
use to identify the hub, and will be used for storing hub-specific con‐
|
||||
figuration.
|
||||
|
||||
If you have specified an address or have previously connected to a hub
|
||||
from a tab with the same name, /open will automatically connect to the
|
||||
If you have specified an address or have previously connected to a hub
|
||||
from a tab with the same name, /open will automatically connect to the
|
||||
hub. Use the `-n' flag to disable this behaviour.
|
||||
|
||||
See /connect for more information on connecting to a hub.
|
||||
|
||||
/password <password>
|
||||
This command can be used to send a password to the hub without saving it
|
||||
to the config file. If you wish to login automatically without having to
|
||||
type /password every time, use '/set password <password>'. Be warned,
|
||||
This command can be used to send a password to the hub without saving it
|
||||
to the database. If you wish to login automatically without having to
|
||||
type /password every time, use '/set password <password>'. Be warned,
|
||||
however, that your password will be saved unencrypted in that case.
|
||||
|
||||
/pm <user> [<message>]
|
||||
|
|
@ -208,24 +213,24 @@ INTERACTIVE COMMANDS
|
|||
Quit ncdc. You can also just hit ctrl+c, which is equivalent.
|
||||
|
||||
/reconnect
|
||||
Reconnect to the hub. When your nick or the hub encoding have been
|
||||
Reconnect to the hub. When your nick or the hub encoding have been
|
||||
changed, the new settings will be used after the reconnect.
|
||||
|
||||
This command can also be used on the main tab, in which case all con‐
|
||||
This command can also be used on the main tab, in which case all con‐
|
||||
nected hubs will be reconnected.
|
||||
|
||||
/refresh [<path>]
|
||||
Initiates share refresh. If no argument is given, the complete list will
|
||||
be refreshed. Otherwise only the specified directory will be refreshed.
|
||||
The path argument can be either an absolute filesystem path or a virtual
|
||||
Initiates share refresh. If no argument is given, the complete list will
|
||||
be refreshed. Otherwise only the specified directory will be refreshed.
|
||||
The path argument can be either an absolute filesystem path or a virtual
|
||||
path within your share.
|
||||
|
||||
/say <message>
|
||||
Sends a chat message to the current hub or user. You normally don't have
|
||||
Sends a chat message to the current hub or user. You normally don't have
|
||||
to use the /say command explicitly, any command not staring with '/' will
|
||||
automatically imply `/say <command>'. For example, typing `hello.' in the
|
||||
command line is equivalent to `/say hello.'. Using the /say command
|
||||
explicitly may be useful to send message starting with '/' to the chat,
|
||||
command line is equivalent to `/say hello.'. Using the /say command
|
||||
explicitly may be useful to send message starting with '/' to the chat,
|
||||
for example `/say /help is what you are looking for'.
|
||||
|
||||
/search [options] <query>
|
||||
|
|
@ -239,7 +244,7 @@ INTERACTIVE COMMANDS
|
|||
-t <t> File must be of type <t>. (see below)
|
||||
-tth <h> TTH root of this file must match <h>.
|
||||
|
||||
File sizes (<s> above) accept the following suffixes: G (GiB), M (MiB)
|
||||
File sizes (<s> above) accept the following suffixes: G (GiB), M (MiB)
|
||||
and K (KiB).
|
||||
|
||||
The following file types can be used with the -t option:
|
||||
|
|
@ -251,13 +256,13 @@ INTERACTIVE COMMANDS
|
|||
6 img Image files.
|
||||
7 video Video files.
|
||||
8 dir Directories.
|
||||
Note that file type matching is done using file extensions, and is not
|
||||
Note that file type matching is done using file extensions, and is not
|
||||
very reliable.
|
||||
|
||||
/set [<key> [<value>]]
|
||||
Get or set configuration variables. Use without arguments to get a list
|
||||
of all settings and their current value. Changes to the settings are
|
||||
automatically saved to the config file, and will not be lost after
|
||||
Get or set configuration variables. Use without arguments to get a list
|
||||
of all settings and their current value. Changes to the settings are
|
||||
automatically saved to the config file, and will not be lost after
|
||||
restarting ncdc.
|
||||
|
||||
To get information on a particular setting, use `/help set <key>'.
|
||||
|
|
@ -265,33 +270,35 @@ INTERACTIVE COMMANDS
|
|||
/share [<name> <path>]
|
||||
Use /share without arguments to get a list of shared directories.
|
||||
When called with a name and a path, the path will be added to your share.
|
||||
Note that shell escaping may be used in the name. For example, to add a
|
||||
Note that shell escaping may be used in the name. For example, to add a
|
||||
directory with the name `Fun Stuff', you could do the following:
|
||||
/share "Fun Stuff" /path/to/fun/stuff
|
||||
Or:
|
||||
/share Fun\ Stuff /path/to/fun/stuff
|
||||
|
||||
The full path to the directory will not be visible to others, only the
|
||||
name you give it will be public. An initial `/refresh' is done automati‐
|
||||
The full path to the directory will not be visible to others, only the
|
||||
name you give it will be public. An initial `/refresh' is done automati‐
|
||||
cally on the added directory.
|
||||
|
||||
/ungrant [<username>|<id>]
|
||||
Revoke a granted slot.
|
||||
|
||||
/unset [<key>]
|
||||
This command can be used to reset a configuration variable back to its
|
||||
This command can be used to reset a configuration variable back to its
|
||||
default value.
|
||||
|
||||
/unshare [<name>]
|
||||
To remove a single directory from your share, use `/unshare <name>', to
|
||||
To remove a single directory from your share, use `/unshare <name>', to
|
||||
remove all directories from your share, use `/unshare /'.
|
||||
|
||||
Note that all hash data for the removed directories will be thrown away.
|
||||
All files will have to be re-hashed again when the directory is later re-
|
||||
added.
|
||||
Note that the hash data associated with the removed files will remain in
|
||||
the database. This allows you to re-add the files to your share without
|
||||
needing to re-hash them. The downside is that the database file may grow
|
||||
fairly large with unneeded information. See the `/gc' command to clean
|
||||
that up.
|
||||
|
||||
/userlist
|
||||
Opens the user list of the currently selected hub. Can also be accessed
|
||||
Opens the user list of the currently selected hub. Can also be accessed
|
||||
using Alt+u.
|
||||
|
||||
/version
|
||||
|
|
@ -304,46 +311,45 @@ INTERACTIVE COMMANDS
|
|||
|
||||
SETTINGS
|
||||
The following is a list of configuration settings. These settings can be changed
|
||||
and queried using the `/set' command, and are stored in the config.ini file in
|
||||
and queried using the `/set' command, and are stored in the db.sqlite3 file in
|
||||
the session directory.
|
||||
|
||||
active <boolean>
|
||||
Enables or disables active mode. Make sure to set `active_ip' and
|
||||
Enables or disables active mode. Make sure to set `active_ip' and
|
||||
`active_port' before enabling active mode.
|
||||
|
||||
active_bind <string>
|
||||
IP address to bind to in active mode. When unset, ncdc will bind to all
|
||||
IP address to bind to in active mode. When unset, ncdc will bind to all
|
||||
interfaces.
|
||||
|
||||
active_ip <string>
|
||||
Your public IP address for use in active mode. 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
|
||||
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.
|
||||
|
||||
Note that this setting is global for ncdc: it is currently not possible
|
||||
to use a single instance of ncdc to connect to both internet and LAN
|
||||
hubs, if you are not reachable on the same IP with both networks. In that
|
||||
case you can either use passive mode or run two separate instances of
|
||||
ncdc.
|
||||
Unlike the other connection-related settings, this can be changed on a
|
||||
per-hub basis, allowing you to have a different public IP address per
|
||||
hub.
|
||||
|
||||
active_port <integer>
|
||||
The listen port for incoming connections in active mode. Set to `0' to
|
||||
automatically assign a random port. If TLS support is available, another
|
||||
TCP port will be opened on the configured port + 1. Ncdc will tell you
|
||||
exactly on which ports it is listening for incoming packets. If you are
|
||||
behind a router or firewall, make sure that you have configured it to
|
||||
The listen port for incoming connections in active mode. Set to `0' to
|
||||
automatically assign a random port. If TLS support is available, another
|
||||
TCP port will be opened on the configured port + 1. Ncdc will tell you
|
||||
exactly on which ports it is listening for incoming packets. If you are
|
||||
behind a router or firewall, make sure that you have configured it to
|
||||
forward and allow these ports.
|
||||
|
||||
autoconnect <boolean>
|
||||
Set to true to automatically connect to the current hub when ncdc starts
|
||||
Set to true to automatically connect to the current hub when ncdc starts
|
||||
up.
|
||||
|
||||
autorefresh <integer>
|
||||
The time between automatic file refreshes, in minutes. Set to 0 to dis‐
|
||||
able automatically refreshing the file list. This setting also determines
|
||||
whether ncdc will perform a refresh on startup. See the `/refresh' com‐
|
||||
mand to manually refresh your file list.
|
||||
autorefresh <interval>
|
||||
The time between automatic file refreshes. Recognized suffices are 's'
|
||||
for seconds, 'm' for minutes, 'h' for hours and 'd' for days. Set to 0 to
|
||||
disable automatically refreshing the file list. This setting also deter‐
|
||||
mines whether ncdc will perform a refresh on startup. See the `/refresh'
|
||||
command to manually refresh your file list.
|
||||
|
||||
backlog <integer>
|
||||
When opening a hub or PM tab, ncdc can load a certain amount of lines
|
||||
|
|
@ -683,18 +689,17 @@ FILES
|
|||
should be generated automatically when ncdc starts up the first time, but
|
||||
can be generated manually using ncdc-gen-cert(1).
|
||||
|
||||
$NCDC_DIR/config.ini
|
||||
Main configuration file. It is recommended to use commands within ncdc
|
||||
instead of editing this file manually. In particular, do not edit this
|
||||
file while ncdc is running, otherwise you will lose your changes.
|
||||
$NCDC_DIR/db.sqlite3
|
||||
The database. This stores all configuration variables, hash data of
|
||||
shared files, download queue information and other state information.
|
||||
Manually editing this file with the `sqlite3' commandline tool is possi‐
|
||||
ble but discouraged. Any changes made to the database while ncdc is run‐
|
||||
ning will not be read, and may even get overwritten by ncdc.
|
||||
|
||||
$NCDC_DIR/dl/
|
||||
Directory where completed downloads are moved to by default. Can be
|
||||
changed with the `download_dir' configuration option.
|
||||
|
||||
$NCDC_DIR/dl.dat
|
||||
Stores information about the download queue.
|
||||
|
||||
$NCDC_DIR/files.xml.bz2
|
||||
Filelist containing a listing of all shared files.
|
||||
|
||||
|
|
@ -704,9 +709,6 @@ FILES
|
|||
ncdc. Old file lists are deleted automatically after a configurable
|
||||
interval. See the `filelist_maxage' configuration option.
|
||||
|
||||
$NCDC_DIR/hashdata.dat
|
||||
File information and hash data for shared files.
|
||||
|
||||
$NCDC_DIR/history
|
||||
Command history.
|
||||
|
||||
|
|
@ -750,8 +752,8 @@ AUTHOR
|
|||
|
||||
|
||||
SEE ALSO
|
||||
ncdc-gen-cert(1).
|
||||
ncdc-gen-cert(1), ncdc-db-upgrade(1).
|
||||
|
||||
|
||||
|
||||
ncdc-1.5 November 2011 ncdc(1)
|
||||
ncdc-1.6 December 2011 ncdc(1)
|
||||
|
|
|
|||
17
download/ncdc-1.6.tar.gz.asc
Normal file
17
download/ncdc-1.6.tar.gz.asc
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v1.4.11 (GNU/Linux)
|
||||
|
||||
iQIcBAABCgAGBQJO34UeAAoJEGI5TGmMJzn6wBkP/jZvIr0ylFoTwgSVEA9yaePk
|
||||
OcafdIaAuhJxk5b66cohmYSO5kkSWY9FtPtJYitdocLvzmLL5EkrOvY+WHCcBDcB
|
||||
kJa31ScqgfwXGIHbpaZU9aAwoU9uoAjzxoRalxCvQ3PHAp/l5i5NJMNxH2IpByRn
|
||||
Jr8Ufb6lj8Nkek9USl4NmYeK2LMQH/7q9FHr6gS82K1lJ0tNsYPYiBNF7eGjr1Bw
|
||||
pxoOthEtCbFeTIfJj2crM8UbQfXMsDFJHTbMmnh8dsAixIIpvT4CDR4Opaubp0Vc
|
||||
XdM+52W5EPPwGE8GdGc+r2X82LePB8zsjNmWoe7gGWH9nlMbH+IPDzsUj/oA+bj/
|
||||
L3T8/Uxs+uh/Jq3IX8v0WxMVcHVDIa8AE4yIRAs5apJwd9635V3CdDwGwIubHGXS
|
||||
GSSe7UjxZZ9sAIxwsmwgxamtW1+GjLEjzieuHQedVJNW2ObE8/pmpZfJBBDc0LqB
|
||||
wlpQsOzFH8R7y0HmB0VTnjerkbbaGKPOFVtYVFi04bjEc0J/XSXGWmHGT45Y0v7a
|
||||
Gs0ibEPjgTAZUQMjhj0U1qvv9cVmxJfsWwI9e48K1alCQy8rdwf+pF9PQYrzrlaB
|
||||
Sz90KQEuRM54H8VHWZg60Ba2YPv0S+xSqH8gbihdbxr6IEBLcUfkCmexzrudE5TV
|
||||
xMIJUXseGiv0A/C6K5pB
|
||||
=Z7Rl
|
||||
-----END PGP SIGNATURE-----
|
||||
1
download/ncdc-1.6.tar.gz.md5
Normal file
1
download/ncdc-1.6.tar.gz.md5
Normal file
|
|
@ -0,0 +1 @@
|
|||
99d5f58029c2676c38d417bf50632c3e ncdc-1.6.tar.gz
|
||||
1
download/ncdc-1.6.tar.gz.sha1
Normal file
1
download/ncdc-1.6.tar.gz.sha1
Normal file
|
|
@ -0,0 +1 @@
|
|||
e84831f08aa406134e14c5d14bce158d79b152dd ncdc-1.6.tar.gz
|
||||
BIN
img/nccol-osx-iterm2.png
Normal file
BIN
img/nccol-osx-iterm2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
BIN
img/nccol-osx-terminal.png
Normal file
BIN
img/nccol-osx-terminal.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
BIN
img/nccol-ubuntu.png
Normal file
BIN
img/nccol-ubuntu.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 31 KiB |
71
index.cgi
71
index.cgi
|
|
@ -56,6 +56,7 @@ sub home {
|
|||
E;
|
||||
end;
|
||||
h2 'Updates';
|
||||
b '2011-12-07'; txt ' ncdc 1.6 released!'; br;
|
||||
b '2011-11-26'; txt ' Added article section and the article on SQLite.'; br;
|
||||
b '2011-11-03'; txt ' ncdc 1.5 and ncdu 1.8 released!'; br;
|
||||
b '2011-10-26'; txt ' ncdc 1.4 released!'; br;
|
||||
|
|
@ -251,13 +252,14 @@ sub ncdc {
|
|||
|
||||
h2 'Get ncdc!';
|
||||
p;
|
||||
b 'Latest version:'; txt ' 1.5 (';
|
||||
$s->htmlDLLink('ncdc-1.5.tar.gz', 'download');
|
||||
b 'Latest version:'; txt ' 1.6 (';
|
||||
$s->htmlDLLink('ncdc-1.6.tar.gz', 'download');
|
||||
txt ' - '; a href => '/ncdc/changes', 'changes';
|
||||
txt ' - '; a href => 'https://sourceforge.net/projects/ncdc/files/ncdc/', 'mirror';
|
||||
txt ')'; br;
|
||||
txt 'You can also get the latest development version from ';
|
||||
a href => 'http://g.blicky.net/ncdc.git/', 'this git repository';
|
||||
txt 'The latest development version can be fetched from the git repository
|
||||
at '; code 'git://g.blicky.net/ncdc.git'; txt ' and is available for ';
|
||||
a href => 'http://g.blicky.net/ncdc.git/', 'online browsing';
|
||||
txt '. The README includes instructions to build ncdc. Check out the ';
|
||||
a href => '/ncdc/man', 'manual'; txt ' to get started.';
|
||||
br;br;
|
||||
|
|
@ -311,7 +313,7 @@ sub ncdc {
|
|||
h2 'Requirements';
|
||||
p;
|
||||
lit <<' E;';
|
||||
The following libraries are required: ncurses, bzip2, gdbm, glib2 and libxml2.<br />
|
||||
The following libraries are required: ncurses, bzip2, sqlite3, glib2 and libxml2.<br />
|
||||
For TLS support, you will need at least glib2 version 2.28.0 and
|
||||
glib-networking installed.<br />
|
||||
These dependencies should be easy to satisfy. Depending on your system, you
|
||||
|
|
@ -363,6 +365,8 @@ sub ncdcscr {
|
|||
my $s = shift;
|
||||
$s->htmlHeader(title => 'Screenshots', page => 'ncdc', tab => 'scr');
|
||||
p;
|
||||
txt 'Note: While these screenshots are from version 1.5, the latest version has only little visible changes.';
|
||||
br; br;
|
||||
txt 'Main chat';
|
||||
img src => '/img/ncdchub.png', class => 'scr', alt => 'Ncdc in the mainchat.';
|
||||
br;br;
|
||||
|
|
@ -497,6 +501,21 @@ sub docindex {
|
|||
p;
|
||||
txt '2011-11-26 - '; b 'Multi-threaded Access to an SQLite3 Database';
|
||||
txt ' ['; a href => '/doc/sqlaccess', 'HTML'; txt ' - '; a href => '/dat/sqlaccess', rel => 'nofollow', 'POD'; txt ']';
|
||||
br;
|
||||
txt '2010-06-02 - '; b 'Design and implementation of a compressed linked list library';
|
||||
txt ' ['; a href => '/download/doc/compll.pdf', 'PDF'; txt ']';
|
||||
br;br;
|
||||
txt q|Disclaimer: The last one isn't really an article. It's the report for the
|
||||
final project of my professional (HBO) bachelor of Electrical
|
||||
Engineering. I was very liberal with some terminology in this report. For
|
||||
example, "linked lists" aren't what you think they are, and I didn't even
|
||||
use the term "locality of reference" where I really should have. It was
|
||||
also written for an audience with little knowledge on the subject, so I
|
||||
elaborated on a lot of things that should be obvious for most people in
|
||||
the field. Then there is a lot of uninteresting overhead about the
|
||||
project itself, which just happened to be mandatory for this report.
|
||||
Nonetheless, if you can ignore these faults it's not such a bad read, if
|
||||
I may say so myself. :-)|;
|
||||
end;
|
||||
$s->htmlFooter;
|
||||
}
|
||||
|
|
@ -590,6 +609,25 @@ sub dump {
|
|||
E;
|
||||
a href => 'http://g.blicky.net/serika.git/tree/json.mll', 'source';
|
||||
end;
|
||||
|
||||
h2 'ncdc-transfer-stats';
|
||||
p;
|
||||
lit <<' E;';
|
||||
September 2011. <a href="/ncdc">ncdc</a> gained transfer logging features,
|
||||
and I wrote a quick Perl script to fetch some simple statistics from it.
|
||||
E;
|
||||
a href => 'http://p.blicky.net/agolr', 'source';
|
||||
end;
|
||||
|
||||
h2 'ncdc-share-report';
|
||||
p;
|
||||
lit <<' E;';
|
||||
December 2011. Playing around with the Go programming language, I wrote
|
||||
another transfer log parser and statistics generator for ncdc.
|
||||
<a href="http://p.blicky.net/6yx2d">latest source</a>
|
||||
(<a href="http://p.blicky.net/ab4lm">0.1</a>)
|
||||
E;
|
||||
end;
|
||||
$s->htmlFooter;
|
||||
}
|
||||
|
||||
|
|
@ -823,9 +861,9 @@ sub dumpnccolour {
|
|||
li 'Unfortunately, not all terminals are configured in such a way that all
|
||||
possible colours are readable. So as a developer you\'ll still have to
|
||||
support configurable colour schemes in your ncurses application. :-(';
|
||||
li 'None of the tested terminals make an attempt to change the foreground
|
||||
colour if it is (almost) invisible on the selected background colour. This
|
||||
can be a good thing or a bad thing, depending on what you want.';
|
||||
li 'On most terminals, setting the foreground and background colour to the
|
||||
same value without applying the A_BOLD attribute will make the text
|
||||
invisible. Don\'t rely on this, however, as this is not the case on OS X.';
|
||||
end;
|
||||
|
||||
h2 'Full screenshot';
|
||||
|
|
@ -839,13 +877,16 @@ sub dumpnccolour {
|
|||
|
||||
h2 'Screenshots';
|
||||
my @img = (
|
||||
'rox-b' => 'Arch Linux, Roxterm, Default color scheme',
|
||||
'rox-w' => 'Arch Linux, Roxterm, GTK color scheme',
|
||||
'rox-t' => 'Arch Linux, Roxterm, Tango color scheme',
|
||||
'rox-c' => 'Arch Linux, Roxterm, Modified Tango color scheme',
|
||||
xterm => 'Arch Linux, xterm (default settings)',
|
||||
debian => 'Debian Squeeze, VT (default settings)',
|
||||
fbsd => 'FreeBSD, VT (default settings)',
|
||||
'rox-b' => 'Arch Linux, Roxterm, Default color scheme',
|
||||
'rox-w' => 'Arch Linux, Roxterm, GTK color scheme',
|
||||
'rox-t' => 'Arch Linux, Roxterm, Tango color scheme',
|
||||
'rox-c' => 'Arch Linux, Roxterm, Modified Tango color scheme',
|
||||
xterm => 'Arch Linux, xterm (default settings)',
|
||||
ubuntu => 'Ubuntu 11.10, Gnome-terminal',
|
||||
debian => 'Debian Squeeze, VT (default settings)',
|
||||
fbsd => 'FreeBSD, VT (default settings)',
|
||||
'osx-terminal' => 'Mac OS X, Terminal',
|
||||
'osx-iterm2' => 'Mac OS X, iTerm2',
|
||||
);
|
||||
while(@img) {
|
||||
my($n, $t) = (shift(@img), shift(@img));
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
User-Agent: *
|
||||
Disallow: /download
|
||||
Disallow: /dat
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue