2001-07-30  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_known_var): Deal only with selected list of keywords.
	(xst_boot_conf_edit_image): Rewrote it. It's now much safer since it doesn't
	touch anything else than really needed (value part).
	(xst_boot_conf_set_images): Match images based on key, not name and image location.
	(xst_boot_set_global): Improved quoting of values with spaces or with '='.

	* boot-conf.in (xml_parse_boot): Removed some unused keywords.

2001-07-28  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_update_display_mode): Chop off additional space.

	* boot.pl.in (xst_boot_conf_is_image): Try default label also.
	(xst_boot_conf_delete_image): Fixed bug of deletion of last image.
	(xst_boot_conf_edit_image): Quote values which have '=' mark.
	(xst_boot_conf_add_image): Ditto.
	(_lilo_fix_images): New. Add 'label' field if it's missing.
	(xst_boot_conf_fix): New.

	* boot-conf.in (set): Don't flush conf file if XML was invalid or missing.

2001-07-26  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_update_display_mode): Remove extra space from we added before.

2001-07-26  Hans Petter Jansson  <hpj@ximian.com>

	* display-conf.in: Add debian-2.2 to supported platforms. Tested and
	  working.

	* print-conf.in: Remove debian-2.2 from supported platforms. This
	  is officially not supported yet.

2001-07-26  Tambet Ingo  <tambet@ximian.com>

	* display-conf.in (test): Oops, forogt that.

	* x.pl.in (x_config_fix): Support XFree86 v3 also.

	* display-conf.in (xml_print): ditto.

Wed Jul 25 03:45:51 2001  Arturo Espinosa Aldama  <arturo@ximian.com>

	* package-conf.in (get_package): missing comma.

	* mouse-conf.in: mouse.pl doesn't exist. Can't require it.

	* Makefile.am: Also s/___version___/$(VERSION)/.
	* *-conf.in: Removed arbitrary value for $version and
	assigned "___version___" instead. #3090 fixed.

	* boot.pl.in (xst_boot_conf_edit_image): Removed append
	key special case for quoting. Quote values only if they
	contain spaces and are not already quoted.
	(xst_boot_conf_add_image): same.

	* replace.pl.in (xst_replace_from_table): If interpolation
	failed, go to next feature. Failed interpolations return
	arguments that make no sense.
	(xst_replace_kw): Wasn't getting $value arg (!). This affected
	Debian ppp option replacing and possibly other places.

	* parse.pl.in (xst_parse_replace_hash_values): Return 1/0
	if interpolation succeeded.
	(xst_parse_from_table): If interpolation failed, go to next
	feature.

	* network.pl.in (xst_network_get_parse_table): Removed
	domainname tag support.
	(xst_network_get_replace_table): same.

	* network-conf.in (xml_parse_network): Removed domainname
	tag support.
	(xml_print): same.

	* replace.pl.in (xst_replace_split): Eliminate empty elements
	from value array. This will delete features whose XML tags are
	empty, but existent.

	* network.pl.in (xst_network_pump_get_nodns): Only omit
	updatedns tag if pump doesn't support it, or information will
	be lost.

	* parse.pl.in (xst_parse_interfaces_option_kw_not): Minor bug:
	undef ne 0.

	* network.pl.in (xst_network_interface_ensure_broadcast_and_network):
	Oops: forgot to receive the arguments.
	(xst_network_interface_changed): more intelligent network interface
	info comparison.
	(xst_network_rh62_interface_activate): Use this function here, getting
	rid of weird criterion.
	(xst_network_suse70_interface_activate): same.

2001-07-24  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_interface_ensure_broadcast_and_network):
	if the interface has address and netmask, calculate the broadcast
	and subnet.
	(xst_network_interfaces_get): call this function per iface.

2001-07-24  Hans Petter Jansson  <hpj@ximian.com>

	* time-conf.in (time_sync_hw_from_sys): Implement.
	  (conf_set): Sync hardware clock.

2001-07-24  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (parse_range_hz): Seems like spaces are allowed everywhere.

	* boot-conf.in (set): Removed some old cruft.

	* x.pl.in: we use strict from now on. Only for this file.
	Fixed damned bug that ruined $sections variable and crashed
	display tool.

2001-07-20  Arturo Espinosa Aldama  <arturo@ximian.com>

	* platform.pl.in (xst_platform_ensure_supported): Don't
	exit after listing the platforms.

	* general.pl.in (xst_merge_std_directives): Added standard
	"platform_set" directive.

	* platform.pl.in (xst_platform_ensure_supported): Send
	end of report before returning.
	(xst_platform_set): A directive handler that sets the
	currently selected platform.

2001-07-20  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_alchemist_ensure_list_types): Implement.
	  (xst_replace_alchemist): Set required alchemist branch attributes.
	  (xst_replace_alchemist_print): Set required alchemist branch attributes.
	  (xst_replace_alchemist_print_option): Set required alchemist branch
	  attributes.

2001-07-20  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_model_save): Implement.

	* replace.pl.in (xst_replace_xml_pcdata): Use xst_xml_model_save ().
	  (xst_replace_xml_attribute): Ditto.
	  (xst_replace_xml_pcdata_with_type): Ditto.
	  (xst_replace_xml_attribute_with_type): Ditto.
	  (xst_replace_xml_alchemist_print_option): Ditto.

2001-07-19  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_scan_make_kid_array): Accept '.' in attribute values.
	  (xst_xml_model_ensure): Simplify slightly.

	* parse.pl.in (xst_xml_parse_alchemist_print_option): The variable naming
	  the XML node to get attribute from was wrong.

	* replace.pl.in (xst_xml_replace_alchemist_print_option): The variable
	  naming the XML node to set attribute on was wrong.

	* print.pl.in (xst_print_remove_printer_rh71): Implement empty shell for
	  now.
	  (xst_print_get_printer_parse_table): Additions and fixes.
	  (xst_print_get_printer_replace_table): Ditto.

2001-07-19  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_xml_child_names): Return array, not reference.
	  Fixed comparison to be against input list, not output.
	  (xst_parse_alchemist): Set args. Alchemist attr is always VALUE.
	  (xst_parse_alchemist_print): Ditto.
	  (xst_parse_alchemist_print_option): Ditto.

	* print.pl.in (xst_print_get_printer_parse_table): Some fixes, additions.

2001-07-19  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_model_get_children): Implement.
	
	* parse.pl.in (xst_parse_xml): Use new return convention of
	  xst_xml_model_scan ().
	  (xst_parse_xml_child_names): Renamed from xst_parse_xml_children ().
	  Use new return convention of xst_xml_model_scan ().
	  (xst_parse_alchemist): Implement.
	  (xst_parse_alchemist_print): Implement.
	  (xst_parse_alchemist_print_option): Implement.
		
	* replace.pl.in (xst_replace_alchemist): Add in alchemist's base data path.
	  (xst_replace_alchemist_print): Implement.
	  (xst_replace_alchemist_print_option): Implement.
		
	* print.pl.in (xst_print_printers_get_rh71): Use
	  xst_parse_xml_child_names ().
	  (xst_print_get_printer_parse_table): Begin rh71 table, not complete yet.
	  (xst_print_get_printer_replace_table): Begin rh71 table, not complete yet.
	
2001-07-18  Arturo Espinosa Aldama  <arturo@ximian.com>

	* file.pl.in (xst_file_run): Accept a flag arg $background
	that will run the command on background.
	(xst_file_run_bg): Wrapper to this.

	* users-conf.in (set): Call write_profiles.
	(xml_parse): Call xml_parse_profiles.
	(xml_parse_profiles): Get "profiles" tag contents from read
	xml document and set it in "profiles" key of data hash.
	(write_profiles): If $$hash{"profiles"} is not empty,
	save it to profiles.xml location.
	(xml_parse_users): Ignore profiles tag.
	(xml_parse_profiles): Profiles record is a ref to an array.

	* xml.pl.in (xst_xml_scan_recurse): Removed use of global
	array xst_xml_scan_list.
	(xst_xml_scan): Now optionally receives a tool structure.
	The read document is stored inside the tool structure.

	* users-conf.in (add_user): mkdir -p the parent directories
	of the new user.
	(get): receive tool as argument. This structure is passed
	to all directive handlers by xml_run_directive as the first
	argument.
	(set): same. Pass it to xml_parse.
	(filter): same.
	
2001-07-18  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_alchemist): Implement. Top-level function
	  for replacing alchemist data.

2001-07-18  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_xml_pcdata_with_type): Implement.
	  (xst_replace_xml_attribute_with_type): Implement. These are helper
	  functions for alchemist-like XML files.

2001-07-18  Arturo Espinosa Aldama  <arturo@ximian.com>

	* users-conf.in (add_user): mkdir -p the parent directories
	of the new user.

2001-07-17  Arturo Espinosa Aldama  <arturo@ximian.com>

	* users-conf.in (write_logindefs): Old xst_report_warning
	call that slipped.
	Enabled command reporting.
	Removed all global data variables in the backend. Delete
	user no works. Style corrections. This thing is old.

Sun Jul 15 07:46:23 2001  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_get_parse_table): userifacectl
	reveals if distro is capable of letting mortal users to control
	interface activation.

2001-07-17  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_file_open_write_compressed): Implement.

	* replace.pl.in (xst_replace_xml_pcdata): Allow compressed files.
	  (xst_replace_xml_attribute): Ditto.

	* xml.pl.in (xst_xml_model_scan): Ditto.

2001-07-16  Hans Petter Jansson  <hpj@ximian.com>

	* print.pl.in (xst_print_printers_get_rh71): Implement.

	* xml.pl.in (xst_xml_read_compressed_file): Implement.
	  (xst_xml_model_scan): Read compressed files.

2001-07-16  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_xml_children): Implement.

	* print.pl.in (xst_print_printers_get): Rename to
	  xst_print_printers_get_rh70. Update tables to use this.

	* replace.pl.in (xst_replace_xml_pcdata): Implement.
	  (xst_replace_xml_attribute): Implement.

Sat Jul 14 11:54:50 2001  Arturo Espinosa Aldama  <arturo@ximian.com>

	* file.pl.in (xst_file_run): Escape ($) in system call, heheh.

	* network-conf.in (enable_iface): Cosmetic description change.

	* file.pl.in (xst_file_run): Added PATH=$PATH:/sbin:/usr/sbin
	to the running command, as these important routes may not be
	set by the mortal user, and the executed scripts may fail (ie
	debian's ifup/ifdown fail when tool run by normal user).

	* network-conf.in (enable_iface): A directive handler that
	ifup/ifdowns a given interface.
	$directives: added directive entry, params and description.

	* report.pl.in (xst_report): New warning "platform_no_table",
	used now in all backends when no table for the detected dist
	is available (shouldn't happen, but typos happen).
	
	* network.pl.in (xst_network_debian_woody_set_auto): Removed
	debian-potato compatibility, because noauto is not compatible
	with auto stanzas.
	(xst_network_debian_woody_get_auto): same.

Fri Jul 13 14:58:00 2001  Arturo Espinosa Aldama  <arturo@ximian.com>

	* general.pl.in (xst_run_directive): Flush debug files after
	every run directive.

	* debug.pl.in (xst_debug_close_all): Function to make the
	debug files close (and so, flush).

	* network.pl.in (xst_network_interface_set): Maybe I don't
	understand myself, but don't force interface activation.
	(xst_network_ensure_loopback_interface): Add update_dns
	property to default loopback prefs.

	* xml.pl.in (xst_xml_read_stdin): Last if no more input is
	available. This fixes the tool waiting for the end of request
	string when using a file as stdin. (backend --set < in.xml).

	* network.pl.in (xst_network_set_ppp_options_re): if you found
	the matching line, last.
	(xst_network_set_ppp_options_unsup): These functions are hacky.
	Take the unsupported options and format them one by line.
	Don't chomp lines: this corrupted the file.

2001-07-15  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_conf_edit_image): Always quote 'append' lines.
	(xst_boot_set_global): ditto. Fixes bug #3805.

Thu Jul 12 12:44:15 2001  Arturo Espinosa Aldama  <arturo@ximian.com>

	* report.pl.in (xst_report): Better reporting of errors.

	* platform.pl.in (xst_platform_ensure_supported): Use the
	$tool structure to get the dist.

	* hardware-conf.in: Well, this code is useless, but it had
	some spurious code here I found during a "grande grep".

	* platform.pl.in (xst_platform_ensure_supported): Removed
	explicit STDERR debug output: error reports are now forced
	to STDERR.

	* xml.pl.in (xst_xml_print_request_end): The request end
	string starts with a new line.

2001-07-13  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_model_get_pcdata): Implement.
	  (xst_xml_model_set_pcdata): Implement.
	  (xst_xml_model_get_attribute): Implement.
	  (xst_xml_model_set_attribute): Implement.

2001-07-13  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_model_add): Implement.
	  (xst_xml_model_ensure): Implement.
	  (xst_xml_model_remove): Implement.

