2005/11/15 v2.9.4
	-lib/XML_Codec.pm
	* perl 5.8 utf-8 workaround for XML::Parser utf-8 contamination
	  client now can work under perl >=  5.008

	- cgi/verify_install.cgi
	* perl 5.8/5.6 Crypt:CBC vs CBC for DES encryption

	- lib/OpenSRS/CBC_Connector.pm   
	* perl 5.8/5.6 Crypt:CBC vs CBC for DES encryption

	-client/etc/OpenSRS.conf
	* HTTP default encoding to has more control over what is sent 
	  by web-server (under mod_perl/CGI.pm,...)
	
	-cgi/ca_reg.cgi
	* if Country  is CA - check the province/territory

	-cgi/manage.cgi
	* HTTP charset header as per OpenSRS.conf
	* misspelled word 'changeble' to 'changeable'
	    for backward compatibility the API response contains 
	    both version of the word

	-cgi/renew.cgi
	* when .CA domain renewed then admin contact is used instead of owner


2005/11/15 v2.9.3
	-cgi/manage.cgi
	* .uk - removed tech contact
		admin/billing - only first/last name and email mandatory

	-cgi/reg_system.cgi
	* .uk - tech contact optional
		admin/billing - only first/last name and email mandatory

2005/09/02 v2.9.2
	- cgi/xpackmanage.cgi
	* requests in progress for XPACK tlds

	- lib/OpenSRS/Util/Canada.pm (ca_reg.cgi)
	* Municipality prefixes (removed township, district, police)

	- lib/OpenSRS/Language.pm (reg_system.cgi)
	* allowed languages for .ORG IDN domains

	- cgi/dns_manage.cgi
	* fixed toggling of the "URL Frame" option in Domain Forwarding

	- cgi/wsb.cgi
	* now passes user first and last name to Websiste Builder
	* modified validation of FTP username	
	* syntax change from Brand URL to Brand Hostname	

2005/05/06 v2.9.1
	- cgi/xpackmanage.cgi
	    * new TLD added (mx dk pl)

	* country code list based on ISO list
          unified usage of country codes

	* bug-fixes and code clean-up

2005/05/06 v2.9
	- cgi/manage.cgi
	    * Whois privacy on/off

	- cgi/reg_system.cgi
	    * new flag f_whois_privacy to register Whois privacy
	    with domain registration/transfer

	- cgi/renew.cgi
	    * Whois privacy Enabled/Disabled displaying 

	- cgi/whois_privacy.cgi
	    * Standalone Whois privacy registration
			    

2005/04/07 v2.8.9
	- cgi/xpackmange.cgi
	    * new TLD added (it, at, be)

	- cgi/wsb.cgi
	    * Website bulder reference implementation script

2005/01/28 v2.8.8

	- lib/OpenSRS/XML_Client.pm
	    * new API call to cancel new .CA order that has not been 
	        confirmed by registrant.

	- etc/OpenSRS.conf
	    * new field 'cwa' in CA_EXTRA_FIELDS

	- cgi/manage.cgi
	    * setting of change Without Approval (CWA) flag through 
	      organization contact changes screen for .CA.

	    * .CC/.TV back to regular manage.cgi
	    * switch to new cgi to manage .NL/.FR/.CH domains
		(xpackmanage.cgi)

	    * Simplified for to change nameserver for domain

	    * Inaccurate whois warning 

	-cgi/reg_syste.cgi
	    * .TV registry do not report premium .TV domains as available
	      therefore functionality removed

	    * bulk orders for .TV  
	    * IDN .ORG/.BIZ/.CC/.TV

2004/11/12 v2.8.7
	- cgi/reg_system.cgi
	    * bug fix (language tag is not required for transfer of IDN domains)

	- cgi/ca_reg.cgi
	    * new CIRA web whois url for conflicting domain names 

	- cgi/manage.cgi
	    * temporary switch to new cgi to manage .CC/.TV domains
		(xpackmanage.cgi)

2004/10/04 v2.8.6
	- cgi/emaildefense.cgi
	    * Bug fixes

	- lib/OpenSRS/CBC_Connector.pm
	    * Detailed output for 'Unrecognized Peer' error

	- lib/OpenSRS/TPP_Client.pm
	    * Protocol version upgrade

	- lib/OpenSRS/XML_Client.pm
	    * new API call to check .CA new domain order status
	    * new API call to get list of domains with expiration date 
	      within specified range. List of domains limited to the RSP.
	      No registrant authentication is required


