#!/bin/sh
#
# The contents of this file are subject to the AOLserver Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://aolserver.lcs.mit.edu/.
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
# the License for the specific language governing rights and limitations
# under the License.
#
# The Original Code is AOLserver Code and related documentation
# distributed by AOL.
# 
# The Initial Developer of the Original Code is America Online,
# Inc. Portions created by AOL are Copyright (C) 1999 America Online,
# Inc. All Rights Reserved.
#
# Alternatively, the contents of this file may be used under the terms
# of the GNU General Public License (the "GPL"), in which case the
# provisions of GPL are applicable instead of those above.  If you wish
# to allow use of your version of this file only under the terms of the
# GPL and not to allow others to use your version of this file under the
# License, indicate your decision by deleting the provisions above and
# replace them with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient may use your
# version of this file under either the License or the GPL.
#

# translate-ini --
#
#	This script translates an old-style nsd.ini into a 
#	new-style nsd.tcl.  You must have sed and awk in your path.
#
#       Note:  This script is entirely unsupported.
#
#	Usage:
#	sh translate-ini < nsd.ini > nsd.tcl
#

echo '#'
echo "# Translated on `date`"
echo "# from .ini format with $0"
echo '#'

sed -e 's/\[\(.*\)\]/ns_section "\1"/g' | sed 's/\(.*\)=\(.*\)/ns_param \1 "\2"/g' | awk '
/^ns_param/ {
  l = length($2)
  os = ""
  while (l < 12) {
    os = os " "
    l++
  }
  values = ""
  n = 3
  while (n <= NF) {
    values = values " " $(n)
    n++
  }
  print "ns_param " $2 os values
}

/^ns_section/ {
  print $1 " " $2
}

/^$/ {
  print
}'