2001-07-13  Tambet Ingo  <tambet@ximian.com>

	* display-conf.in (check_version): Implement. Check version
	and bail out on versions lower than 4.0.0

	* x.pl.in (x_version): Now it actually works.

2001-07-12  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_rh62_interface_activate_by_dev):
	Don't do ifdown on the background. ifdown is fast enough, and
	launching ifup/ifdown almost at the same time doesn't seem like
	a good idea.
	(xst_network_suse70_interface_activate_by_dev): same.
	(xst_network_suse70_ppp_iface_activate): same.
	Print ifup/ifdown debug reports to STDERR to track problems.
	(xst_network_debian_woody_get_auto): Got confused by the double
	negation of "noauto". Fixed (#4538)

	* users-conf.in (xml_parse_users): Ignore files and shells
	tags when parsing, instead of complaining.
	(xml_parse_login_defs): files tag should be ignored here.

	* file.pl.in (xst_file_open_write_from_names): Wrong report
	call.

2001-07-11  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_get_interfaces_parse_table):
	Commented out dns[12] unsupported tags for debians.
	(xst_network_debian_woody_set_auto): Dunno what I was
	thinking when I first coded this. Fixed now.

	* parse.pl.in (xst_parse_trivial): Return undef if 0 args.

2001-07-12  Chema Celorio  <chema@celorio.com>

	* configure.in (dnl): try again
	
2001-07-12  Tambet Ingo  <tambet@ximian.com>

	* AUTHORS: Fixed my mail address :)

	* x.pl.in (x_add_keyword): Fixed stupid bug I introduced
	in my last commit. (new resolutions didn't get added).

	* display-conf.in (xml_parse): Fixed very strange bug:
	if run with new style "set" then everything worked, but
	not when run with --set. The problem was that $tree array
	had one extra empty element as a first one int the list.
	Other tools may suffer the same thing.
	(xml_parse): Added optional argument to parse from.
	(parse): Removed, was a single line nonsense.
	(test): Implement. Tests if X can start up and whether it's
	picture is readable.
	
2001-07-12  Chema Celorio  <chema@celorio.com>

	* configure.in (dnl): fix the scriptdirs thing
	
2001-07-11  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_model_find): Implement.

	* parse.pl.in (xst_parse_xml): Use xst_xml_model_find().

2001-07-11  Hans Petter Jansson  <hpj@ximian.com>

	This implements an exact internal representation of XML, which can
	be scanned to and printed out from.

	* xml.pl.in (xst_xml_model_print_attributes): Implement.
	  (xst_xml_model_print_recurse): Implement.
	  (xst_xml_model_print): Implement.
	  (xst_xml_scan_make_kid_array): Accept more characters in attributes.
	  (xst_xml_model_scan_recurse): Implement.
	  (xst_xml_model_scan): Implement in full.

	* parse.pl.in (xst_parse_xml): Use xst_xml_model_scan().

2001-07-11  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_get_replace_table): Typos.
	(xst_network_route_set_default_gw): The gatewaydev also
	counts to check if the default route should change.

2001-07-11  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_version): Beginnings of X version detection.
	(parse_modeline): Finished to support "ModeLine" entries.
	(x_xml_print_modelines): Implement.
	(x_parse_section): Fixed options parsing bug.

2001-07-10  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_get_replace_table): Oops:
	support gatewaydev for replacing too.
	(xst_network_route_set_default_gw): Run route to set
	default gw as required.

	* network-conf.in (xml_print): Print the gwdevunsup
	tag as well.

	* network.pl.in (xst_network_get_parse_table): Added
	gwdevunsup for those platforms that don't support this.

2001-07-10  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_get_attribute): Implement.

	* parse.pl.in (xst_parse_xml): Implement in full.

2001-07-09  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network-conf.in (xml_print): gatewaydev support.
	(xml_parse_network): same.

	* network.pl.in (xst_network_get_parse_table): new gatewaydev
	feature required to avoid ambiguous situations. RedHat-only
	for the moment. SuSE doesn't need it (well, doesn't use it).
	(xst_network_get_replace_table): same.
	TODO: investigate what to do for Debian.

2001-07-09  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_update_display_mode): Implement.
	(x_update_kw_list): Implement, has it's own function now.
	(xml_parse_display_modes): Implement.

2001-07-06  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_lookup_address_collect):
	Improved reusability by taking out xst_process_list_check_ready.
	(xst_network_lookup_address): Put that call here.

	* share.pl.in (xst_share_get_smbclient_list_cmd): Get
	smbclient command to get a list of shares from a host.
	(xst_share_scan_smb_host_call): Function to be called
	from xst_process_fork.
	(xst_share_scan_smb_start): Spawn an smbclient for
	every host.
	(xst_share_scan_nfs_host_call): Analogue.
	(xst_share_scan_nfs_start): Same.
	(xst_share_scan_share_collect): Get strings from
	children and return hash with host => [ @dirs ].
	(xst_share_scan_network): Finished, not tested. Launches
	all processes in parallel, after the bcast ping, including
	name lookups. Returns hash with information.

2001-07-06  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_xml): Begin XML config parser.

2001-07-06  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_address_lookup_call): A
	function to be called by xst_process_fork.
	(xst_network_lookup_address_start): Now calls
	xst_process_fork.
	(xst_network_lookup_address_collect): Now calls
	xst_process_list_check_ready and inspects "ready" key.
	(xst_network_active_interfaces_get_info): Run ifconfig,
	getting addr, bcast and mask info for all ifaces in a hash.
	(xst_network_get_broadcast_ping_cmd): Code that selects
	the right command to ping a given broadcast.
	(xst_network_ping_broadcast_call): Runs a broadcast ping and
	returns string containing replying hosts.
	(xst_network_find_hosts): Return an array of IPs of the hosts
	in all the adjacent local networks.

	* util.pl.in (xst_process_fork): Do a pipe, fork
	a process where the child executes a given function,
	return process info (pid, fd) in the parent.
	(xst_process_kill): Kill process, close pipe.
	(xst_process_list_check_ready): With a timeout, do
	a select over all of the pipe fd's of a list of procs.

2001-07-05  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_ipv4_str2vec): Routines
	for ipv4 mannipulations.
	(xst_network_ipv4_vec2str): Converse.
	(xst_network_ipv4_calc_subnet_vec): Subnet, bitmap.
	(xst_network_ipv4_calc_subnet): Returns str version.
	(xst_network_ipv4_calc_bcast_vec): Broadcast, bitmap.
	(xst_network_ipv4_calc_bcast): And the str version.
	(xst_network_active_interfaces_get): Why am I using sed
	here? Changed to s///.
	(xst_network_lookup_address_start): Does all the forking
	and returns ref to proc list.
	(xst_network_lookup_address_collect): Collects all the
	info from the proclist available before timeout.
	(xst_network_lookup_address): Split this function in
	these two processes.

2001-07-04  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_lookup_address): Modified
	function so it can resolve multiple addresses in
	paralel.
	(xst_network_fork_address_lookup): Abstracted this
	process.
	* *-conf.in: Put require instructions inside a BEGIN
	block, which make it easier to start debugging the backends.

2001-07-04  Hans Petter Jansson  <hpj@ximian.com>

	* rhprinterdb2xstxml.pl: Added script to translate the RH printerdb to
	  XML.

2001-07-04  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_add_keyword): Quote new values if neccesary.

2001-07-03  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (general_parse_section): Split lines with
	Text::ParseWords (right way).
	Added additional field and comments to control struct $sections.
	(parse_kw_list): Add to the end of list only if defined.
	(x_update_keyword): Quote new values if neccesary.
	(x_update_keyword): Check that new values have at least
	on space between.

2001-07-03  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_lookup_address): A nice
	address lookup routine, with timeout (using fork).
	(xst_network_lookup_address_block): For those who have
	a block fetish.

2001-07-02  Arturo Espinosa Aldama  <arturo@ximian.com>

	* shares-conf.in (xml_print): imports and exports tags
	only appear if there is info to display. This allows me
	to reuse it for network scanning.

2001-07-02  Tambet Ingo  <tambet@ximian.com>

	* display-conf.in (xml_parse): Removed extra 'shift'.

	* x.pl.in (parse_serverlayout_screen): Implement.
	(x_xml_print_serverlayout_screen): Implement.

2001-06-29  Hans Petter Jansson  <hpj@ximian.com>

	* print-conf.in: Make XML parsing and options writing work.
	  Both get and set now seem to work as expected.

2001-06-29  Arturo Espinosa Aldama  <arturo@ximian.com>

	* users-conf.in (my_system): use xst_file_run, only send
	debug strings if $DEBUG & 2, and to STDERR, not STDOUT.

	* xml.pl.in (xst_xml_read_stdin): Like, a precedence bug.

	* users-conf.in (xml_parse): Use standard xst_xml_scan.
	This bug comes since the no-shared-code days! It slipped!
	(xml_scan): This should have been removed ages ago.

2001-06-29  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (x_config_set): Give up if something is wrong.
	Remove Modelines from $sections list.

	* display-conf.in (xml_parse): Write conf when asked to.
	Bad bad typo!

	* x.pl.in (x_update_section): Now we can write XF86Config files too.

2001-06-27  Tambet Ingo  <tambet@ximian.com>

	* util.pl.in (xst_ignore_line): Allow spaces before comments at
	the start of a line.

2001-06-29  Hans Petter Jansson  <hpj@ximian.com>

	This implements printer settings replacement and makes more code
	shared between parsing and replacement functions.

	* parse.pl.in (xst_parse_printcap_buffer_load): Insert.
	  (xst_parse_printcap_get_next_stanza): Insert.
	  (xst_parse_printcap_get_next_option): Insert.
	  (xst_parse_printcap_parse_stanza): Insert.
	  (xst_parse_printcap_parse_option): Insert.
	  (xst_parse_printcap_find_stanza): Insert.
	  (xst_parse_printcap_find_option): Insert.
	  (xst_parse_printcap): Implement.
	  (xst_parse_printcap_bool): Implement.

	* replace.pl.in (xst_replace_printcap_buffer_load): Remove.
	  (xst_replace_printcap_get_next_stanza): Remove.
	  (xst_replace_printcap_get_next_option): Remove.
	  (xst_replace_printcap_parse_stanza): Remove.
	  (xst_replace_printcap_parse_option): Remove.
	  (xst_replace_printcap_find_stanza): Remove.
	  (xst_replace_printcap_find_option): Remove.
	  (xst_replace_printcap_add_stanza): Use xst_parse_printcap_*() funcs.
	  (xst_replace_printcap): Use xst_parse_printcap_*() funcs.

	* print.pl.in (xst_print_conf_get): Remove stray variable.
	  (xst_print_conf_set): Implement.
	  (xst_print_get_printer_parse_table): Use xst_parse_printcap(), not
	  generic xst_parse_cap().
	  (xst_print_get_printer_replace_table): Implement.

2001-06-29  Chema Celorio  <chema@celorio.com>

	* network-conf.in: add suport for turbolinux 7.0

2001-06-28  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_printcap_print_stanza): Implement.
	  (xst_replace_printcap_print_option): Implement.
	  (xst_replace_printcap_add_stanza): Implement.
	  (xst_replace_printcap_add_option_slot): Implement.
	  (xst_replace_printcap_remove_stanza_from_buf): Implement.
	  (xst_replace_printcap_remove_option_slot): Implement.
	  (xst_replace_printcap_remove_printer): Implement.
	  (xst_replace_printcap): Add stanzas and options that are referred
	  to but not present.

2001-06-27  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_cap): Comment out for now, we've got
	  something better up our sleeves.
	  (xst_replace_printcap_buffer_load): Implement.
	  (xst_replace_printcap_buffer_save): Implement.
	  (xst_replace_printcap_get_next_stanza): Implement.
	  (xst_replace_printcap_get_next_option): Implement.
	  (xst_replace_printcap_parse_stanza): Implement.
	  (xst_replace_printcap_parse_option): Implement.
	  (xst_replace_printcap_find_stanza): Implement.
	  (xst_replace_printcap_find_option): Implement.
	  (xst_replace_printcap): Implement.

2001-06-27  Arturo Espinosa Aldama  <arturo@ximian.com>

	* xml.pl.in (xst_xml_read_file): Code readability.
	(xst_xml_read_stdin): same, and wait for magic string to stop
	reading.
	(xst_xml_scan): readability.

	* general.pl.in (xst_run_directive): Print the request end string
	after every directive. This doesn't happen for the "end" directive,
	which terminates the process.

	* xml.pl.in (xst_xml_print_request_end): Print a request end string,
	encapsulated in an XML comment. This is for the frontends to know when
	the backend is ready for new input.

	* memory-conf.in (xml_print): No prototypes, thank-you. Read
	http://www.perl.com/pub/language/misc/fmproto.html for enlightening.
	(xml_print): Use xst_xml_print_{begin,end}.

	* x.pl.in: same. Prototypes were invented to allow people to
	call procedures as if they were Perl special functions. That's not
	what we want to do with these functions. Perl is ugly, let's choose
	"features" more carefuly. Same for shift and other abuses of the
	implicit variable, but I'll kill those on the run.

