SURF supports using the handle tools for an initial bulk upload, and only for an initial upload! This assists the user in populating a new handle prefix with the initially available data. The tool to use is the hdl-genericbatch and is supplied by the handle software. It's usage is described in the Handle Tech Manual in chapter 4.

This function allows a user to execute a batch file in the correct format. The following is an example of a batch file /tmp/initial_bulk with 2 handles. It prerequisites the following:

  • the user has created a private/public keypair and the public key has been uploaded in a predefined handle. In this example the public key has been put in: 21.T12995/USER01 at index 310. These values are provided by SURF.
AUTHENTICATE PUBKEY:310:21.T12995/USER01
/<path_to_private_key>/21.T12995_USER01_310_privkey.bin

CREATE 21.T12995/12345678901
1   URL      86400 1110 UTF8 http://www.test.com/bundle_test1
100 HS_ADMIN 86400 1110 ADMIN 200:110011111110:0.NA/21.T12995

CREATE 21.T12995/12345678902
1   URL      86400 1110 UTF8 http://www.test.com/bundle_test2
100 HS_ADMIN 86400 1110 ADMIN 200:110011111110:0.NA/21.T12995

Each handle value line is composed of:

  • value_index + space + value_type + space + ttl + space + permission_ set + space + value_data

This format is described in the Handle Tech Manual chapter 4.9.

Owner must be set to correct prefix

When creating a batch file the the user will need to make sure the owner is set to the correct prefix. Otherwise you will not be able to update the handle anymore.

Once the batch file has been created you can run it:

/<path_to_hdl-genericbatch>/hdl-genericbatch /tmp/initial_bulk /tmp/initial_bulk.log

This will setup a connection to a primary handle server and upload the new handles. The automated mirroring will replicate the handles to other primary handle servers and mirror systems. Because of the implementation of the handle tool (hdl-genericbatch) you are not able to control which primary handle system will be used to upload the handles. This is why we only support this for an initial upload. The logfile will show if everything went fine.

Afterwards it will show 2 new handles:

  • 21.T12995/12345678901
  • 21.T12995/12345678902

These 2 new handles will consist of 2 records each:

  • index 1 : URL url in the handle
  • index 100 : HS_ADMIN owner of the handle