Error: Macro TracNav(MainNav) failed
not all arguments converted during string formatting

Hydranode User Manual

Alo Sarv
Torsten Bergander
June 2005
Version 0.1


Table Of Contents

0. Quick Start
1. Main Manual
    1.1. Shell Command Reference
    1.2. Submit ed2k-Links from Browsers (Windows)
2. Troubleshooting
    2.1. Hydranode Does Not Respond
    2.2. Hydranode Shell Module Not Loading
    2.3. Temp Files Seem Gone


0. Quick Start

Here we describe for the experienced user how to get Hydranode off the ground in less than 1min (not including download time).

  1. Download the suitable version for your system here: http://hydranode.com/downloads.php .
  2. Unpack the archive.
  3. Change to the hydranode-<version> directory you just extracted.
  4. Start the executable binary there.
  5. Cross fingers :)

1. Main Manual

1.1. Shell Command Reference

There is already an excellent documentation available. Please head over to: Shell Command Reference

1.2. Submit ed2k-Links from Browsers (Windows)

1.2.1 With Hydranode 0.1.1

Although a quite common task to be supported, it is not as straight forward yet as one would imagine. However, there is a way to make the commonly used browsers submit ed2k-Links to Hydranode.

  1. You need to download a tool that is called netcat (nc). Last time we checked, it was available here: http://packetstormsecurity.nl/UNIX/netcat/nc11nt.zip
  2. Find the folder where hydranode.exe is located. This folder shall be called "Hydranode-Folder" in the following. In our example we will assume that the path of this folder is C:\Programs\hydranode-0.1.1. As your path will be most likely different, we will henceforth refer to it as "path of the Hydranode-Folder".
  3. Extract at least nc.exe from the archive you downloaded in step 1 and place it into the Hydranode-Folder.
  4. Create a file called hncmd.cmd in the Hydranode-Folder and edit this file to look like this (remember to use your path of the Hydranode-Folder):
    @echo off
    echo download %1 | C:\Programs\hydranode-0.1.1\nc.exe -w 1 localhost 9999
    
  5. Create another file called register_hncmd.reg in the Hydranode-Folder and edit it to look like this (again use your path and note the doubling of "\" to "\\" in the path of the Hydranode-Folder):
    REGEDIT4
    [HKEY_CLASSES_ROOT\ed2k]
    @="URL: ed2k Protocol"
    "URL Protocol"=""
    [HKEY_CLASSES_ROOT\ed2k\shell]
    [HKEY_CLASSES_ROOT\ed2k\shell\open]
    [HKEY_CLASSES_ROOT\ed2k\shell\open\command]
    @="\"C:\\Programs\\hydranode-0.1.1\\hncmd.cmd\" \"%1\""
    
  6. Create the last file called unregister_hncmd.reg in the Hydranode-Folder and edit it to look like this:
    REGEDIT4
    [-HKEY_CLASSES_ROOT\ed2k\shell\open\command]
    [-HKEY_CLASSES_ROOT\ed2k\shell\open]
    [-HKEY_CLASSES_ROOT\ed2k\shell]
    [-HKEY_CLASSES_ROOT\ed2k]
    

That was the hardpart. We now have the nc.exe tool that will talk to Hydranode, then we have hncmd.cmd which listens to the browser and talks to nc.exe. And finally two files to activate and deactivate the submission of ed2k-Links from the browser.

  • Enable ed2k-Link submission by
    • double-clicking the file register_hncmd.reg and
    • answering the following questions in the popup windows with first "yes" and then "ok".
  • Disable ed2k-Link submission by
    • double-clicking the file unregister_hncmd.reg and
    • answering the following questions in the popup windows with first "yes" and then "ok".

This solution was tested on Windows XP SP2 with Internet Explorer 6.0 and Firefox 1.0.4, but there are good chances that it works on different environments as well.

1.2.2 With Hydranode r1423 or later

Starting with this version, Hydranode comes with a tool called hnlink. This makes the usage of netcat and the batch file obsolete.

  1. Find the folder where hydranode.exe is located. This folder shall be called "Hydranode-Folder" in the following. In our example we will assume that the path of this folder is C:\Programs\hydranode-0.1.1. As your path will be most likely different, we will henceforth refer to it as "path of the Hydranode-Folder".
  2. Place hnlink.exe (from the build directory) into the Hydranode-Folder.
  3. Create a file called register_hncmd.reg in the Hydranode-Folder and edit it to look like this (again use your path and note the doubling of "\" to "\\" in the path of the Hydranode-Folder):
    REGEDIT4
    [HKEY_CLASSES_ROOT\ed2k]
    @="URL: ed2k Protocol"
    "URL Protocol"=""
    [HKEY_CLASSES_ROOT\ed2k\shell]
    [HKEY_CLASSES_ROOT\ed2k\shell\open]
    [HKEY_CLASSES_ROOT\ed2k\shell\open\command]
    @="\"C:\\Programs\\hydranode-0.1.1\\hlink.exe\" \"%1\""
    
  4. Create another file called unregister_hncmd.reg in the Hydranode-Folder and edit it to look like this:
    REGEDIT4
    [-HKEY_CLASSES_ROOT\ed2k\shell\open\command]
    [-HKEY_CLASSES_ROOT\ed2k\shell\open]
    [-HKEY_CLASSES_ROOT\ed2k\shell]
    [-HKEY_CLASSES_ROOT\ed2k]
    

Now we have everything in place to enable and disable link submission from the browsers:

  • Enable ed2k-Link submission by
    • double-clicking the file register_hncmd.reg and
    • answering the following questions in the popup windows with first "yes" and then "ok".
  • Disable ed2k-Link submission by
    • double-clicking the file unregister_hncmd.reg and
    • answering the following questions in the popup windows with first "yes" and then "ok".

This solution was tested on Windows XP SP2 with Internet Explorer 6.0 and Firefox 1.0.4, but there are good chances that it works on different environments as well.

2. Troubleshooting

This section provides help for these rare situations, where the Hydranode shows irregular behavior. Although the releases should not display any such oddities, you might run into some of the following situations. This holds true especially for scenarios with heavy load.

2.1. Hydranode Does Not Respond

Symptom: The telnet connection to the Hydranode core does not respond. In the Hydranode core output window, the status indicator seems to be frozen.

Cause: No, its not dead. Most likely Hydranode is doing internal maintenance. This takes quite some time, depending on the size and type of data being processed.

Solution: Be patient and don't kill Hydranode. After at most a 30-90 seconds it will be back to normal.

2.2. Hydranode Shell Module Not Loading

Symptom: Then starting Hydranode, the core output window shows an error code 126 when loading the hnsh module. The core keeps on initializing, but once finished, not telnet connection to the core is possible. But apart from that, the core seems to work fine.

Cause: Ok, you managed to build hydranode yourself. Depending on the version you checked out from SVN, you might get a module named mod_hnsh.dll (or similar on non-windows platform).

Solution: Kill the running core. Rename that module to hnsh.dll. And start the core again.

2.3 Temp Files Seem Gone

Symptom: After having moved the Hydranode tree or testing you own new Hydranode build in that tree, you moved back to the stable release. Right after starting the core again, the download list is empty.

Cause: Some versions of Hydranode show incorrect path handling. The config.ini file in the config subdirectory of the Hydranode tree gets corrupted and looks similar to this:

[SharedDirs]
Count=1
Dir_1=D:\path\to\hydranode.exe\config\incoming
[]
UpSpeedLimit=25600
Temp=D:\path\to\hydranode.exe\config\temp
LoadModules=ed2k hnsh
Incoming=D:\path\to\hydranode.exe\config\incoming
HNShell Port=9999
HNShell Listen IP=127.0.0.1
ConnectionLimit=50

Solution: Stop the Hydranode core. Edit the config.ini file and change all path occurences to einther the correct path for your environment, or simply use relative path names, similar as in the example below:

[SharedDirs]
Count=1
Dir_1=config\incoming
[]
UpSpeedLimit=25600
Temp=config\temp
LoadModules=ed2k hnsh
Incoming=config\incoming
HNShell Port=9999
HNShell Listen IP=127.0.0.1
ConnectionLimit=50