2001-06-21  Arturo Espinosa Aldama  <arturo@ximian.com>

	* general.pl.in (xst_print_interface): sort the keys to get a better
	result.

Tue Jun 12 04:41:33 2001  Arturo Espinosa  <arturo@ximian.com>

	* xml.pl.in (xst_xml_print_hash_hash): Sort the tags to print, to
	make schema documentation easier.
	(xst_xml_print_hash): same
	(xst_xml_print_arrays): same
	(xst_xml_print_scalars): same

2001-06-27  Hans Petter Jansson  <hpj@ximian.com>

	* print-conf.in: Update supported platforms.

	* print.pl.in: Ditto.

	* replace.pl.in (xst_replace_sh_export): Implement.
	  (xst_replace_sh_export_bool): Implement.
	  (xst_replace_cap): Implement.
	  (xst_replace_remove_cap_section): Implement.

2001-06-26  Tambet Ingo  <tambet@ximian.com>

	* xml.pl.in (xst_xml_get_text): ref safe now. Don't return 'ARRAY'
	if it's reference to array, send reference.

2001-06-22  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (parse_modeline): Implement. Doesn't work right yet.

2001-06-21  Tambet Ingo  <tambet@ximian.com>

	* x.pl.in (xst_xfree4_conf_get): Added support for "SubSection"s,
	improved readability A LOT, alomst a rewrite.

2001-06-20  Bradford Hovinen  <hovinen@ximian.com>

	* general.pl.in (xst_set_location): remove xst_archive_data

	* xml.pl.in (xst_xml_scan): Don't archive XML data

2001-06-20  Tambet Ingo  <tambet@ximian.com>

	* general.pl.in (xst_init): Use "SET_ME_UP_HARDER" env variable to
	turn on debugging (just like frontends do).

2001-06-19  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_sh_export_bool): Implement.
	  (xst_parse_cap): Implement.
	  (xst_parse_cap_bool): Implement.

	* print.pl.in (xst_print_conf_get): Rewrite.
	  (xst_printcap_read): Eliminate.
	  (xst_print_printers_get): Implement.
	  (xst_print_get_printer_parse_table): Implement.

2001-06-15  Arturo Espinosa Aldama  <arturo@ximian.com>

	* general.pl.in: Deprecated some globals that come now inside a hash
	structure. Those that are in a more general use should be passed to
	this hash in a future "no globals!" crusade.
	(xst_print_usage_synopsis): Prints the synopsis, adding get, set
	and filter functions only if they are present in the directives.
	(xst_print_usage_generic): The more explanatory text, with the
	same rationale as above. Added explanations for the new -i and -d args.
	(xst_print_usage): Simplified. May exit if requested.
	(xst_print_version): Use new hash structure to get info. May exit
	if requested.
	(xst_set_operation): Use new structure.
	(xst_set_with_param): Helper.
	(xst_set_op_directive): Sets the directive, taken from cmd arg.
	(xst_set_prefix): Sets the prefix.
	(xst_set_dist): And the distro.
	(xst_set_location): The location here.
	(xst_merge_std_directives): Adds the directives supported by all
	backends: end and interface. interface reveals the supported
	directives in an XML format to the frontend.
	(xst_init): Lots of cleanup, the new structure, and a little change
	in the order of the startup sequence.
	(xst_print_interface_comment): Print the directive comment in XML.
	(xst_print_interface): Print the interface XML, based on the directives hash.
	(xst_run_directive): The directives engine. Checks the number of
	params passed and calls the corresponding function.
	
	See the documentation on the new stuff here.

	(xst_run): The function that makes the backend enter interactive
	mode, or executes a directive, if given with -d at the prompt.
	
	* *-conf.in: Changed the "main" stuff with new boilerplate.
	
2001-06-14  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_cap_line_clean): Implement.
	  (xst_parse_cap_line_read): Implement.
	  (xst_parse_cap_sections): Implement.

2001-06-14  Arturo Espinosa Aldama  <arturo@ximian.com>

	* font.pl.in (regexp_cmp_foreach): helper.
	(xst_font_info_get_foundry_from_notice): Deduct foundry from copyright.
	(xst_font_info_get_setwidth_from_label): Deduct setwidth from font name.
	(xst_font_info_deduct_extras): From the information obtained, try to
	find implicit info.
	(xst_font_info_get_from_afm_buff): Parse an afm buffer, return font_info.
	(xst_font_info_get_from_afm_str): Split string in \n, parse buffer.
	(xst_font_info_get_from_afm): Read file into buffer, parse.
	(xst_font_info_get_from_ttf2pt1): Run ttf2pt1 -A, pipe into buffer, parse.
	(namerec_value): Helper for ttf routines.
	(xst_font_info_get_from_ttf): Use Font::TTF to get font_info from ttf.
	(xst_font_info_to_fontdir): Return fontdir line from font_info.

2001-06-13  Tambet Ingo  <tambet@ximian.com>

	* Makefile.am (backends): s/xconf/display/

	* x.pl.in: Many improvemets, parser works.

	* display-conf.in: Renamed from misnamed xconf-conf.in
	Mucho improvements.

2001-06-12  Richard Bos  <allabos@freeler.nl>

	* platform.pl.in (check_solaris): Add Solaris check.
	(xst_platform_guess): Allow for Solaris.

	* hardware-conf.in: Add required requires. Make it work.

2001-06-06  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (xml_print_import_smb): Don't print tags for user and
	  password if they are empty/unknown.

2001-06-06  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (xml_print_import_smb): Print <user> and <password> tags.
	  Fixes bug #3222.

2001-06-06  Arturo Espinosa Aldama  <arturo@ximian.com>

	* package-conf.in: contributed by Richard Bos <allabos@freeler.nl>
	* Makefile.am: added pertinent entries for package backend.

2001-06-05  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (change_user_chfn): Little fix.

2001-06-04  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in (get_fdisk): Know more about extended partitions.

2001-06-04  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (set): Merge things properly, so old options are kept.
	* filesys.pl.in (xst_filesys_table_merge_subset): Fix doc text.

2001-06-04  Hans Petter Jansson  <hpj@ximian.com>

	* filesys.pl.in (xst_filesys_info_set_network_host): Nicen input slightly.
	  (xst_filesys_info_set_network_path): Nicen input slightly.
	  (xst_filesys_info_get_dump): Return 0 if empty.
	  (xst_filesys_info_get_priority): Return 0 if empty.
	  (xst_filesys_entry_identify): Ensure return values agree with changes
	  in xst_filesys_info_set_network_*().

2001-06-04  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (remove_shares_from_filesys_table): Implement.
	  (set): Remove shares from filesys table.

2001-06-04  Tambet Ingo  <tambet@ximian.com>

        * x.pl.in: Add

	* xconf-conf.pl.in: Add

2001-06-04  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (change_user_chfn): Added hack to support Debian's chfn.

2001-06-01  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_dialing_set): Remove old sections
	that are not in the new values.
	(xst_network_suse70_set_ppp): Remove dialing hash entries,
	instead of removing in the file: this is done in dialing_get.
	(xst_network_iface2dial): don't overwrite login, phone and
	password: that's done at frontend level.
	Typo fixes.

	Lots of other typo fixes in network.pl.in. Basicly, I left
	SuSE 7.0 ppp management working, and did a lot of testing to
	make sure of that.

2001-06-01  Hans Petter Jansson  <hpj@ximian.com>

	Implement inline replacing of NFS entries and options.

	* share.pl.in (xst_share_nfs_info_dup): Implement.
	  (xst_share_nfs_info_match_data): Implement.
	  (xst_share_nfs_table_dup): Implement.
	  (xst_share_nfs_table_find): Implement.
	  (xst_share_nfs_table_find_info_equivalent): Implement.
	  (xst_share_nfs_client_info_dup): Implement.
	  (xst_share_nfs_client_table_dup): Implement.
	  (xst_share_nfs_exports_get_next_entry_line): Implement.
	  (xst_share_nfs_exports_get_entry_line_fields): Implement.
	  (xst_share_nfs_info_print_clients): Implement.
	  (xst_share_nfs_info_print_entry): Implement.
	  (xst_share_nfs_client_print_option_hash): Implement.
	  (xst_share_nfs_info_print_synthesized_entry): Implement.
	  (xst_share_nfs_exports_add_entry): Implement.
	  (xst_share_nfs_exports_update_entry): Implement.
	  (xst_share_nfs_exports_remove_entry): Implement.
	  (xst_share_nfs_exports_get_entry_line_point): Implement.
	  (xst_share_replace_nfs_exports): Re-implement.

2001-05-31  Arturo Espinosa Aldama  <arturo@ximian.com>

	* replace.pl.in (xst_replace_remove_ini_section): remove lines
	if they're left empty. This is nicer.

	* network.pl.in: Multiple fixes to new SuSE 70 ppp stuff. Did
	some testing. Still one bug in output remaining.

2001-05-30  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_iface2dial): To merge ppp interface
	information with dialing stuff.
	(xst_network_suse70_set_ppp): Implemented, with some trickery.
	(xst_network_suse70_ppp_iface_activate): Takes care of SuSE 70
	ppp interface activation.
	(xst_network_suse70_activate_ppp): same.

	* parse.pl.in (xst_parse_replace_hash_values): If replaced  value
	is a reference, set that as the interpolated value, not the
	string representation.

	* replace.pl.in (xst_replace_ini_bool_onoff): not required any more.

	* network.pl.in (xst_network_get_interface_replace_table): A typo.
	Bug 3133.
	(xst_network_dialing_get): Added new wvdial capabilities SuSE 70
	requires.
	(xst_network_dialing_set): same.
	(xst_network_get_new_dialing_dev): Get the latest device from the
	dialing hash.
	(xst_network_dial2iface): Convert a dialing profile into a ppp
	interface, for SuSE 7.0.
	(xst_network_suse70_get_ppp): Get ppp interfaces from dialing info.

2001-05-30  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_set_global_kw): Made it sane.
	(xst_boot_set_global): ditto.

	* file.pl.in (xst_file_buffer_save): Treat $buffer as scalar only if it is scalar.

2001-05-29  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_set_ppp_options_re): Respect
	comments and spacing in ppp files.
	(xst_network_set_ppp_options_unsup): Same.

2001-05-29  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in (xst_network_get_replace_table): Remove RESOLV_CONF
	in SuSE 7.0: it's created by SuSEconfig.

	* file.pl.in (xst_file_remove): Removes a file.

2001-05-29  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (change_user_chfn): Implement. use chfn to set finger infromation.
	(add_user): use (change_user_chfn).
	(change_user): ditto.

2001-05-28  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_parse_images): Preserve leading spaces of images.
	(xst_boot_parse_global): Don't double escape quotes.
	(xst_boot_conf_edit_image): Fixed bug where XstPartitionType lines got wrong.
	(xst_boot_conf_add_image): ditto.

2001-05-25  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_file_backup_rotate_dirs): Create the 'First' directory on
	  the first invocation, and provide a symlink to it which is rotated with
	  the other dirs. Fixes bug #2732.

2001-05-25  Arturo Espinosa Aldama  <arturo@ximian.com>

	* service.pl.in (xst_service_sysv_get_paths): Added redhat-7.1.

	* parse.pl.in (xst_parse_shell_escape): Some special chars
	are escaped when surrounded by quotes, so let's apply quotes
	if they appear, and not escape them with '\', as they may
	be latter surrounded by quotes and make the backslash appear.

	* parse.pl.in: More comment documentation.
	* replace.pl.in: same.

2001-05-25  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_conf_set_images): Reimplement.
	(xst_boot_conf_add_image): Helper function for (xst_boot_conf_set_images).
	(xst_boot_conf_edit_image): ditto.
	(xst_boot_conf_delete_image): ditto.
	(xst_boot_conf_is_image): ditto.
	(xst_boot_conf_find_image): ditto.

2001-05-25  Chema Celorio  <chema@celorio.com>

	* boot-conf.in (xml_print_global_kws): remove print. duh !
	* boot.pl.in (xst_boot_parse_global): ditto

2001-05-24  Arturo Espinosa Aldama  <arturo@ximian.com>

	* 0.5 RELEASE

2001-05-24  Arturo Espinosa Aldama  <arturo@ximian.com>

	* share.pl.in (xst_share_parse_nfs_exports): If the pattern
	for a client_info is empty, assume 0.0.0.0/0.

	* network.pl.in (xst_network_suse70_interface_activate): Fixed
	bug that prevented ifaces from activation/deactivation in suse70.
	(xst_network_interface_set): Force activation setup of interfaces.
	Implemented force macanism in other activation functions.

	* parse.pl.in (xst_parse_replace_files): return () if $values
	is undef.
	(xst_parse_from_table): Don't unshift files if none were passed.

	* replace.pl.in (xst_replace_from_table): same.

	* report.pl.in (xst_report_enter): Ugly hack to avoid po warnings.

