SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

Sun Oct 28 21:18:32 2001

This is a program to edit gShield configuration files. gShield is a simple to use, but powerful firewall script.

It was written by Godot <godot@linuxmafia.org>. More information can be found at http://muse.linuxmafia.org/gshield.html

gShieldConf is (c) 2000,2001 Vince Hodges. It is hereby released under the terms and conditions of the GNU General Public License.See the file 'COPYING' for details.

I can be reached at, vhodges@shaw.ca

Please note, gShield must be installed prior to running gshieldconf. The program will load (and save) the gShield configuration file(s). It uses the contents of the file to determine the settings for the user interface. Anything defined in the user interface but not in the conf file can be changed, but the changes will not be saved.

Instructions for building gShieldConf are in the file 'INSTALL'.

Release notes for 0.40

  • Removed 'Save As' and 'Load' menu items/code. I have done this because it was an ill conceived feature and doesn't make sense anymore.
  • Made it compile and work with both libxml1 and libxml2.
  • Removed last vestiges of hard coded file paths (specifically the paths to the gShield configuration files).
  • Seperated the program from the controls.xml file. This was done to better be able to maintain the controls.xml file and to support multiple versions of gShield.
  • Added a new UI control type, the 'combo box'. This is to support the tri-state fields in gShield2.6 and up.
  • The structure of controls.xml has changed a bit. Mostly added a new node type, 'Configfiles' to specify the locations of the files to be loaded.

Features

  • Simple and easy to see the firewall configuration at a glance.
  • Preserves unknown variables.
  • Preserves comments and formatting of conf files
  • Easy to extend when the conf file is changed.

Known Limitations

  • No way to activate the changes that have been made ( ie, run gShield.rc).
  • The conf files must be installed before running gshieldconf. In other words you cannot use gshieldconf to create a new script.
  • No revert/undo operation. It is actually rather easy to support a single level of undo. I may do this at some point.
  • Doesn't actually check to see if there have been any changes before saving the config files out.
  • The Firewall Root directory must exist, it will not be created.

gshieldconf internals

At startup, gshieldconf will read the conf file and parse it into a linked list of configuration items. Each item will be one of four possible types:

String - An item that holds a string value. Boolean - An item that holds a on or off value. Comment - An item that holds a comment from the conf file.

    Blank      - An item that holds a blank (or otherwise) line from the 
                 conf file

Next the linked list is iterated. For each item, if it's a String or Boolean type, it looks up a component with the same name as the configuration variable. If found, it sets the value into the component.

If a component is not found, then it cannot be modified by gshieldconf. However, its value will be preserved and saved out when the save button is pressed.

When save is pressed, the inverse happens. The linked list is iterated. It will look up the component and obtain the value for the item and place it into the linked list.

The linked list is then iterated a second time, writing out the values of the config items.

The other files are simply loaded into text components as text files, and saved back out.


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.