2004/08/23 v2.8.5
	- reg_system.cgi
	    * IDN .DE support

	- renew.cgi
	    * Bug fixes

2004/07/13 v2.8.4
	- OpenSRS.conf 
	    * new settings for OpenSRS conversion server connection:
		REMOTE_IDN_HOST
		REMOTE_IDN_PORT
		IDN_ENCODING_TYPE
		IDN_CONVERSION_TOOL_LINK
	    * removed $UNIVERSAL_ENCODING_TYPE.	

	- verify_install.pl 
	    *includes new tests for IDN conversion support:
		1. Check if IDN conversion library locally installed
		2. Check connection to OSRS IDN conversion server
		3. Check conversion from Punycode to Native
		4. Check conversion from Native to Punycode
	- manage.cgi
	    * removed IDN and RACE conversions. Punycode domain name 
	    must be used to manage domains.

	- renew.cgi
	    * removed IDN and RACE conversions. Punycode domain name 
	    must be used to renew domains.
	    # send password feature implemented (similar to manage.cgi)

	- reg_system.cgi
	    * replaced RACE conversions with IDN conversions	

	- RACE.cgi REMOVED	
	- Punycode.cgi ADDED
	- OpenSRS::Language.pm 
	    * utf8_to_puny renamed to native_to_puny
	    * puny_to_utf8 renamed to puny_to_native
	    * Net::LibIDN not required to be installed locally (OSRS 
	    IDN conversion service will be used if Net::LibIDN not present)
	- directory templates/RACE renamed to templates/PUNYCODE 

	- antispam.cgi
	    * Email defense client implementation

	- OpenSRS::Util::Session.pm
	    * fixed a bug with serialization with Data::Dumper with
	      references to the same object

2004/05/21 v2.8.3.1
	-reg_system.cgi
	    * TLD and ccTLD specific contact validation functionality restored
	      (was broken in 2.8.2.1)
	    * .UK transfer with contact change

2004/05/06 v2.8.3
	This distribution contains unsupported IDN functionality
	(see 2.8.2.1) 

	- manage.cgi 
	    * Option to unlock domain befor enameserver changes
	    * UK whois opt-out
	    * UK Domain tag change request
	    * Bulk contact update report email field

	- reg_system.cgi
	    * UK transfers in with(out) contact changes.
	    
	- renew.cgi
	    * send password feature as in manage.cgi

	- verify_install.cgi
	    * check for optional modules

	- OpenSRS.conf
	    * new .UK tlds

	bug fixes for manage.cgi, reg_cert.cgi, CBC_Connector.pm, 
		      HTTPS_Connector.pm