2001-05-23  Arturo Espinosa Aldama  <arturo@ximian.com>

	* replace.pl.in (xst_replace_pump_get_next_option): More pump
	stuff.
	(xst_replace_pump_option_locate): Implemented.
	(xst_replace_pump_get_device): Implemented.
	(xst_replace_pump_add_device): Implemented.
	(xst_replace_pump_iface_option_str): Implemented.
	(xst_replace_pump_iface_kw): Implemented.
	(xst_replace_pump_iface_kw_not): Implemented.

	* parse.pl.in (xst_parse_from_table): eliminated dumb paranoia.
	(xst_parse_shell_unescape): Name change. This function unescapes.
	(xst_parse_shell_escape): Taken for replace, to use in other places.
	
	Pump stuff that may be useful for dhcpd.conf some day:
	(xst_parse_pump_get_next_option): Implemented.
	(xst_parse_pump_get_device): Implemented.
	(xst_parse_pump_get_iface_option_ref): Implemented.
	(xst_parse_pump_get_iface_kw): Implemented.
	(xst_parse_pump_get_iface_kw_not): Implemented.

	* network.pl.in (xst_network_pump_iface_supported): check if
	the iface is a type that pump supports.
	(xst_network_pump_get_nodns): Implemented.
	(xst_network_pump_set_nodns): Implemented.
	Added pump support to all distros that make use of it. peerdns
	inteface tag deprecated.

	* network-conf.in (xml_print): print new tag smartdhcpcd.

2001-05-23  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: XML tags: browseable -> browse, writable -> write.

2001-05-24  Chema Celorio  <chema@celorio.com>

	* network.pl.in (xst_network_get_interface_replace_table): added
	RH 7.1 based on RH 7.0

	* network-conf.in: added RH 7.1

2001-05-23  Chema Celorio  <chema@celorio.com>

	* users-conf.in: added RH 7.1

2001-05-23  Arturo Espinosa <arturo@ximian.com>

	* network.pl.in (xst_network_debian_woody_set_auto): Fixed
	invariant bug in while loop (bug 2714 fixed).

2001-05-23  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_set_global): Quote globals with spaces
	if neccecary.
	(xst_boot_conf_replace_image): Reverted from 1.23 changes,
	fixes bugs 2986 and 2989.

2001-05-22  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (xml_parse_conf): It's path, not point.

2001-05-20  Theo van Klaveren <t.vanklaveren@student.utwente.nl>

	* filesys.pl.in (xst_filesys_mount_cmd_parse): New function,
	parses output from 'mount -p' on FreeBSD.

	* platform.pl.in (check_freebsd): New function, double-checks
	FreeBSD version by querying the sysctl kern.version.
	(xst_platform_guess): Also check for FreeBSD.

	* shares-conf.in: Add FreeBSD to supported platforms.

	* users-conf.in: Add FreeBSD to supported platforms. Add paths
	for shadow_names, login_defs_names and skel_dir on FreeBSD.
	(read_passwd_shadow): Munge shell comments from passwd and
	shadow_passwd.

2001-05-21  Arturo Espinosa Aldama  <arturo@ximian.com>

	* xml.pl.in (xst_xml_scan): Use new debug_print_log func.

	* users-conf.in (change_user): Just changed arg order to
	make it easier to compare it with man page when checking
	compatibility.

	* replace.pl.in (xst_replace_sh): Changed behaviour so that
	shell var will be expunged from file if $value eq "".
	(xst_replace_sh_join): Implemented. Required by network:suse70

	* platform.pl.in (check_lsb): Check through lsb file, which
	may make our lives easier in the near future.
	check_*: use $xst_prefix to check platform too.

	* network.pl.in (xst_network_suse70_active_interfaces_get):
	Don't list "lo" as an active interface.
	(xst_network_suse70_ifaces_get_existing): Better code:
	finds all NETDEV vars in rc.config and takes values from there.
	(xst_network_suse70_parse_iface_num): Braking the 4
	interface barrier here too. SuSE 7.0 scripts are broken, still.
	(xst_network_suse70_set_ifconfig_arg): Beautified output.
	(xst_network_suse70_get_file): Completly missed implemening
	this one. New interfaces weren't getting a NETDEV number.
	(xst_network_get_file): "suse-7.0" entry added.
	(xst_network_suse70_interface_delete): Was calling activate
	_by_dev with wrong value for $dev.
	(xst_network_suse70_interface_delete): Oops. Use "_" between
	var type and $dev.
	(xst_network_ensure_loopback_interface): Those distros that
	map to "" are not "ensured".
	(xst_network_get_interfaces_parse_table): Changed from XST_NAME
	to XST_IFACE_NAME, which is more verbose.
	(xst_network_get_interface_replace_table): same.

	* debug.pl.in (xst_debug_print_log_to_file): Seems like
	print can't handle strings larger than 4096 bytes. This
	routine is for printing large strings that may contain
	\n's inside (like in.xml).

2001-05-18  Arturo Espinosa Aldama  <arturo@ximian.com>

	* replace.pl.in (xst_replace_sh_set_hostname): Wasn't
	receiving @_ values.
	(xst_replace_sh_set_domain): same.

	* parse.pl.in (xst_parse_sh_get_domain): Wasn't receiving
	@_ values. duh.
	(xst_parse_sh_get_hostname): same, and a typo.

	* network.pl.in (xst_network_suse70_active_interfaces_get):
	translate from SuSE interface numbers to actual devices.
	(xst_network_interface_active): Comparison was numerical.
	Changed to string cmp.
	(xst_network_suse70_parse_iface_sh): Interpolation wasn't
	working fine here. Added explicit braces.
	(xst_network_suse70_replace_iface_sh): same.
	(xst_network_suse70_get_ifconfig_arg): Returned value was
	1/undef, and not $1, as thought. Fixed.
	(xst_network_suse70_set_ifconfig_arg): Precedence bug.
	(xst_network_suse70_set_ifconfig_ip): same.
	Using a more flexible regexp for HOST_CONF order parsing.

	* network-conf.in: Added suse-7.0 to @platforms.

	* users-conf.in: Added suse-7.0

	* service.pl.in (xst_service_sysv_get_paths): an
	explanation comment I found useful to set.

	* replace.pl.in (xst_replace_sh_set_hostname): Implemented.
	(xst_replace_sh_set_domain): Implemented.

	* parse.pl.in (xst_parse_sh_split): Implemented. After
	taking a sh value, it splits it, returning ref to arr.
	(xst_parse_sh_get_hostname): Implemented.
	(xst_parse_sh_get_domain): Implemented.

	* network.pl.in (xst_network_suse70_ifaces_get_existing):
	Implemented.
	(xst_network_suse70_parse_iface_num): Implemented. Not used.
	(xst_network_suse70_parse_iface_auto): Implemented.
	(xst_network_suse70_replace_iface_auto): Implemented.
	(xst_network_suse70_parse_iface_sh): Implemented.
	(xst_network_suse70_replace_iface_sh): Implemented.
	(xst_network_suse70_get_ifconfig_arg): Implemented.
	(xst_network_suse70_set_ifconfig_arg): Implemented.
	(xst_network_suse70_set_ifconfig_ip): Implemented.
	(xst_network_suse70_interface_activate_by_dev): Implemented.
	(xst_network_suse70_interface_activate): Implemented.
	(xst_network_suse70_interface_delete): Implemented.
	(xst_network_suse70_parse_bootproto): Implemented.
	(xst_network_suse70_replace_bootproto): Guess what? Implemented.
	suse-7.0 parse/replace tables implemented too.

	* network-conf.in (xml_print, xml_parse): Got rid of "forward"
	option, and added "gateway" option, for those broken distros.

	* file.pl.in (xst_file_run): Trivial style changes.

2001-05-17  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in (get_fdisk): Omit entries for extended partitions.

2001-05-17  Hans Petter Jansson  <hpj@ximian.com>

	* gettext.pl.in (_): This manner of gettexting disabled due to speed
	  considerations.

2001-05-17  Arturo Espinosa Aldama  <arturo@ximian.com>

	* service.pl.in (xst_service_sysv_get_paths): Added woody and
	suse 7.0 paths.
	* *-conf.in: Added suse 7.0, except for network and users.
	* time-conf.in: Added suse 7.0 table, and missing woody entries.

2001-05-17  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (read_skel_dir): Implement.
	(xml_print): Print out files for Profiles.

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (xml_print_export_nfs): Add (unset) names to NFS exports.
	  (xml_print_export_smb): Add export name to XML output.

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* filesys.pl.in (xst_filesys_info_settings_to_options): Implement.
	  (xst_filesys_info_remove_option): Implement.

	* shares-conf.in (set): Add "noauto" to non-mount shares.

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Multiplatformize.
	  (distro_file): Implement.
	  (remove_local_from_filesys_table): Remove.
	  (remove_network_from_filesys_table): Remove.

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in (update_partition): Fix breakage, call
	  xst_filesys_ext2_device_to_label().

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_open_filter_write_from_names): Fix log output.

	* filesys.pl.in (xst_filesys_table_to_hash): Not in use, so removed.
	  (xst_filesys_hash_to_table): Ditto.
	  (xst_filesys_table_merge_superset): Use new compare algorithm, not
	  key generator.
	  (xst_filesys_table_merge_subset): Ditto.
	  (xst_filesys_fstab_get_next_entry_line): Fix printing of ignored lines.
	  (xst_filesys_info_print_device): Implement.
	  (xst_filesys_info_print_entry): Reduce.
	  (xst_filesys_fstab_replace): Fix to only print permanent file systems.
	  Comment out some debug.
	  (xst_filesys_mount_on): Implement.
	  (xst_filesys_mount_off): Implement.
	  (xst_filesys_mount_sync_all): Implement.

	* share.pl.in (xst_share_replace_nfs_exports): Put newline in right place.

	* xml.pl.in (xst_xml_get_state): Implement.

	* shares-conf.in: Completely rewritten shares backend.

2001-05-16  Arturo Espinosa Aldama  <arturo@ximian.com>

	* platform.pl.in (xst_platform_guess): Changed code so xst_dist = "unknown"
	if none of the checks passed.
	(check_*): they all now return -1 if failed, or dist string if success. No
	more global manipulation.

2001-05-15  Arturo Espinosa Aldama  <arturo@ximian.com>

	* replace.pl.in (xst_replace_interfaces_stanza_value): function renamed
	from "interface_stanza".

	* network.pl.in (xst_network_deb22_replace_bootproto): function renamed.
	
	* *-conf.in: Added support for Debian Woody. Woody users will have to
	do echo 'woody' > /etc/debian_version

	* boot.pl.in: debian-woody works as redhat-6.2.
	* network.pl.in: created new interface parse/replace tables for debian woody,
	because the /etc/network/interfaces format changes. Partialy implemented
	(only auto stanza supported, but not mapping stanza). Not tested.
	* parse.pl.in: stanza scanning routines no longer assume stanzas are iface
	type.
	* replace.pl.in: same here. Added auto_stanza create.

2001-05-16  Hans Petter Jansson  <hpj@ximian.com>

	* share.pl.in (xst_share_smb_info_get_name): Implement.
	  (xst_share_smb_info_set_name): Implement.
	  (xst_share_smb_table_find): Implement.
	  (xst_share_parse_smb_conf): Set share name as well.
	  (xst_share_replace_smb_conf): Implement.
	  (xst_share_replace_nfs_exports): Cosmetic fix.

	* replace.pl.in (xst_replace_ini): Change so that blank values will
	  remove the variable altogether.
	  (xst_replace_remove_ini_section): Implement.
	  (xst_replace_remove_ini_var): Implement.

	* test.pl: Test cases for my personal enjoyment tomorrow.

2001-05-15  Hans Petter Jansson  <hpj@ximian.com>

	* share.pl.in (xst_share_replace_nfs_exports): Implement.

