NicToolServer Change Log

GitHub

2.14 - 2012.03.30

2.13 - 2012.01.19

2.12 - 2012.01.04

2.11 - 2011.11.28

2.10

2.09

2.08

NOTICE: this version requires updating the database:
$ mysql -u nictool -p nictool < sql/upgrade/update_v2_08.sql

2.07

2.06

2.05

NOTICE: this version requires updating your SQL tables!

mysql -u nictool -p nictool < sql/upgrade/update_v2_05.sql

2.04

- added "use Apache2::SOAP to nictoolserver.conf (mps)
- djbdjb/nameserver/install.pl updates (rl)

2.03

- NicToolServer/Zone/Record/Sanity.pm - allow / character in TXT records

2.02

- NicToolServer/Response.pm - added mod_perl 2 check and use content_type instead of send_http_header if mod_perl 2.

2.01

- Added Copyright and Affero GPL license text to all source files
- Added files LICENSE & COPYING
- Updated files to reflect version 2.01
- sys/djb - make clean now cleans up nameserver/sample/nt_export_djb*
- consistent password among the variety of config files, now you can grep for it and change it everywhere at once.
- Added support for TXT records, now you can set up SPF records for email

2.00-rc1

-Protocol version is now specified via the "nt_protocol_version" parameter. This is an optional parameter. If specified NicToolServer will require that the version string is allowed
-Protocol version changed to 1.0. Only this version is supported in NicToolServer version 2.00.

Permissions

Entirely new permissions system.
The affected API functions are:
new_user, edit_user,get_user, new_group,edit_group,get_group
Nearly all actual function calls are affected, because certain actions may
not be allowed depending on a user's permissions.

Delegation

Zones and Zone Records can be delegated to sub groups with a certain set of permissions. (Affected API functions : delegate_zones, delegate_zone_records, edit_zone_delegation, edit_zone_record_delegation, delete_zone_delegation, delete_zone_record_delegation, get_delegated_zones, get_delegated_zone_records, get_zone_delegates, get_zone_record_delegates).

Usable Nameservers

Each Group now contains a list of Nameserver objects which are in effect delegated to the Group. Zones within the Group (and subgroups of the Group) can be published to any of these Nameservers.

API changes:

get_user - 'nt_user_id' now only parameter
save_user - DEPRECATED (see new_user and edit_user)
new_user - creates new user (params 'nt_group_id','username','email' required)
can have all permissions specifications or "inherit_group_permissions"==1 for inherited. edit_user - modifies existing user (params nt_user_id required)
save_group - DEPRECATED (see new_group edit_group)
new_group - creates new group (params 'nt_group_id' 'name' required. can have 'usable_nameservers' list of nameserver ids.)
edit_group- param nt_group_id required (can have usable_nameservers)
delete_group - only 'nt_group_id' parameter reqd.
save_zone - DEPRECATED (see new_zone edit_zone)
new_zone - 'nt_group_id' and 'zone' required (optional 'nameservers' list of nameservers to publish to)
edit_zone - nt_zone_id required (optional 'nameservers' list of nameserver ids)
- parameter "deleted" = '0' means undelete a deleted zone
get_zone_application_log REMOVED (it was never implemented but was enabled)
save_zone_record - DEPRECATED (use new_zone_record and edit_zone_record)
new_zone_record - 'nt_zone_id','name','ttl','address' are required
edit_zone_record - only 'nt_zone_record_id' is required

save_nameserver - DEPRECATED (use new_nameserver and edit_nameserver)
new_nameserver - 'nt_nameserver_id','address','name','service_type','output_format' are required
edit_nameserver - only 'nt_zone_record_id' is required
get_group_zones - parameter "search_deleted" = '1' means only look for deleted zones with the specified properties

API additions

error responses may contain 'error_desc' in addition to 'error_code' and 'error_msg', with a short description of the error.
XXX
get_group_permissions - req: nt_group_id
get_user_permissions - req: nt_user_id

delegate_zones - nt_group_id, nt_zone_id
delegate_zone_records - nt_group_id, nt_zone_record_id
edit_zone_delegation - nt_group_id, nt_zone_id
edit_zone_record_delegation - nt_group_id, nt_zone_record_id
delete_zone_delegation - nt_group_id, nt_zone_id
delete_zone_record_delegation - nt_group_id, nt_zone_record_id
get_delegated_zones - nt_group_id
get_delegated_zone_records - nt_group_id
get_zone_delegates - nt_zone_id
get_zone_record_delegates - nt_zone_record_id

Error Codes

These are now the error codes:
200 OK
300 Sanity Error
301 Required Parameters Missing
302 Some parameters were invalid
403 Invalid Username and/or Password
404 Access Permission Denied
500 Request for unknown action
501 Data transport Content-Type not supported
502 XML-RPC Parse Error
503 Method has been Deprecated
505 SQL Error
507 Internal Consistency Error
508 Internal Error
510 Incorrect Protocol Version
600 Failed to Complete Request
601 Object Not Found
700 Unknown Error

-Sanity checks for search/sort/paging parameters
-Sanity checks when creating Zones and Records to allow RFC 2317 style reverse lookup domains

Database Changes

added 3 tables: nt_delegate, nt_delegate_log, and nt_perm
changed: nt_user_global_log. added the fields: target,target_id,target_name. changed the field action to add more enum values ('delegated','recovered','modified delegation',and 'removed delegation')

-Many, many bug fixes.
-Creating or editing NS Records with 'name' set to the 'zone' of the enclosing zone will be disallowed (these records will be created automatically at export time). -gws

1.06

-err, somebody forgot to list the changes -gws
0.01 Fri Jan 26 10:42:19 2001
- original version; created by h2xs 1.20 with options
-X -n NicToolServer