2004/04/12 v2.8.2.1-unsupported

	- RACE.cgi converts IDN names UTF-*, RACE , Punycode
		   Net::LibIDN perl package is a prerequisite
		   (http://www.gnu.org/software/libidn/)

	- reg_system.cgi convert UTF-8 name into punycode
	  OpenSRS::Langauge.pm implements (Net::LibIDN dependent)
		utf8_to_puny() 
		puny_to_utf8()
	  RACE encoding support removed
	  encoding_type field in API sw_register may contain language tag

2004/03/31 v2.8.2
	- reg_email.cgi has been modified not to use query email as
	  the means to obtain contact information. Instead we're 
	  using query contact command.
	-  Bug fix in RACE converstion tables (affected Greek alphabet)
	- Bug fix in XML_Codec.pm. During data convertion to XML
	  the source data were changed and this cuased a problem with 
	  resubmiting the request with &"'<> symbols in data 
	- dns_manage.cgi
	* '.' Automatically added for record entries
	* Improved error messaging
	* Enhanced Zone Retrieve functionality
	* Domain forwarding optionally set for www subdomain
	* Additional entry option for MX and A records
	* Improved navigation between zone management
	* Various bug fixes

	

2004/01/13 v2.8.1

	- changes to manage.cgi for uk 'domains extra': added option
	  to hide/display personal contact information in Nominet's whois
	- removed communication layer from TPP_Client.pm and XML_Client.pm
	  and added new packages for communication: CBC_Communicator.pm
	  and HTTPS_Communicator.pm
	- new flags in OpenSRS.conf: connection_type and REMOTE_HTTPS_PORT.
	- changes to verify_install.pl to cover testing of different types
	  of connection [HTTPS,CBC].
	- changes to reg_email.cgi to replace crypted string method
	  of keeping order data with session variables.
	- new configuration flags $F_SHOW_CC_FIELDS  for reg_system.cgi, 
	  reg_email.cgi, reg_cert.cgi, ca_reg.cgi
	- bug fixes
	    manage.cgi
	    - list of countries based 
	      on new package lib/OpenSRS/Country 
	      (derived from CPAN Locale::Country)
	    - flag  $MANAGE{show_auto_renew}
	    - fixed sorting feature in view expiring/expired domains

	    reg_email.cgi
	    - session as in ca_reg.cgi and templates changes
	    

	    reg_system.cgi
	    - list of countries based 
	      on new package lib/OpenSRS/Country 
	      (derived from CPAN Locale::Country)

	    renew.cgi
	    - invalid username/passowrd error handling

	    verify_install.cgi
	    -check authentication for CBC::Blowfish and HTTPS

2003/12/15 v2.8.0
	- changes to reg_email, reg_email's templates, and Email.conf
	- changes to reg_cert, and cert_info.html template, to display
	  warning that CSR for IIS should be replaced with the new CSR
	  when renewing the cert
	- restored the commented-out 'process => handle' line for bulk
	  transfer
  
2003/08/29 v2.78
	- minor bug fixes

2003/07/16 v2.77
	- various bug fixes.
	- added a number of new server types to Cert.conf

2003/06/09 v2.76
	- added .de transfer and renewal functionality
	- .de owner info can now be modified

2003/04/10 v2.75
	- added .de registration/management capabilities
	- misc. changes to the reg_cert's templates
	- new 'renewals_enabled' config parameter added to etc/Cert.conf
	- renewal handling added to reg_cert.cgi
	- reg_cert.cgi now uses cookie-based authentication
	- new configuration file etc/Renewals.conf used (by tpp_renew.cgi)
	- tpp_renew.cgi added (it works in conjunction with reg_cert.cgi)
	- get_renewable_items() and get_item() calls added to TPP_Client.pm
	- "Special Intrustions" handling in reg_cert.cgi
	- Fix spelling of "Organizaiton" in manage.cgi
	- Added contact reusability to reg_cert.cgi
	- get_user_contacts() call added to TPP_Client.pm
	- New syntax for "get approvers list" api call in reg_certs.cgi
	- Moved %EMAIL_REG_PERIODS from TPP_Client.pm to Email.conf
	- Added response_converter to TPP_Client creation in reg_email.cgi
	- Removed sub build_list_from_file in TPP_Client.pm
	- Replaced CSR generation instructions link with alink to a white 
	  labled version
	    
2003/03/14 v2.74
	- Added .uk renewal capability
	- Changed $RENEW{capability}->{.uk} = 1 in OpenSRS.conf
	- Modified renew_domain_menu.html, view_expire_domains.html
	  to add some information for .uk
	- Added ability to set-up handling of missadressed emails when
          purchasing first email account on particular domain - reg_email.cgi

2003/03/10 v2.73
	- Changed template templates/ca_reg/complete_municipal.html

2003/02/27 v2.72
	- Added a capability to register second level .cn domains.	
	- Updates of "Thank you notes" for email purchase. Both text and html
	  versions have been updated

2003/02/24 v 2.71
	- IMPORTANT! reg_system.cgi: remove support for old, coupon based 
          certs purchasing system.
        - Added support for up to 100M email boxes for email client
	- Miscelaneous bug fixes

2003/02/10 v2.7
	- Miscelaneous bug fixes
	- Email and certs client are now included
	- In Email and Cert client, contact_set attribute has been moved
	  one level up from product_data to create_items. Until now, the
	  server was accepting both possibilities, from now on it will
	  accept only the proper one.

2002/12/10 v2.62
	- Added .name renewal capability
	- renew.cgi now displays forwarding email information with a new
	  html template: renew_domain_menu_name.html
	- Removed .name from renew_domain_menu.html
	- Changed $RENEW{capability}->{.name} = 1 in OpenSRS.conf

2002/12/10 v2.61
	- Added version number to OpenSRS.conf file.  This is used by
	  verify_install.cgi to report client version.  Note that this should
	  never be modified manually, else it will cause a delay or
	  inaccuracies in getting a support response.
	- Added $manage{password_send_to} and $manage{password_send_subuser}
	  to etc/OpenSRS.conf.  These work along with allow_password_requests
	  to determine which contact the password is sent to, and whether the
	  main or the sub-user password is sent.
	- Changed url from mailhelp.webmaillogin.com to help.webmaillogin.com
	  in templates/reg_email/register_results.html
	
2002/11/22 v2.6
	- Added registration script for Digital Certificates. New files:
	    cgi/reg_cert.cgi, cgi/cert.css, etc/Cert.conf, templates/reg_cert/*
	    
2002/11/15 v2.59
	- Added flag $REG_SYSTEM{ F_SUPPORT_CERTS } to etc/OpenSRS.conf. If
	  set, purchase certificate operations will be allowed from within
	  reg_system.cgi.

	- It is recommended that you use the latest version of Digest::MD5
 	  with the ca_reg.cgi component.  Session handling works best with
	  v2.20 or higher.

	- new reference implementation for registering .ca domains
	  (ca_reg.cgi). New configuration parameter added (OpenSRS.conf) 
	  to  specify log files location.
	  New attributes added to sw_register command to specify how to 
	  register .ca domain.
 
	- fixed bug with sending email from reg_system.cgi, renew.cgi 
	  when running under Apache::Registry (OpenSRS/Util/Common.pm).

	- New attribute added into response on sw_register command 
	  (admin_email address). The attribure is used to send 'thank_you' 
	  email when new .ca domain is registered for an 
          existing CIRA registrant. The attribute is returned for all tlds

2002/08/27 v2.58
	- Modified scripts to use get_domain, type => expire_action and
	  modify_domain, data => expire_action instead of the deprecated
	  get_domain, type => auto_renewal_flag and modify_domain,
	  data => auto_renew
	- Changed renew.cgi to return an error when trying to login with a
	  domain not sponsored by the current reseller.
	- Changed manage.cgi's renewal views to only allow renewal actions
	  on domains through the current reseller.

2002/07/11 v2.57
	- Support for transaction queuing on supplier outages (controlled
	    by setting F_QUEUE_SUPPLIER_UNAVAILABLE config variable to 1)

2002/06/20 v2.56
	- Added optional logging of XML communication to/from OpenSRS.
	  This is controlled by $OPENSRS{ xml_logfile } variable in
	  etc/OpenSRS.conf.
	- Command-line script for bulk locking/unlocking of domains added
	  ( /bin/bulk_lock.pl ).  Run it with no arguments for a usage
	  statement.
	- Updated .name forwarding email validation in XML_Client.pm to
	  allow forwarding to another .name email address

2002/05/08 v2.55
        - Enabling .name synchronous registrations via reg_system.cgi:
          created new .name-specific templates (order_name, verify_name)
          and coding to CGI.  Bulk registrations are not possible through 
          default reg_system.cgi.
        - Removed reg_system.name CGI and templates
        - Small improvement to error reporting in manage.cgi for contact 
          changes.
        - Changed client license from GPL to LGPL
        - Added '.us' to list of TLDs that can renew (OpenSRS.conf ->
          %RENEW hash)

2002/05/08 v2.54
	- Bulk .us order capable with action=bulk_order_us
	- Added Nexus validation to reg_system.cgi for .us registrations
	- Enhanced reg_system.cgi to accept Nexus data from the server
          when basing new domains on existing .us ones.
	- Introduced RETRY_DOMAIN_LOOKUP flag to lib/OpenSRS/XML_Client.pm
	  If RETRY_DOMAIN_LOOKUP is set (default) then try to resend lookup
	  request on communication errors.

2002/04/23 v2.53
        - introduced realtime .us registrations via reg_system.cgi
        - removed reg_system.us.cgi
        - changes to manage.cgi (and templates):
          - added new "Domain Extras" navigation link
          - Moved Auth Info (.info, .biz and .us) and Forwarding Email
            (.name) to "Domain Extras" page
          - introduced capability to modify .us nexus information
            in the "Domain Extras" page
        - changes to OpenSRS.conf:
          - added .com.vc, .org.vc and .net.vc to default list of 
            possible TLDs
          - removed .us from the CANT_SUPPORT hash
          - added .vc to OPENSRS_AUTHORITY hash
          - added "allow_domain_locking" flag to MANAGE hash

2002/03/19 v2.52
	- Modified reg_system.us.cgi to include non-trademark
	  preregistrations. Can be executed by specifying
	  flag_tm=0 in URL. if flag_tm=1 is specified, the same
	  trademark process will be executed as in version 2.51
	  If no parameters are supplied, flag_tm=1 will
	  be assumed.
	- Removed restriction of US address for owner contact on
	  dot us preregistrations
	- Changed required trademark information for .us prereg
	  from owner first and last name to owner organization as
	  per change in registry requirements
	- ability to place domains on lock (may not be enabled server-
          side yet so currently unusable)
	- added affiliate_id variable to renew.cgi and API to be
          used as attribute of renew order
	- Supports transfers of multi-lingual domains (must have
	  $USE_RACE enabled, Perl 5.6 or above, and UTF-8 browser
	  encoding type)

	Additional information provided, when selecting another domain in
	the same profile
	- gives a listing of domains, their expiry dates and auto-renew
	  settings
	- if $MANAGE{ allow_renewals } is set in the OpenSRS.conf file,
	  additionally allows renewal of domain and/or setting of
	  auto-renew flag

2002/02/28 v2.51
	Introduced reg_system.us.cgi for .us trademark preregistrations

2002/02/13 v2.50
	Introduced .biz client for .Biz Round Robin functionality
	- added reg_system.biz.cgi and various html files
	
2002/02/05 v2.49
	Introduced initial .name manageability into MWI.
	- ability to manage .name domain nameservers and 
          forwarding email address (if it was purchased)

2002/01/22 v2.48
	Introduced admin contact section for sw_register command
	- admin contact section added
	- templates for reg_system.cgi/register.cgi changed
	- XML_Client (verify contacts) changed
	- reg_system.name.cgi changed to work with new XML_Client

	NOTES: XML_Client not compatible with old (version < 2.48 )
		reg_system.cgi/register.cgi/reg_system.name.cgi

2002/01/09 v2.47
	Introduced .name preregistration capability:
	- added reg_system.name.cgi and templates
	- changed XML_Client.pm::check_domain_syntax to include .name and allow
	  for 'same as admin' type contact validation
	- added .name to $OPENSRS_TLDS_REGEX
	
2001/12/10 v2.46
        Supports transfers for .info. Supports renewals for .info/.biz/.tv

        API for renew domain, sw_register now accepts an optional attribute 
        'handle'. 
        - valid values are 'save' or 'process' and will override process
        immediate flag

        - Ability to view or modify .info or .biz domain auth code
        - Renewals returns order ID
        - Ability to e-mail registrant for forgotten username or password.
        This can be turned on or off in the config file.
        - Added client-side phone and fax number checking for .biz and .info 
        - Ability to send out mail for renewal and certificate orders
        - Management of RSP whois info
 
2001/11/16 v2.45
	Added a template for .ca transfers.

2001/07/27 v2.42
	Changed XML_Client.pm to use "Crypt::CBC" instead of old version of CBC.
	- removed CBC.pm from package, since it's not being used anymore.
	- be aware that you might need to install "Crypt::CBC" from CPAN.
	Removed Client.pm, since it's not being used anymore.
	Add new version of verify_install script, contributed by Mark.

2001/07/05 v2.41 (unsuported)
	Enabled .info landrush preregistrations. Also added
	.biz preregistrations capabilities.

        - added capability of basing an order on a previously 
	  preregistered order.
	- added reg_system.biz
	- now needs Locale::Country module. It is supplied in the
	  code (tarball) or can be taken from CPAN. Also it is 
          included in the libs directory of the client.
	- modified templates, replaced the hardcoded country list for
	  reg_system.info, added landrush support.

2001/06/19 v2.4
	Enabled .cc registrations. Enhanced transfer response to
	include the transfer state.

	- fixed .info bugs
	- added "Use Socket" to OpenSRS.conf for NT style installations.
	- fixed various typos and grammar fixes 
	- sub user accounts in manage interface now show messages	

2001/06/05 v2.34 (unsuported)
	Added the capability of preregistering .info domains via a brand
	new reg_system.info.cgi. The client now requires HTML::Template
        module.

	- fixed purchasing of web certs
	- fixed registration of multilingual domains in the same profile
	- fixed creation of multilingual nameservers
	- fixed new renew date in renew.cgi
	- fixed change ownership username in manage.cgi to be case insensitive		

2001/04/20 v2.33
        Added %RACESETTINGS to "use vars qw"
        Must get Storable.pm from CPAN
        Added $USE_RACE setting to OpenSRS.conf to disable RACE (must have
	Perl 5.6 or higher in order to utilize RACE in this version).

2001/04/19 v2.33
	Introduced the new RACE. From now on all the pages are and should
	    be encoded in UTF8. Note that the Unicode::Map module is no 
	    longer needed. Unicode::String module is needed only for
	    RACE.cgi (not needed for RACE.pm). Added $UNIVERSAL_ENCODING_TYPE
	    global constant in OpenSRS.conf. Valid values for the
	    encoding_type attribute are "" for ASCII and "utf-8" for
	    everything else.  

	- fixed .ca bulk orders
	- fixed registration verification page to include domain description 
	- fixed the green asterisk under renew domain menu
	- fixed .tv high profile registration issues
	- renewals now respect the process orders immediately flag.

2001/02/10 v2.32
	Enhancements to reg_system.cgi to support digital certificate
	    purchases. Includes new templates for reg_system.cgi, and new
	    API call added to XML_Client.pm.

2001/01/26 v2.31
	Enhancements to reg_system.cgi to support .vc,.tv domains. Includes new
	    API call added to XML_Client.pm, and few new functions in 
            reg_system to support .tv, as well as new post_lookup hash 
            in OpenSRS.conf.  Also created and made changes to reg_system
            templates to support .tv registrations.
        Enhancements to reg_system.cgi to support new returns from OpenSRS
            server for lookups.  This goes with .ca registration going
            real-time.  Also added new reg_system template which forces
            registrant to link a new domain to an existing profile.

2001/01/02
	Added client Renew CGI and templates.

2000/12/19
	Enhancements to manage.cgi to support .ca domains. Includes new
	    templates for manage.cgi.
	Added new Waiting Request History functionality to view previous
	    activity on domains with asynchronous registries
	Added new CustomDebug.pm utility package for debugging.

2000/10/26
	Added RACE.cgi (a cgi script for verifying the RACE encoding)

2000/10/24
	Added support for multi-lingual domain names
	    - added new RACE.pm package and RACE.conf file
	    - new dependencies on Unicode::Map and Unicode::String CPAN
	      packages
	    - added maps directory which contains customized Unicode maps
	      required for OpenSRS. These must be copied to the 
              {perlInstallation}/Unicode/Map/{languageGroup} directory.
	      The first two maps (BIG5 and KSC5601-1992) are part of
              the EASTASIA group.
	    - added encoding_types list file in templates
	    - added check for bad IP return from server in verify_install.cgi
	    - XML_Client.pm version changed to "2.2.1b"
	Added support for suggesting the name of the domain. Use RELATED_TLDS
	to specify catchy suffixes to domain names

2000/09/22
    - removed addition of password validation from previous distribution
    - bug fixes to .ca registrations

2000/09/14
	Changes to handle .ca registration:
	    - extra fields
            - new .ca-specific templates
	    - both "pre" and "advance" registration periods
            - handle "ca_prereg" status on domain lookups
        Changes to XML_Client.pm and reg_system.cgi and manage.cgi to
	    prevent registrants from using apostrophes in passwords
        In XML_Client.pm, don't send quit command unless the socket
            is already open (eliminates useless network traffic)
        reg_system.cgi: impliment email fix provided by retsiger
            reseller (Thanks!)
        manage.cgi/OpenSRS.conf: tweaked cookie management to differentiate
            between live and rite environments
        OpenSRS.conf/XML_Client.pm: moved $RELATED_TLDS and $OPENSRS_TLDS_REGEX
            from global definition to %OPENSRS hash and make XML_Client.pm
            no longer dependent on the conf file.
        XML_Client.pm: removed unused parse_lookup_response(), added
            comments to getRelatedTlds() method.
        reg_system.cgi: removed use of Data::Dumper
	XML_Codec.pm: fix to encode and decode high-end ASCII characters

2000/09/09
        Changes for release of OpenSRS v2.2:
            - new XML_Client.pm, removed Client.pm
            - new OPS.pm and XML_Codec.pm
            - new dependencies on XML::Parser
            - rewrote client API in XML
            - support for .uk registrations (asyncronous)
            - changes to manage.cgi interface/templates to
              support asyncronous requests
            - new Logout link in nav bar in manage.cgi
            - verify_install.cgi reports on required XML::Parser package

2000/07/17
	Alterations to verify_install.cgi.  Script will now report:
	    - Referring URL
	    - Client IP address
	    - OS information (uname -a, if applicable)
	    - Client Version
	    - Hostname client is connecting to
	    - Server Port
	    - Reseller's username
	    - Length of Private Key
	    - Selected Encryption Method
	    - Versions of Perl Modules installed
	    - Will check to ensure selected Encryption method has corresponding
	      installed Perl Module
	    - Better error messages when not able to login
	

CLIENT RELEASE
2000/07/06
	Update Crypt::CBC to 1.25 (latest).

	Cosmetic changes to reg_system.cgi	

2000/06/29
	Added ability to process bulk transfers in reg_system.cgi.  
	This can be accessed by calling reg_system.cgi?action=bulk_transfer.

	Fixed transfer validation problem where nameserver fields were
	being expected based on the client configuration file, although
	nameservers shouldn't be required for transfers.

2000/06/22
	Updated manage.cgi to actually cancel changes if an end-user hits
	the 'Cancel' button.

2000/05/09
	Added new response codes to doc/return_codes.txt

2000/06/05
	Updated OpenSRS::Client::DESTROY() so it undef's several variables
	that need to be destroyed if a cgi exits without calling logout().
	This is necessary for mod_perl to function properly.
	
2000/05/30
	Made cgi scripts fully mod_perl compliant:

	1) Removed 'my' declarations around global variables.  Because of
	the way mod_perl works, global variables in the main cgi can't be
	'my' variables.

	2) Passed \%in to cgi-lib's ReadParse to make it mod_perl friendly.

	3) Use 'do' instead of 'require' when loading in the configuration
	file.  Otherwise, only the first execution of the cgi would have
	access to the conf files contents, due to the way 'require' works.

	4) Initialize all global variables at the top of the cgi to make
	we aren't holding onto any data from the previous run.

	5) Close sockets in Client::logout().

	Moved OpenSRS module into different namespace: OpenSRS::Client.

	Made configuration file pass 'use strict' by 'use vars.'
	
2000/05/18
	Don't escape ' as &apos;

	Add note to perl 5.6.0 users in INSTALL

CLIENT RELEASE
2000/04/12
	Return codes are now fully documented.  Please see doc/return_codes.txt
	for a more detailed description.
	
	sw_register now returns the result of the registration attempt if your
	reseller profile is set to automatically process new orders.  The field
	name is "registration_code=<code>" where code is the result code.

2000/04/11
	Only require 'state' field if country is US or CA.

2000/04/10
	Fields prefixed with p_ (p for private) will not be sent to the OpenSRS
	server.  This should help with custom client installs where there might
	be sensitive data being passed through the client cgis.
	
	Involved in this change was the renaming of the credit card fields in
	reg_system.cgi.

2000/04/07
	Gave manage.cgi the ability to delete unused nameservers.

2000/04/06
	Enhanced client library to optionally use Crypt::Blowfish instead of
	Crypt::DES.

2000/04/04
	Reworked encryption system to be compatible with newer versions of
	Crypt:CBC.  Future versions of the client will include CBC.pm to avoid
	version conflicts and confusion.

	Gave manage.cgi the ability to rename a nameserver's hostname as well
	as change its ip address.

2000/03/31
	Enhance reg_system.cgi to optionally allow clients to provide custom
	tech contact and nameserver information.

2000/03/30
	Store and display the last login time and ip for manage.cgi

2000/03/29
	Allow phone numbers to begin with a '+'.

2000/03/28
	Converted client library into a module.  Cleaned up interface between
	cgis and module.  Only export subs and vars if the cgis ask.

2000/03/27 - CLIENT RELEASE
	Reworked client conf file to ensure that all required fields are passed
	directly to OpenSRS.pl during OPENSRS_LOGIN().  This avoids having to
	reach into main's namespace to get the data we need and should silence
	a few complaints. :)  This means that OPENSRS_LOGIN() should be passed
	%OPENSRS instead of just the username and private key.

	Renamed $PATH_HOME to $PATH_SOURCE in conf file for clarity.

2000/03/22
	Cleaned up reg_system.cgi:
		enhanced standard methods to handle bulk orders
		enhanced standard templates to handle bulk orders
		removed obsolete templates and methods
	Adjusted reg_system.cgi register() to do lookups on domains before it
	sends down the request to register them.

2000/03/20
	New feature: domain transfers.

2000/03/17
	Cleaned up profile setup flow in reg_system.cgi

2000/03/14
	Fixed an oversight when doing domain lookups which caused the reseller
	username to not get passed properly.  This was causing problems
	with lookup statistics.

2000/02/22
	New feature: domain ownership changes.
	Restructured manage.cgi templates a bit.

2000/02/17
	Only require postal code for United States and Canada.

2000/02/09
	Update client library and cgis to handle problems connecting to the
	server more gracefully.  Parse the message coming back from the server
	and return the error if one is given.  This should help in debugging
	problem clients.

2000/02/06
	Enhanced reg_system to return available domains with other tld extensions.
	E.g., if test.com is queried and test.org and test.net are also available,
	they will show as available.

2000/02/05
	Fixed error in countries template.  Thailand should be TH, not TM.

2000/01/13
	Configuration file change: $PRIVATE_KEY replaces $PASSWORD.
	$USERNAME and $PRIVATE_KEY can be passed through new OPENSRS_LOGIN()
	method, or will be read directly from conf file for backward
	compatibility.
	
	$AUTH_TYPE is now obsolete.  DES encryption is required on all versions
	greater than 2.0.
	
2000/01/13
	Changed field name master_domain to reg_domain in templates/register/
	register.html for consistency.  This is a backwards compatible
	change.

2000/01/12
	Changed manage.cgi to use a maxlength of 20 for the account password.

2000/01/12
	Documentation enhancements

2000/01/11
	Move debugging defines into conf file.
	
2000/01/10
	Generate credit card expiration years dynamically in reg_system.cgi.

2000/01/07
	Remove control characters from a few of the templates.

	New feature: registration period, which specifies the number
	of years for which to register a domain.	

	Fixed bulk_verify.html template which had named owner_first_name,
	owner_last_name, owner_org_name without the owner_ prefix.


##################################################################

## Since pre-release 1
	Fields changed:
		firstname => first_name
		lastname => last_name
		telephone => phone
		zip => postal_code
		organization => org_name
		
	Moved permission defines into hash %PERMISSIONS.	
	
	SEND_COMMAND parses response code and text, and returns the resultant
	data with:
		$data{_is_success} indicating a successful command.
		$data{_response_code} storing the numeric code returned.
		$data{_response_text} storing the response text returned.

	get_nameservers returns the fqdn's of the nameserver's joined by \0.
	E.g., @nameservers = split /\0/, $data{fqdn}

	get_domains returns the domain_names's of the domains's joined by \0.
	E.g., @domains = split /\0/, $data{domain}

	Split up templates under different subdirectories.

	Update conf file:
		Renamed template variables.
		Moved remote_host/remote_port into hashes.

	Change client/server communication slightly:
		We no longer prepend data with a space.

	Merged in registration management client sources and templates.

	New features:
		deleting subuser
		paging implemented when viewing domains
		top navbar and secure_menu.html are generated dymanically
			per the user's permission level
		registration management integration
		modifying a nameserver's ip address
		client can change profile password

	Cleaned up handling of user permissions.

	Encryption system added.  Controlled via OpenSRS.conf file.

	New required perl modules: Digest::MD5, Crypt::CBC, Crypt::DES

	Optomize client/server interaction so we only open the socket and
	authenticate the reseller once per session.  This allows for multiple
	commands to be sent and parsed without opening a new socket each time.

	Flags "billing_use_admin_info" and "tech_use_admin_info" are handled
	via the client now and not the server.