2001-05-15  Hans Petter Jansson  <hpj@ximian.com>

	* share.pl.in (xst_share_smb_info_new): Implement.
	  (xst_share_smb_info_set): Implement.
	  (xst_share_smb_info_get_point): Implement.
	  (xst_share_smb_info_set_point): Implement.
	  (xst_share_smb_info_get_comment): Implement.
	  (xst_share_smb_info_set_comment): Implement.
	  (xst_share_smb_info_get_enabled): Implement.
	  (xst_share_smb_info_set_enabled): Implement.
	  (xst_share_smb_info_get_browse): Implement.
	  (xst_share_smb_info_set_browse): Implement.
	  (xst_share_smb_info_get_public): Implement.
	  (xst_share_smb_info_set_public): Implement.
	  (xst_share_smb_info_get_write): Implement.
	  (xst_share_smb_info_set_write): Implement.
	  (xst_share_smb_table_new): Implement.
	  (xst_share_smb_table_add): Implement.
	  (xst_share_nfs_info_new): Implement.
	  (xst_share_nfs_info_set): Implement.
	  (xst_share_nfs_info_get_point): Implement.
	  (xst_share_nfs_info_set_point): Implement.
	  (xst_share_nfs_info_get_client_table): Implement.
	  (xst_share_nfs_info_set_client_table): Implement.
	  (xst_share_nfs_table_new): Implement.
	  (xst_share_nfs_table_add): Implement.
	  (xst_share_nfs_client_info_new): Implement.
	  (xst_share_nfs_client_info_set): Implement.
	  (xst_share_nfs_client_info_get_pattern): Implement.
	  (xst_share_nfs_client_info_set_pattern): Implement.
	  (xst_share_nfs_client_info_get_write): Implement.
	  (xst_share_nfs_client_info_set_write): Implement.
	  (xst_share_nfs_client_table_new): Implement.
	  (xst_share_nfs_client_table_add): Implement.
	  (xst_share_parse_smb_conf): Implement.
	  (xst_share_parse_nfs_exports): Implement.

	* Makefile.am: Add share.pl.in.

2001-05-15  Hans Petter Jansson  <hpj@ximian.com>

	* filesys.pl.in (xst_filesys_translate_ext2_device_to_label): Rename to
	  xst_filesys_ext2_device_to_label.
	  (xst_filesys_info_dup): Fix bug in options copying.
	  (xst_filesys_info_merge_options): Fix typo in doc.
	  (xst_filesys_info_set_options): Sync doc with actual use.
	  (xst_filesys_info_match): Implement.
	  (xst_filesys_info_match_options): Implement.
	  (xst_filesys_info_match_data): Implement.
	  (xst_filesys_table_find): Reimplement.
	  (xst_filesys_table_find_info_equivalent): Implement.
	  (xst_filesys_hash_to_table): Fix typo in doc.
	  (xst_filesys_entry_identify): Implement.
	  (xst_filesys_entry_identify_info): Implement.
	  (xst_filesys_parse_fstab): Rename to xst_filesys_fstab_parse and shortened
	  drastically.
	  (xst_filesys_parse_mtab): Rename to xst_filesys_mtab_parse and shortened
    drastically.
	  (xst_filesys_fstab_get_next_entry_line): Implement.
	  (xst_filesys_fstab_get_entry_line_fields): Implement.
	  (xst_filesys_fstab_get_entry_line_comments): Leave unimplemented for now.
	  (xst_filesys_info_print_options): Implement.
	  (xst_filesys_info_print_entry): Implement.
	  (xst_filesys_fstab_add_entry): Implement.
	  (xst_filesys_fstab_update_entry): Implement.
	  (xst_filesys_fstab_remove_entry): Implement.
	  (xst_filesys_fstab_replace): Implement.

2001-05-15  Chema Celorio  <chema@celorio.com>

	* internetsharing-conf.in (xst_ishare_rules_get_ipchains): implement.

2001-05-14  Chema Celorio  <chema@celorio.com>

	* time-conf.in: tested in RH 7.1. Add the platform

2001-05-13  Chema Celorio  <chema@celorio.com>

	* internetsharing-conf.in (conf_get_replace_table): initial code for
	this tool. It is not doing a lot right now

2001-05-12  Chema Celorio  <chema@celorio.com>

	* time-conf.in (xml_parse): small typo

2001-05-12  Hans Petter Jansson  <hpj@ximian.com>

	* time-conf.in: Fixed timezone write bug.

2001-05-10  Hans Petter Jansson  <hpj@ximian.com>

	* report.pl.in: Added new key to message table.

2001-05-10  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_split_hash_with_continuation): Implement.

2001-05-10  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in: Include '-' in fstab option matching.

2001-05-10  Hans Petter Jansson  <hpj@ximian.com>

	* network.pl.in: For redhat-7.0, smb.conf is in /etc/samba/smb.conf. Make
	  a new pair of parse/replace-tables for this.

2001-05-09  Hans Petter Jansson  <hpj@ximian.com>

	* filesys.pl.in (xst_filesys_info_get_network_host): Implement.
	  (xst_filesys_info_set_network_host): Implement.
	  (xst_filesys_info_get_network_path): Implement.
	  (xst_filesys_info_set_network_path): Implement.
	  (xst_filesys_info_get_mounted): Implement.
	  (xst_filesys_info_set_mounted): Implement.
	  (xst_filesys_info_get_permanent): Implement.
	  (xst_filesys_info_set_permanent): Implement.
	  (xst_filesys_info_get_detected): Implement.
	  (xst_filesys_info_set_detected): Implement.
	  (xst_filesys_table_set_mounted_true): Implement.
	  (xst_filesys_table_set_permanent_true): Implement.
	  (xst_filesys_table_set_detected_true): Implement.
	  (xst_filesys_parse_fstab): Parse network-specific options.
	  (xst_filesys_parse_mtab): Ditto.

2001-05-09  Arturo Espinosa Aldama  <arturo@ximian.com>

	* 0.4 RELEASE

2001-05-09  Hans Petter Jansson  <hpj@ximian.com>

	* time-conf.in: Red Hat 7.0 timezone fix from Arturo.

2001-05-09  Arturo Espinosa Aldama  <arturo@ximian.com>

	* report.pl.in (xst_report): We're sending report strings into debug
	file again: they're quite useful.

	* debug.pl.in (xst_debug_open_output_file): set up a hash here so we
	cache the opened files. 
	(xst_debug_print_string_to_file): Not closing this files any more.

2001-05-08  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (set_immediate): Fix up the path before creating share
	  string.

2001-05-08  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (set_immediate): Use smbmount directly and don't rely on
	  fstab entry.

2001-05-08  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network-conf.in (xml_print): Oops: print dialinstalled
	tag too.

	* parse.pl.in (xst_parse_split_ref): Do a regexp comparison,
	which is more flexible.

	* network.pl.in (xst_network_get_parse_table): Check if
	wvdial tool is installed. Just to warn the user about it.
	(xst_network_get_pap_passwd): Handle values surrounded
	by double quotes.

	* file.pl.in (xst_file_tool_installed): Check if a tool
	is found. Return 1/0 value.

	* general.pl.in (xst_end): Turn off reporting here, to make
	sure no further reporting gets mixed with the XML.

	* network.pl.in (xst_network_sysconfig_ifaces_get_existing):
	only check files that START with ifcfg-. This was confusing
	the backend with Mandrake's, and potentially others, backup
	files.

2001-05-08  Arturo Espinosa Aldama  <arturo@ximian.com>

	After some profiling, some optimizations:
	
	* report.pl.in (xst_report): Only send debug string if debug flag
	is set.

	* parse.pl.in (xst_parse_from_table): Calling xst_report instead
	of doing a direct debug.

	* gettext.pl.in (gettext): gettext results are now cached. This
	is still too expensive, and we should use the gettext CPAN module.

	* file.pl.in (xst_file_open_read_from_names): removed unnecesary
	debug function.
	(xst_file_run): system already calls with /bin/sh -c. Removed.
	  

2001-05-07  Arturo Espinosa Aldama  <arturo@ximian.com>

	* report.pl.in (xst_report_enter, xst_report_leave): trivialized
	  until a new solution comes. Read comments for comments.

2001-05-04  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (read_exports): Parse NFS exports without options correctly.
	  (print_xml): Print a default name for unnamed shares.

2001-05-04  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (write_fstab): Don't leave unaccounted-for shares lying
	  around.
	  (set_immediate): Use new service calls. Interim fix.

2001-04-30  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (print_xml): Fixed an output problem in <allow> tags.

2001-04-27  Hans Petter Jansson  <hpj@ximian.com>

	Did a h4rD<0r3 patch of disks-conf.in, to allow it to operate on
	ext2 LABEL= devices found in the fstab.

	* disks-conf.in (update_partition): If we have a device node, try to get
	  its label. If we have a label, look for partitions with matching label
	  in all disks. Set the label when appropriate. Retrofitted with the new
	  filesys code.
	  (get_partition): Look for label as well.
	  (get_partition_data): Ditto.
	  (read_fstab): Handle LABEL= lines.
	  (write_fstab): Ditto.
	  (xml_parse_partition): Parse <label> tags.
	  (xml_print): Print <label> tags.

2001-04-27  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_file_open_filter_write_from_names): Corrected a bug which
	  would cause the file to never be found. Local variables don't propagate
	  upwards.

2001-04-27  Arturo Espinosa Aldama  <arturo@ximian.com>

	* parse.pl.in (xst_parse_process_sh_line): sepparated from
	shell parsing code for reusability.

	* boot.pl.in (xst_boot_conf_replace_image): simplified function.
	Still too big, but not as much. Fixed bug that appeared when two
	sections using the same image but different label. No values
	come out with the quotes inside. This are added/deleted now at
	the backend level.

	* boot-conf.in (xml_parse_boot): Added keytable support, guided by
	some unexplained impulse.
	(xml_print): replaced xml_print_globals with xst_xml_print_scalars.

2001-04-26  Arturo Espinosa Aldama  <arturo@ximian.com>

	* boot-conf.in: removed useless commented debug code.
	* boot.pl.in: Added mandrake-7.2 and debian-2.2 table equivalences.
	Fixed bug where a comment would get into the options hash.
	* memory-conf.in: end_of_description; should go at beginning of line.
	* time-conf.in: qw values were separated by comma. fixed.
	timezone description file comments are those that START with #.
	
2001-04-26  Chema Celorio  <chema@celorio.com>

	* Makefile.am (EXTRA_DIST): add print-conf.in to pass distcheck
	(EXTRA_DIST): added mouse-conf.in

2001-04-26  Arturo Espinosa Aldama  <arturo@ximian.com>

	* boot-conf.in: Added mandrake-7.2 and debian-2.2 as supported platforms.
	* disks-conf.in: Added mandrake-7.2 and debian-2.2 as supported platforms.
	* memory-conf.in: Added mandrake-7.2 and debian-2.2 as supported platforms.
	Some indentation corrections.
	* print.pl.in: Escaped a couple of hashes that confused emacs.
	* print-conf.in: Added mandrake-7.2 and debian-2.2 as supported platforms.
	* users-conf.in: Added mandrake-7.2 and debian-2.2 as supported platforms.
	
2001-04-25  Arturo Espinosa Aldama  <arturo@ximian.com>

	* filesys.pl.in (xst_filesys_translate_ext2_device_to_label):
	chomp is the same in this case, and a common idiom. Also,
	always return $label, as "" eq undef.
	Some other style changes.
	(xst_filesys_table_merge_superset): merge stuff missing in
	first table from second one.
	(xst_filesys_table_merge_subset): delete stuff in first table
	missing	in second.
	(xst_filesys_table_to_hash): This made these two possible.
	(xst_filesys_hash_to_table): Don't you love Perl?
	(xst_filesys_info_merge): Merge stuff inside infos.
	(xst_filesys_info_merge_options): And options.
	(merge_hashes): Small utility that makes life more bearable.

2001-04-23  Arturo Espinosa  <arturo@ximian.com>

	* debug.pl.in: minor cosmetic change to path.
	* general.pl.in: require gettext.pl routines and set textdomain
	to "ximian-setup-tools".
	* gettext.pl.in: Removed function N_. This is only a C trick
	to fool the preprocessor. Oh, but this is not C.
	* report.pl.in: Surround strings to be translated by '_()'.
	
2001-04-23  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in: init.d script for smb in Debian is samba.
	* service.pl.in (xst_service_sysv_get_paths): Added paths for
	  Debian and Mandrake.
	* time-conf.in: Check for service availability and activation.
	  Minor indentation fixes.
	
2001-04-23  Arturo Espinosa  <arturo@ximian.com>

	* parse.pl.in (xst_parse_interfaces_option_str/kw): this code
	  was passing invalid xst_report keys. How did this get here?

	* time-conf.in: redhat-7.0, mdk-7.2 & debian-2.2 parse/replace
	  tables.
	
2001-04-20  Arturo Espinosa  <arturo@ximian.com>

	* report.pl.in (xst_report): As we are killing the format strings
	  from the frontend common code, we pass it in the report now.
	
2001-04-19  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in (xst_file_run): return -1 if command fails to be found.
	  return system (command) / 256 (as stated in perlfunc) to return exit
	  code of process. Fixed stdio/stderr redirection.
	  (xst_file_locate_tool): return trivialy if path is absolute.
	* network.pl.in: when checking for "smbuse", use new service behaviour
	  to check for smbd and nmbd.
	  Parsing for hosts and dns servers now filters repeated entries out.
	* service.pl.in (xst_service_sysv_get_status): some init.d scripts are broken.
	  Stole redhat's init.d/function:status to do new, more fine-grained checking.
	  (xst_service_sysv_get_status_any): just a proxy.
	  (xst_service_sysv_run_initd_script): fixed init.d script invocation typo.
	  (xst_service_sysv_set_status): Always set links, to fix broken setups.
	* network-conf.in (xml_parse_network, push_unique): when parsing hosts and
	  dns servers, filter repeated entries out.
	* parse.pl.in (xst_parse_split_all_unique_hash_comment,
	  xst_parse_split_first_array_unique): new functions that return arrays with
	  unique elements.
	
	
2001-04-17  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in: changed wrong report keys.
	* network-conf.in: smbuse and smbinstalled support.
	* network.pl.in: ditto.
	* service.pl.in (xst_service_sysv_installed): tells if certain service
	  is installed, by looking for the sysv script. Maybe should use rpm or
	  dpkg for this.
	
2001-04-14  Chema Celorio  <chema@celorio.com>

	* time-conf.in (conf_get_replace_table): typo . duh !

	* network-conf.in: ditto
	
	* users-conf.in: add Mandrake 7.2

2001-04-14  Chema Celorio  <chema@celorio.com>

	* time-conf.in: add Mandrake 7.2
	(conf_get_replace_table): link mdk 7.2 to rh 6.2
	(conf_get_parse_table): ditto.

2001-04-11  Bradford Hovinen  <hovinen@ximian.com>

	* xml.pl.in (xst_xml_scan): Call &xst_archive_data

	* general.pl.in (xst_archive_data): Implement. Archive data with
	the Ximian archiver

	* Makefile.am ($(perl_libs)): Add substitution for bin directory

2001-04-03  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in (read_fstab): Fix detection of username for SMB imports.

2001-04-03  Ravi Pratap  <ravi@che.iitm.ac.in>

	* .cvsignore : add mouse-conf.in

2001-04-02  Michael Meeks  <michael@ximian.com>

	* backends/print.pl.in: Revise to simplify

	* backends/print-conf.in: ditto.

2001-03-30  Ravi Pratap  <ravi@che.iitm.ac.in>

	* mouse-conf.in (get, set, filter) : Add
	(xst_mouse_conf_get, xml_print): Implement

2001-03-29  Ravi Pratap  <ravi@che.iitm.ac.in>

	* mouse-conf.in : Add

	* Makefile.am : Modify accordingly

2001-04-02  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Generate/parse XML suitable for displaying in e-tables.

2001-04-02  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Fixed broken report calls.

2001-04-02  Kenneth Christiansen  <kenneth@gnu.org>

        * perldoc.pl: A JavaDoc like system for Perl
	* option.pl: A module required by the above program.

2001-03-31  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_fstab): Went back underground, now rumored to
	  be living in filesys.pl.in, under the name xst_filesys_parse_fstab().

2001-03-31  Hans Petter Jansson  <hpj@ximian.com>

	* filesys.pl.in: Added. Implements parsing of fstab and mtab files,
	  and manipulating the information presented by these as in-memory
	  structures.

2001-03-30  Arturo Espinosa Aldama  <arturo@ximian.com>

	* report.pl.in (xst_report): new "::" separated report format.

	* general.pl.in: when asking for report, set $xst_do_report, not
	$xst_do_verbose.

2001-03-29  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_scan): Now accepts a filename to scan from. Fallback
	  remains stdin.

2001-03-29  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_fstab): Don't use -> for hash indirection.

2001-03-29  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_fstab): Implement.

2001-03-29  Kenneth Christiansen  <kenneth@gnu.org>

        * internet-share: replacement for ishare-launc.pl. Try to follow
          the naming use in /etc/rc.d/rc.init. If you place this file there
          and put the config file in the dir specified in internet-share it
          should be able to run this script at startup.
        * ishare-launch.pl: remove

2001-03-29  Kenneth Christiansen  <kenneth@gnu.org>

        * internet-config.cfg: Template for now an internet config can look
        * ishare-launch.pl: Launcher program that reads the above config file
          and activates the settings.

2001-03-29  Hans Petter Jansson  <hpj@ximian.com>

	* debug.pl.in (xst_debug_print_struct): Print all arguments.
	  (xst_debug_print_struct_r): Indentation correction.

2001-03-29  Simo Sorce  <simo.sorce@polimi.it>

	* shares-conf.in (xml_print): Make XML printing work again.

	* util.pl.in (xst_read_boolean): Ignore case in boolean-denoting strings.

2001-03-29  Arturo Espinosa  <arturo@ximian.com>

	* report.pl.in: Report entries for replace.
	* replace.pl.in: Documented functions, and
	  added report stuff too.
	
2001-03-29  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (read_shells): Implement.
	(xml_print_shells): Implement.

	* general.pl.in (xst_init): Fixed typo.

2001-03-28  Hans Petter Jansson  <hpj@ximian.com>

	* general.pl.in: Honour --verbose flag like --report.

	* report.pl.in (xst_report): --verbose output is human-readable. Make sure
	  verbose output gets printed independently of report - they're two
	  different requestable output log formats.
	  (xst_report_message): Trivial re-indent of table.

2001-03-28  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in: smbuse, a feature that reports if
	  the samba daemon is running.
	
2001-03-28  Arturo Espinosa  <arturo@ximian.com>

	* report.pl.in: New report code, which dumps the use
	  of mayor and minor numbers and uses keys instead. A
	  hash, mapping keys to messages is at the end of this
	  file. Fitted progress report with this scheme.

	* *.in: use new reporting code. Some other naming and
	  style corrections I found on the way.
	
2001-03-28  Ryan Boren <rboren@fuzzybelly.org>

	* print.pl.in (xst_printcap_read): parse the ##PRINTTOOL##
	line to grok another description

	* print-conf.in (xml_parse, xml_parse_printer): fixup
	(xml_parse_section): impl.
	(xml_print_printer): add description.

2001-03-26  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (write_logindefs): Implement.

2001-03-26  Ryan Boren <rboren@fuzzybelly.org>

	* backends/print-conf.in (xst_printcap_read): Fix spool
	naming and contents assumptions.

2001-03-22  Michael Meeks  <michael@ximian.com>

	* backends/print-conf.in (xml_print): don't put redundant
	extra print header and footer in.

2001-03-21  Ryan Boren <rboren@fuzzybelly.org>

	* backends/*: my $var -> my ($var) everywhere

	* backends/*: @_[n] -> $_[n] everywhere

	* backends/network-conf.in: Use qw in places.

	* backends/*: forward -> "forward" etc.

	* backends/parse.pl.in, backeds/replace.pl.in: replace
	\n in regexps with $n.
	
2001-03-21  Michael Meeks  <michael@ximian.com>

	* Makefile.am: add print bits.

	* print-conf.in: Add.

	* print.pl.in: Add.

	* parse.pl.in (xst_shell_escape): split from
	(xst_parse_sh): here.
	(xst_parse_sh_export): impl.

2001-03-21  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (xml_scan): We need raw xml and slightly modified from xst_xml_scan.
	(save_profiles): Implement.

	* file.pl.in (xst_file_get_data_path): Implement.
	(xst_buffer_save): Now it can write one line of text also.

	* users-conf.in (xml_print_profiles): Don't print empty tags if no profiles defined.

2001-03-20  Arturo Espinosa  <arturo@ximian.com>

	Bug fixes for Debian port to work well.
	
	* network.pl.in (xst_network_interface_activate):
	  renamed to xst_network_interface_active.
	  (xst_network_deb22_get_file): found what this
	  function does. It should trivialy return $dev.
	  (xst_network_deb22_replace_bootproto): "none"
	  is mapped to "static", not the other way. Also,
	  the stanza value to replace is the 2nd, not 3rd.
	  (xst_network_debian_replace_remote_address): the
	  option name is "up", not "on".
	  (xst_network_get_interfaces_parse_table): features
	  not supported by distro are trivialy set to some
	  default value.
	* replace.pl.in (xst_replace_interfaces_get_next_option):
	  backtrack if last lines found were empty lines, so
	  added options get before those, instead of after. Just
	  for beauty.
	  (xst_replace_interface_stanza_value): create stanza
	  if not found. Added missing chomp.
	  (xst_replace_interfaces_option_str): Another missing
	  chomp.
	
2001-03-20  Kenneth Christiansen  <kenneth@gnu.org>

	reviewed by: Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in: Added some my's
	  implimented stack for managing tag containers
	* xml.pl.in(xst_xml_(print|format)_indent): 
	  Made format version
	* xml.pl.in(xst_xml_(print|format)_pcdata: 
	  New function for printing pcdata  
	* xml.pl.in(xst_xml_(print|format)_state_tag): 
	  Made format version, cleaned up a little
	* xml.pl.in(xst_xml_container_enter): New function     
	* xml.pl.in(xst_xml_container_leave): New function
	* xml.pl.in(xst_xml_print_container): New function

2001-03-20  Tambet Ingo  <tambet@ximian.com>

        * users-conf.in: Initial support for profiles.

2001-03-20  Michael Meeks  <michael@ximian.com>

	* xml.pl.in (xst_xml_print_line): print @_ not $_[0] -
	fixes bug in memory conf.

2001-03-19  Michael Meeks  <michael@ximian.com>

	* Makefile.am: Clean.

2001-03-19  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in (xst_buffer_load): return a ref to an empty
	  array if file not found. This lets the buffer be
	  filled with stuff as soon as the function returns.
	* network.pl.in: some function renaming, a minor
	  prefix usage bug and the interface configuration editting
	  functions and table for Debian 2.2. semi-tested.
	* parse.pl.in: minor code simplification.
	* replace.pl.in: all the debian interfaces file replacers.

2001-03-17  Hans Petter Jansson  <hpj@ximian.com>

	* Added gettext.pl.in by Kenneth Christiansen.

2001-03-16  Arturo Espinosa  <arturo@ximian.com>

	* Network parsing works fully for Debian. Tested on Poiss.
	* network.pl.in (xst_network_active_interfaces_get): fixed
	  network discovery command.
	  (xst_network_interfaces_get_existing): get existing ifaces
	  for Debian.
	  (xst_network_debian_get_file): counterpart of a useless
	  function. :)
	  (xst_network_get_chap_passwd): deleted. Useless.
	  (xst_network_get_ppp_options_re): general function to get
	  options from pppd option files.
	  (xst_network_get_ppp_options_unsup): get unknown options.
	  (xst_network_debian_parse_remote_address): cool hack that
	  allows plip existance under Debian.
	  Some parse and replace table beautifying.
	* parse.pl.in (xst_parse_replace_hash_values): more flexible
	  replacing. New syntax is %has_value%, anywhere on the param.
	  Check the interface parse table for Debian for an example.
	  (xst_parse_trivial): Just return the arguments.
	  Modified return value for all line parsers: the old method
	  regarded a line containing "-1" as EOF. Now returning
	  a refference to the string, or -1 if EOF.
	  (xst_parse_split_ref): returns -1 if key not found.
	  (xst_parse_split): now calls xst_parse_split_ref, and generates
	  old behaviour.
	  (xst_parse_kw): look for a keyword matching $re, reporting
	  existence.
	  (xst_parse_chat): minor nesting simplification.
	  Other minor bugs.
	* report.pl.in: Perl style change. @array[index] -> $array[index]

	
2001-03-15  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in: Added supported platform "debian-2.2".
	  Removed RH-dependent gateway and gateway_dev params.
	* network.pl.in (xst_network_active_interfaces_get):
	  improved ifconfig call and filter.
	  (xst_network_debian_parse_bootproto): bootproto translation
	  from interfaces file for a given iface in Debian.
	  Added Debian parsing tables and general network replace
	  table.
	* parse.pl.in: Lots of stuff here. Basicly parsing functions
	  for the Debian interfaces file.
	* platform.pl.in (check_debian): changed quotes to double
	  quotes. $xst_dist appeared as debian-$ver!
	
2001-03-15  Hans Petter Jansson  <hpj@ximian.com>

	* test.pl: Added test skeleton.

2001-03-13  Hans Petter Jansson  <hpj@ximian.com>

	* boot-conf.in: Modernize XML printing - do all output through
	  xst_xml_print_* calls.

	* network-conf.in: Ditto.

	* time-conf.in: Ditto.

	* users-conf.in: Ditto.

2001-03-13  Hans Petter Jansson  <hpj@ximian.com>

	* boot-conf.in: Remove calls to xst_begin() - it's invoked by
	  xst_init(). Unfortunately this makes the code asymmetric, but if
	  we were to invoke it ourselves, we'd also have to call
	  xst_platform_ensure_supported() in three places.

	* network-conf.in: Ditto.

2001-03-13  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_print_state_tag): Renamed from
	  xst_xml_print_state. Removed spurious indent.
	
	* disks-conf.in (xml_print): Use xst_xml_print_state_tag instead of
	  direct print..

	* media.pl.in (xst_media_xml_print): Use xst_xml_print_state_tag.

2001-03-13  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_print_begin): Implement.
	  (xst_xml_print_end): Implement.
	  (xst_xml_print_indent): Use xst_xml_print_string.
	  (xst_xml_print_vspace): Use xst_xml_print_string.
	  (xst_xml_print_state): Use xst_xml_print_string.

	* disks-conf.in (xml_print): Use xst_xml_print_(begin|end).

2001-03-13  Hans Petter Jansson  <hpj@ximian.com>

	* debug.pl.in: Fixed bug, debug 9 was not being rotated out.

2001-03-12  Arturo Espinsoa  <arturo@ximian.com>

	* network.pl.in: using debug functions for messages.
	* parse.pl.in: same
	* replace.pl.in: quote backquote also in replace_sh.
	* xml.pl.in: &quot; was being transformed into \'. Should
	  be ' only. Fixed.
	
2001-03-12  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_indent): -> xst_xml_print_indent.
	  (xst_xml_vspace): -> xst_xml_print_vspace.
	  (xst_xml_print_string): Implement.
	  (xst_xml_print_line): Use xst_xml_print_string().

	* boot-conf.in disks-conf.in hardware-conf.in
	  media.pl.in memory-conf.in network-conf.in
	  removable-media.pl.in time-conf.in users-conf.in:

	  xst_xml_indent -> xst_xml_print_indent.
	  xst_xml_vspace -> xst_xml_print_vspace.

2001-03-08  Arturo Espinosa  <arturo@ximian.com>

	* service.pl.in: New functions to handle SysV rc
	  scripts, a little better organized code.
	* time-conf.in: Use xst_service_sysv_set_status
	  and get_status now.
	* Removing networking-conf.in, nameresolution-conf.in
	  and network-conf.in.bak.

	
2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_open_read_from_names): Missing $ in var for
	  debug output corrected.

2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* boot-conf.in disks-conf.in hardware-conf.in media.pl.in
          memory-conf.in nameresolution-conf.in network-conf.in
          networking-conf.in removable-media.pl.in time-conf.in
          users-conf.in xml.pl.in: xst_xml_print -> xst_xml_print_line.

	  Doing this replace first, in a way that shouldn't affect the
	  handful of other functions starting with xst_xml_print_.

2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* replace.pl.in (xst_replace_ini): Use debug funcs.
	  (is_array_ref): Use debug funcs.

2001-03-08  Arturo Espinosa  <arturo@ximian.com>

	* time-conf.in (time_set_local_time, time_set_rh62_zone,
	time_rh62_service_set_status, conf_set): replace functions.
	Not tested yet.
	* time-conf.in (time_get_local_time): bad order in scalar
	assignment. fixed.
	* time-conf.in (xml_print): mistakingly deleted timezone
	printing. fixed.
	
2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* Makefile.am: Remove nameresolution-conf relics.

2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* general.pl.in: Add $xst_debug flag.
	  (xst_init): Honour --debug arg and XST_DEBUG env. Also some
	  comments.

	* debug.pl.in (xst_debug_print_indent): Use xst_debug_print_string().
	  (xst_debug_print_string): Print to STDERR only if $xst_debug set.

2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_quote): return() -> return, makes code look
	  more uniform.
	  (xst_xml_get_word): Missing semicolon added.
	  (xst_xml_get_text): Missing semicolon added.

2001-03-08  Hans Petter Jansson  <hpj@ximian.com>

	* debug.pl.in (xst_debug_open_output_file): Implement.
	  (xst_debug_print_string_to_file): Implement.
	  (xst_debug_print_indent): Print to file. More efficient.
	  (xst_debug_rotate_try): Fix bug that would lead to multiple
	  rotations on one backend invocation.

	* file.pl.in (xst_open_read_from_names): Use debug funcs.
	  (xst_buffer_save): Use debug funcs.

	* xml.pl.in (xst_xml_scan): Dump scanned XML to in.xml.
	  (xst_xml_get_pcdata): Use debug funcs.

2001-03-07  Arturo Espinosa  <arturo@ximian.com>

	* replace.pl.in (xst_replace_from_table): big oops here. A
	  line of old code (51) wasn't deleted and this prevented any
	  changes to take place.
	* network.pl.in (xst_network_ensure_loopback_interface): Ensure
	  the interface is activated if it already exists.
	* parse.pl.in: line analyzers take care of reading the file, so
	  we can have routines that read more than one line, etc.
	* time-conf.in: replace table, but this isn't working yet.
	
	
2001-03-06  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in: moved xml_print stuff to xml.pl.in. Removed
	  stale set_immediate code.
	* parse.pl.in: xst_parse_replace files. Now it is possible to
	  pass a reference to an array with several files to be replaced
	  from the fn hash. Check time-conf.in (conf_get_parse_table) for
	  an example.
	  (xst_parse_chomp_line_std, xst_parse_chomp_line_hash_comment):
	  line reading routines. The latter remove hash comments.
	  (xst_parse_split): now receives a ref to a sub for the line
	  reading sub, with xst_parse_chomp_line_std as default.
	  (xst_parse_*): pass the line_read_proc param all around.
	* replace.pl.in (xst_replace_from_table): same as xst_parse_replace.
	* time-conf.in: an almost complete rewrite. XML structure changed a
	  bit.
	* xml.pl.in: moved the xst_xml_print* subs here. Renamed xml_print_hash
	  to xst_xml_print_hash_hash, and created new xst_xml_print_hash,
	  which does what its name says.
	
2001-03-05  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_file_get_debug_path): Implement.

2001-03-05  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in: Added redhat-7.0.

2001-03-05  Hans Petter Jansson  <hpj@ximian.com>

	* debug.pl.in: Implement xst_debug_rotate_try().

2001-03-02  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in: add loopback interface if it doesn't exist
	  (ensure_loopback). Add "localhost" and "localhost.localdomain"
	  entries to loopback statichost entry.
	
2001-03-01  Hans Petter Jansson  <hpj@ximian.com>

	* debug.pl.in: Implemented basic debug functions.
	* Makefile.am: Included debug.pl.in in build and install.

2001-03-01  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in (xst_run): run command with sh -c.
	* network.pl.in (xst_network_interface_active): make interface discovery
	  platform indpenedent: old method couldn't detect if ifconfig failed.
	
2001-02-28  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in (read_fstab, write_fstab): Don't touch UUID= either.

2001-02-28  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in (xst_open_write_from_names): old criterion was preventing
	  file creation. Create file if it doesn't exist, under any condition.
	
2001-02-28  Hans Petter Jansson  <hpj@ximian.com>

	* disks-conf.in (read_fstab, write_fstab): Don't touch LABEL= lines
	  for now.

2001-02-27  Chema Celorio  <chema@celorio.com>

	* boot.pl.in (xst_boot_conf_set): fix a small typo

2001-02-27  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in (xml_parse_network): support winsuse boolean.
	* network.pl.in (xst_network_get_replace_table, parse_table): winsuse.
	* parse.pl.in (xst_parse_ini_bool): get a boolean from an ini file.
	* replace.pl.in (xst_replace_ini_bool): save a boolean...
	* xml.pl.in (xml_get_pcdata): return "" if tag doesn't have contents.
	
2001-02-26  Chema Celorio  <chema@celorio.com>

	* Makefile.am (perl_libs): remove be.pl

2001-02-27  Tambet Ingo  <tambet@ximian.com>

	* boot-conf.in (set_immediate): New function, we didn't actually run lilo before.

2001-02-26  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in (xml_parse_dialing): set the file item if none came from the XML.
	* network.pl.in (xst_network_rh62_get_file, xst_network_get_file): check the file
	  name for any given distro. The corresponding sysconfig file for rh62.
	
2001-02-26  Tambet Ingo  <tambet@ximian.com>

	* boot-conf.in (xml_parse_image): get text (not word).

	* boot.pl.in (xst_boot_conf_replace_image): Fixed bug that sometimes didn't write
	type. Don't scan to the end of file if everything is done already. 

2001-02-25  Hans Petter Jansson  <hpj@ximian.com>

	* general.pl.in (xst_begin): Don't break if platform unknown -
	  let xst_platform_ensure_supported () handle that.

	* platform.pl.in (xst_platform_ensure_supported): Make
	  unknown-platform and unsupported-platform scenarios similar.

2001-02-24  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in: peerdns support.
	* util.pl.in (xst_util_struct_eq): oops, forgot to rename inner calls.
	
2001-02-24  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in (xml_print): cosmetic changes.
	* network.pl.in (xst_network_rh62_interface_set_by_dev,
	xst_network_rh62_interface_set) better criterion for device activation.
	* network.pl.in: chap support, lots of bug fixes to activation stuff.
	* util.pl.in (xst_util_struct_eq): renamed from cmp due to different semantic.
	
2001-02-23  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_file_get_base_path): Implement.
	  (xst_file_get_tmp_path): Implement.
	  (xst_file_get_backup_path): Implement.
	  (xst_backup_file): Use xst_file_get_backup_path.
	  (xst_open_filter_write_from_names): Use xst_file_get_tmp_path.

2001-02-23  Arturo Espinosa  <arturo@ximian.com>

	* replace.pl.in (xst_replace_sh): surround by quotes after escaping.
	
2001-02-23  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in (xml_parse-dialing): minor naming change.
	* network.pl.in (xst_network_dialing_set): "Stupid mode" corresponding tag
	  is "stupid", not "mode". This was causing the "= 0" bug.
	* replace.pl.in (xst_replace_ini): Forgot the case where you found the
	  section, but not the var. Handle this.
	
2001-02-23  Arturo Espinosa  <arturo@ximian.com>

	* file.pl.in (xst_open_read_from_names): debug reporting opened file,
	  but with the xst_prefix also.
	* network-conf.in: use xst_xml_get_pcdata instead of get_word.
	* network.pl.in (xst_network_sysconfig_ifaces_get_existing): use xst_prefix
	  to open directory.
	* network.pl.in: added "file" attrib to interface structures, to know from
	  which file an interface configuration came. This tag could be the same
	  value accross all interfaces for some distros (RH required, dunno others).
	* network.pl.in (xst_network_interfaces_down_changed): get active interfaces
	  and deactivate only those whose data have changed.
	* network.pl.in (xst_network_interfaces_set): now requires the OLD_HASH
	  structure, so that interfaces_down_changed can compare.
	* network.pl.in (xst_network_conf_set): call xst_network_conf_get to get the
	  $old_hash, and pass it to replace_from_table.
	* replace.pl.in (xst_replace_from_table): $$fn{"OLD_HASH"} = $old_hash;, so
	  if you ask for the OLD_HASH file key, you get a reference to the $old_hash.
	  See network.pl.in (xst_network_get_replace_table) for an example.
	* replace.pl.in (xst_replace_ini): cosmetic change to new section appending.
	* util.pl.in (xst_util_struct_cmp): recursively compare two references,
	  diving into any references to scalars, arrays or to see if structs are equal.
	* xml.pl.in (xst_xml_get_pcdata): get the contents of the element, with no
	  processing, except for entity unquoting.
	* xml.pl.in (xst_xml_get_word, xst_xml_get_text, xst_xml_get_size): they now
	  call get_pcdata and then process that to their need, then return.
	
	
2001-02-23  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_backup_file): Add permanent archival of first-ever
	  backup made.

2001-02-23  Hans Petter Jansson  <hpj@ximian.com>

	* file.pl.in (xst_rotate_backups): Remove.
	  (xst_backup_file): Implement.
	  (xst_create_path): Implement.
	  (xst_create_path_for_file): Implement from old xst_create_path.
	  (xst_open_write_from_names): Use xst_backup_file.
	  (xst_open_filter_write_from_names): Use xst_backup_file. Use new
	  filter source (in private tmp directory).

	* time-conf.in (write_localtime): Use xst_create_path_for_file.

2001-02-23  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_conf_replace_image): We are #XstPartitionType aware.
	(xst_boot_parse_images): We too!
	(xst_boot_conf_del_images): Taught deleting images.
	(xst_boot_conf_set_images): Use copy of data, not data itself, call del_images.
	(xst_boot_conf_replace_image): Made image matching stronger.

2001-02-22  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in (xst_network_get_pap_passwd): get the pap password from a pap-secrets file.
	  The tag name for dialing dialers passwords is now password, not passwd.
	* parse.pl.in: don't use @_ to pass arguments: it's difficult to know the required args
	  for the function. xst_parse_sh now unquotes the value.
	* replace.pl.in (xst_replace_sh): quote value and surround by quotes if required, before replacing.
	
2001-02-22  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_scan_recurse) (xst_xml_scan_make_kid_array):
	  Allow [0-9] in tag names.

2001-02-22  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_conf_set): Added some more known tags.

2001-02-22  Hans Petter Jansson  <hpj@ximian.com>

	* report.pl.in (xst_report): Re-enable report printing. It works.

	* shares-conf.in (xml_print): Move to xst_xml_quote ().

2001-02-22  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_conf_replace_image): Now we can delete image tags too.

2001-02-22  Hans Petter Jansson  <hpj@ximian.com>

	* xml.pl.in (xst_xml_quote): Put old code back in, since Chema's
	  didn't work.

2001-02-22  Chema Celorio  <chema@celorio.com>

	* boot-conf.in (xml_print_globals): fix s/quote/xst_xml_quote
	so that Crimz can stop crying like a baby

2001-02-21  Arturo Espinosa  <arturo@ximian.com>

	* network.pl.in (xst_network_interfaces_set, xst_network_rh62_interface_delete,
	  xst_network_remove_pap_entry): remove interfaces that are not present, and remove
	  pap entry if the interface used one, for security.
	* network.pl.in (xst_network_remove_pap_entry): used when a ppp interface is removed,
	  for security.
	  (xst_network_rh62_interface_delete): entry removal in rh62ish machines.
	  DNS1 and DNS2 support in tables.
	
2001-02-21  Chema Celorio  <chema@celorio.com>

	* users-conf.in (xml_print): quote the group too.

2001-02-21  Chema Celorio  <chema@celorio.com>
	
	* users-conf.in : replace the plaint_to_entities & entities
	to plain with xst_xml_quote & xst_xml_unquote
	(xml_print): quote the user data before sending it
	to the front end.

	* boot-conf.in (quote): remove use xst_xml_quote
	(unquote): remove use xst_xml_unquote

	* xml.pl (xst_xml_entities_to_plain): remove, use xst_xml_unquote
	(xst_xml_plain_to_entities): remove use xst_xml_quote instead

2001-02-21  Chema Celorio  <chema@celorio.com>

	* report.pl.in (xst_report): return, don't report status. This was
	causing a bug (which took me 3 hrs. to find) in the backends.

2001-02-21  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_set_global_kw): New fn to add or modify global keywords.
	(xst_boot_set_global): New fn to add or modify globals (repsects all spaces).
	(xst_boot_del_global): Nef fn to delete globals (keywords and vars).
	(xst_boot_replace_from_table): My own version of xst_replace_from_table.
	(xst_boot_conf_set_images): Rewrote this and
	(xst_boot_conf_replace_image): this.
	(xst_boot_conf_replace_image): Now it adds new images too.

2001-02-20  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in (xst_boot_parse_images): New (and nice) function to get images.

	* boot-conf.in (xml_print_global_kws): New function, splitted from 
	(xml_print_globals), added more known tags.

	* boot.pl.in (xst_boot_conf_get): Use those new functions.
	(xst_boot_parse_global_kw): New function to parse global lilo.conf keyword.
	(xst_boot_parse_global): New function to parse global lilo variable.

2001-02-19  Chema Celorio  <chema@celorio.com>

	* be.pl.in (xst_buffer_save): remove this function it is
	duplicated in file.pl
	(xst_buffer_load): ditto
	(xst_buffer_clean): ditto

2001-02-19  Arturo Espinosa  <arturo@ximian.com>

	* network.pl: Ensure local host entry, by checking the internal
	  structures before writing. Run hostname.

2001-02-16  Hans Petter Jansson  <hpj@ximian.com>

	* report.pl.in: Make sure the same progress int is not printed twice.

2001-02-16  Hans Petter Jansson  <hpj@ximian.com>

	* platform.pl.in: Silence stderr output, disable early abort code.

2001-02-15  Arturo Espinosa  <arturo@ximian.com>

	* xml.pl.in: substitute &amp; entity too.

2001-02-13  Hans Petter Jansson  <hpj@ximian.com>

	* gen-reportcode-list.sh: Look in *.pl.in as well.
	* general.pl.in, platform.pl.in: Report fixups.

2001-02-12  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in: (xst_network_get_interface_{replace,parse}_table) added iface name support.
	
2001-02-12  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Fixed bug which would cause [global] section to
	  not be written in some cases.

2001-02-10  Arturo Espinosa Aldama  <arturo@ximian.com>

	* network.pl.in: (xst_network_get_interface_{replace,parse}_table) added wvdial support.
	  (xst_network_ensure_local_host_entry) changed name: added "network" prefix.
	  (xst_network_dialing_set) save the wvdial configuration.
	* network-conf.in: (xml_print_hash) a more general instance of xml_print_interfaces, to
	  handle both interfaces and dialing.
	  (xml_parse_dialing) parse the wvdial configuration from XML to internal hash.
	
2001-02-09  Hans Petter Jansson  <hpj@ximian.com>

	* *-conf.in: Added platform comparisons and die if necessary.

2001-02-09  Hans Petter Jansson  <hpj@ximian.com>

	* platform.pl.in: (xst_platform_ensure_supported): Implement.

2001-02-09  Hans Petter Jansson  <hpj@ximian.com>

	* *.in: Removed -*-perl-*- lines that were confusing Emacs.

2001-02-09  Arturo Espinosa <arturo@ximian.com>

	* network-conf.in: removed a bunch of set_* functions, whose functionality
	  already is in network.pl.in.
	* network.pl.in: almost finished, lots of bug fixes. added bootproto support.
	* replace.pl.in: xst_replace_chat implemented.
	* network.pl.in, replace.pl.in: fixed conflicts with new general function namings.
	* network.pl.in: (xst_network_dialing_get) wvdialer parsing support. Minor indentation fix.
	* parse.pl.in: fix to ini parser and new parser to get ini sections.
	* replace.pl.in: similar fix to ini replacer, and minor indentation fix.
	
2001-02-08  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Added missing dependency on service.pl.

2001-02-08  Tambet Ingo  <tambet@ximian.com>

	* boot.pl.in: New file.
	* boot-conf.in: Removed stuff which is in boot.pl.in.

2001-02-07  Hans Petter Jansson  <hpj@ximian.com>

	* be.pl.in, boot-conf.in, disks-conf.in, file.pl.in, 
	  gen-reportcode-list.sh, general.pl.in, guess_system.sh, 
	  hardware-conf.in, media.pl.in, memory-conf.in, 
	  nameresolution-conf.in, network-conf.in, network.pl.in, 
	  networking-conf.in, parse.pl.in, platform.pl.in, 
	  removable-media.pl.in, replace.pl.in, report.pl.in, 
	  service.pl.in, shares-conf.in, time-conf.in, users-conf.in,
	  util.pl.in, xml.pl.in: be_ -> xst_

2001-02-07  Hans Petter Jansson  <hpj@ximian.com>

	* be.pl.in: Refactored into obsoletion.

	* file.pl.in, general.pl.in, platform.pl.in, report.pl.in,
	  service.pl.in, util.pl.in, xml.pl.in: Added.

	* boot-conf.in, disks-conf.in, memory-conf.in,
	  network-conf.in, shares-conf.in, time-conf.in, users-conf.in,
	  media.pl.in, network.pl.in, parse.pl.in, replace.pl.in:
	  Removed dependency on be.pl. Added new dependencies.

	* Makefile.am: Removed be.pl from distribution (but not
	  build). Added new targets.

	* removable-media.pl.in: Added an XML skeleton. This file will
	  go away later, though.

2001-02-07  Hans Petter Jansson  <hpj@ximian.com>

	* network.pl.in: Separated the parse/replace tables from the rest
	  of the code. They are now returned by get_table functions that
	  pick the table depending on the platform.

2001-02-07  Hans Petter Jansson  <hpj@ximian.com>

	* be.pl.in: Redid the platform naming scheme, added switch for
	  manual override.

2001-02-06  Hans Petter Jansson  <hpj@ximian.com>

	* media.pl.in: (xst_media_xml_print): Implement.

2001-02-06  Hans Petter Jansson  <hpj@ximian.com>

	* be.pl.in: (be_xml_print_state): Implement.

2001-02-06  Tambet Ingo  <tambet@ximian.com>

	* boot-conf.in: Get some more stuff out of lilo.conf

2001-02-06  Hans Petter Jansson  <hpj@ximian.com>

	* shares-conf.in: Disabled scanning so that UI testing becomes
	  less of a pain. Will have to work out a switch to enable it
	  later.

2001-02-06  Hans Petter Jansson  <hpj@ximian.com>

	* Makefile.in: Added media.pl to the list of targets.

2001-02-06  Arturo Espinosa  <arturo@ximian.com>

	* replace.pl.in: xst_replace_join_hash, the last of the replacing
	  functions for network to be finished.
	* network-conf.in: bug in xml_parse_network for nameserver and 
	  searchdomain.
	* General bug fixes on all the new code and other parts.
	* All general network param writing is ready. Interfaces is the only 
	  missing.
	

2001-02-06  Arturo Espinosa  <arturo@ximian.com>

	* be.pl.in: be_buffer_clean, be_buffer_join_lines: new functions to
	  help with in-line editting.
	* network-conf.in: support for "auto" and "description" tags when
	  parsing: forgot these.
	* network.pl.in: xst_map_dist -> be_map_dist, pass the hash with
	  the configuration to the replace_with_table function.
	* replace.pl.in: Lots of code, for writing configuration. Partialy
	  tested, but hash replacing is missing still.

2001-02-05  Tambet Ingo  <tambet@ximian.com>

	* Makefile.am (backends): Added boot-conf into build

	* boot-conf.in: New file.

2001-02-05  Arturo Espinosa  <arturo@ximian.com>

	* be.pl.in: (be_buffer_{load,save}): load a file into an array buffer
	and save it back.
	(be_map_dist): moved from network.pl.in.
	* network.pl.in: minor & typos.
	* replace.pl.in: routines for in-line replacing.
	* Makefile.am: install replace routines.
	* .cvsignore: ignore replace routines .pl file.

2001-02-05  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_split): Keep all tokens on line
	  associated with key.

	* media.pl.in: Added.

	* removable-media.pl.in: Added.

2001-02-04  Hans Petter Jansson  <hpj@ximian.com>

	* parse.pl.in (xst_parse_line_first): Stopped from losing return value.
	  Added & prefix to function call. Close file when done.
	* parse.pl.in (xst_parse_chat): Prevented $found from being global.
	  Close file when done.

2001-01-31  Tambet Ingo  <tambet@ximian.com>

	* users-conf.in (xml_print_nis): test function for nis.

2001-01-28  Arturo Espinosa  <arturo@ximian.com>

	* *-conf.in, *.pl.in: added emacs style directives.

2001-01-28  Hans Petter Jansson  <hpj@ximian.com>

	* be.pl.in: Added disaster recovery, with 9 rotated backups.
	  Removed some bogus debug output someone left behind.

2001-01-26  Arturo Espinosa  <arturo@ximian.com>

	* network-conf.in: parsing now follows the new hash structure.

2001-01-26  Chema Celorio  <chema@celorio.com>

	* be.pl.in: if $verbose, print the file name before it is
	opened

2001-01-25  Arturo Espinosa  <arturo@ximian.com>

	* new_network-conf.in, network.pl.in, parse.pl.in: completly new
	  network code and parsing routines.
	* network-conf.in: overwrote with new_network-conf.in and cvs
	  removing new_network-conf.in. Saving a backup, though.

2001-01-22  Arturo Espinosa  <arturo@ximian.com>

	* add_amp.sh: dumb program that fixes missing & when calling
	  functions in perl code.
	* *-conf.in and be.pl.in: passed through add_amp.sh.

2001-01-18  Chema Celorio  <chema@celorio.com>

	* TODO: deleted

2001-01-18  Arturo Espinosa <arturo@ximian.com>

	* be.pl.in: be_network_get_redhat now gives away more info. Same
	  should be done for debian and SuSE.
	* network-conf.in: be_ppp_get_phone_redhat is called from
	  be_network_get_redhat to obtain the phone pppd dials.
	
2001-01-17 Tambet Ingo  <tambet@ximian.com>

	* Changelog: fixed my revious wacky entry. 

2001-01-17  Arturo Espinosa <arturo@ximian.com>

	* network-conf.in: print and parse interface tags. Also bring up
	  or down network interfaces, and report their status when printing.
	
2001-01-16  Arturo Espinosa <arturo@ximian.com>

	* network-conf.in: network backend.
	* guess_system.sh: stolen from autoconf, a script to tell the
	system the backends are running on.
	* Makefile.am: install guess_system.sh where be.pl goes.
	* be.pl.in: need to replace ___scriptsdir___ here too, so I removed
	  be.pl and have this one for preprocessing.

2001-01-16  Tambet Ingo  <tambet@ximian.com>

	* memory-conf.in: Added debugging support. Got rid of hardcoded tool
	  locations, made it using be_locate_tool. Switched hardcoded 
	  /proc/meminfo to variable. Get all sizes in format %.1f to unify
	  with frontend.

2001-01-16  Chema Celorio  <chema@celorio.com>

	* time-conf.in (get_zone): when scanning for timezones
	only do a system "diff ..." if the file size matches the
	timezone we are looking for. This reduces loading time.

	* Added ChangeLog 
	
