rpms/ipplan/EL-5 README.ipplan, NONE, 1.1 import.log, NONE, 1.1 ipplan-mysql.sql, NONE, 1.1 ipplan-pgsql.sql, NONE, 1.1 ipplan-set-adodb-path.patch, NONE, 1.1 ipplan-set-menus-path.patch, NONE, 1.1 ipplan-set-phpmailer-path.patch, NONE, 1.1 ipplan-use-qmagic.patch, NONE, 1.1 ipplan.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

topdog topdog at fedoraproject.org
Tue Aug 25 08:29:56 UTC 2009


Author: topdog

Update of /cvs/pkgs/rpms/ipplan/EL-5
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv20033/EL-5

Modified Files:
	.cvsignore sources 
Added Files:
	README.ipplan import.log ipplan-mysql.sql ipplan-pgsql.sql 
	ipplan-set-adodb-path.patch ipplan-set-menus-path.patch 
	ipplan-set-phpmailer-path.patch ipplan-use-qmagic.patch 
	ipplan.spec 
Log Message:
* Tue Aug 25 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.92-3
- Initial import




--- NEW FILE README.ipplan ---

Configuration - Mysql
1) create the database by issuing the following at the command prompt:

   mysqladmin -p create ipplan

2) add a database user for ipplan using mysql -p
   GRANT SELECT,INSERT,UPDATE,DELETE on ipplan.*
       TO ipplan at localhost IDENTIFIED by 'password';

   Change the above password to whatever you wish

3) modify the user and password info in the /etc/ipplan/config.php,
   additional settings can be changed in the /etc/ipplan/config.php 
   at this stage too. See /usr/share/doc/ipplan-*/README for more 
   information.

   Make sure you leave transaction support enabled in /etc/ipplan/config.php

4) Import the database schema into the database

  mysql -p ipplan < /usr/share/doc/ipplan-*/sql/ipplan-mysql.sql

5) Point your web browser to the main IPplan web page (http://mywebserver.com/ipplan), 
   select the admin drop down menu and add customers, groups and users using the admin 
   user defined in the config.php file - you MUST create at least one regular user 
   one group and one customer

Configuration - Postgresql
1) Create the database, database user and tables by issuing the following at the
   command prompt as the postgres user (su - postgres):
  
  su - postgres
  createuser -P ipplan
        Enter password for new role:
        Enter it again:
        Shall the new role be a superuser? (y/n) n
        Shall the new role be allowed to create databases? (y/n) n
        Shall the new role be allowed to create more new roles? (y/n) n
  
  createdb -O ipplan ipplan

  Make sure that the ipplan user is allowed to connect to the ipplan
  database from another user by modifying the pg_hba.conf file and
  adding the following then restart the postgresql service

        host   ipplan       ipplan      127.0.0.1/32          md5
        host   ipplan       ipplan         ::1/128            md5
        local  ipplan       ipplan                            md5

  Import the database schema

  psql -U ipplan < /usr/share/doc/ipplan-*/sql/ipplan-pgsql.sql

2) Modify the user and password info in the config.php script, additional
   settings can be changed /etc/ipplan/config.php at this stage too.
   See the /usr/share/doc/ipplan-*/README for more information.

3) now point your web browser to the main IPplan web page
   (http://mywebserver.com/ipplan), select the admin drop down menu and add
   customers, groups and users using the admin user defined in the config.php
   file - you MUST create at least one regular user, one group and one customer

Configuration - Oracle
Oracle is not supported on fedora


--- NEW FILE import.log ---
ipplan-4_92-3_fc11:EL-5:ipplan-4.92-3.fc11.src.rpm:1251188942


--- NEW FILE ipplan-mysql.sql ---

CREATE TABLE area (
areaaddr                 INT UNSIGNED NOT NULL DEFAULT 0,
descrip                  VARCHAR(80) NOT NULL,
areaindex                BIGINT NOT NULL AUTO_INCREMENT,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (areaindex)
)TYPE=INNODB;


ALTER TABLE area ADD  UNIQUE INDEX area_customer  (customer, descrip);


ALTER TABLE area ADD  UNIQUE INDEX area_areaaddr  (areaaddr, customer);


CREATE TABLE auditlog (
userid                   VARCHAR(40),
action                   VARCHAR(254) NOT NULL,
dt                       TIMESTAMP NOT NULL
)TYPE=INNODB;


ALTER TABLE auditlog ADD  INDEX auditlog_dt  (dt);


CREATE TABLE base (
baseaddr                 INT UNSIGNED NOT NULL DEFAULT 0,
subnetsize               INT UNSIGNED NOT NULL DEFAULT 0,
descrip                  VARCHAR(80) NOT NULL,
baseindex                BIGINT NOT NULL AUTO_INCREMENT,
admingrp                 VARCHAR(40) NOT NULL,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
lastmod                  TIMESTAMP NOT NULL,
userid                   VARCHAR(40),
baseopt                  INT UNSIGNED DEFAULT 0,
swipmod                  DATETIME,
                 PRIMARY KEY (baseindex)
)TYPE=INNODB;


ALTER TABLE base ADD  UNIQUE INDEX base_baseaddr  (baseaddr, customer);


ALTER TABLE base ADD  INDEX base_customer  (customer);


ALTER TABLE base ADD  INDEX base_admingrp  (admingrp);


CREATE TABLE baseadd (
baseindex                BIGINT NOT NULL DEFAULT 0,
info                     LONGTEXT,
infobin                  LONGBLOB,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (baseindex)
)TYPE=INNODB;


CREATE TABLE custinfo (
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
org                      VARCHAR(100),
street                   VARCHAR(255),
city                     VARCHAR(80),
state                    VARCHAR(2),
zipcode                  VARCHAR(10),
cntry                    VARCHAR(2),
maint                    VARCHAR(80),
nichandl                 VARCHAR(80),
lname                    VARCHAR(80),
fname                    VARCHAR(80),
mname                    VARCHAR(80),
torg                     VARCHAR(100),
tstreet                  VARCHAR(255),
tcity                    VARCHAR(80),
tstate                   VARCHAR(2),
tzipcode                 VARCHAR(10),
tcntry                   VARCHAR(2),
phne                     VARCHAR(20),
mbox                     VARCHAR(100),
                 PRIMARY KEY (customer)
)TYPE=INNODB;


CREATE TABLE custadd (
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
info                     LONGTEXT,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (customer)
)TYPE=INNODB;


CREATE TABLE customer (
custdescrip              VARCHAR(80) NOT NULL,
customer                 SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,
crm                      VARCHAR(20),
admingrp                 VARCHAR(40) NOT NULL,
                 PRIMARY KEY (customer)
)TYPE=INNODB;


ALTER TABLE customer ADD  UNIQUE INDEX customer_custdescrip  (custdescrip);


ALTER TABLE customer ADD  INDEX customer_crm  (crm);


ALTER TABLE customer ADD  INDEX customer_admingrp  (admingrp);


CREATE TABLE grp (
grpdescrip               VARCHAR(80) NOT NULL,
grp                      VARCHAR(40) NOT NULL,
createcust               VARCHAR(1) NOT NULL DEFAULT 'N',
resaddr                  SMALLINT UNSIGNED DEFAULT 0,
grpopt                   INT UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (grp)
)TYPE=INNODB;


ALTER TABLE grp ADD  UNIQUE INDEX grp_grpdescrip  (grpdescrip);


CREATE TABLE ipaddr (
ipaddr                   INT UNSIGNED NOT NULL DEFAULT 0,
userinf                  VARCHAR(80),
location                 VARCHAR(80),
telno                    VARCHAR(15),
descrip                  VARCHAR(80),
hname                    VARCHAR(100),
macaddr                  VARCHAR(12),
baseindex                BIGINT NOT NULL DEFAULT 0,
lastmod                  TIMESTAMP NOT NULL,
lastpol                  DATETIME,
userid                   VARCHAR(40),
                 PRIMARY KEY (ipaddr, baseindex)
)TYPE=INNODB;


ALTER TABLE ipaddr ADD  INDEX ipaddr_baseindex  (baseindex);


CREATE TABLE ipaddradd (
ipaddr                   INT UNSIGNED NOT NULL DEFAULT 0,
baseindex                BIGINT NOT NULL DEFAULT 0,
info                     LONGTEXT,
infobin                  LONGBLOB,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (ipaddr, baseindex)
)TYPE=INNODB;


ALTER TABLE ipaddradd ADD  INDEX ipaddradd_baseindex  (baseindex);


CREATE TABLE ipaddrlnk (
ipaddr                   INT UNSIGNED NOT NULL DEFAULT 0,
baseindex                BIGINT NOT NULL DEFAULT 0,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
dstipaddr                INT UNSIGNED NOT NULL DEFAULT 0,
dstcustomer              SMALLINT UNSIGNED NOT NULL DEFAULT 0
)TYPE=INNODB;


ALTER TABLE ipaddrlnk ADD  UNIQUE INDEX ipaddrlnk_uniq  (baseindex, ipaddr, customer, dstipaddr, dstcustomer);


ALTER TABLE ipaddrlnk ADD  INDEX ipaddrlnk_dst  (dstipaddr, dstcustomer);


ALTER TABLE ipaddrlnk ADD  INDEX ipaddrlnk_src  (ipaddr, customer);


CREATE TABLE requestip (
requestindex             INTEGER NOT NULL AUTO_INCREMENT,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
requestdesc              VARCHAR(80),
userinf                  VARCHAR(80),
location                 VARCHAR(80),
telno                    VARCHAR(15),
descrip                  VARCHAR(80),
hname                    VARCHAR(100),
macaddr                  VARCHAR(12),
lastmod                  TIMESTAMP NOT NULL,
info                     LONGTEXT,
                 PRIMARY KEY (requestindex)
)TYPE=INNODB;


ALTER TABLE requestip ADD  UNIQUE INDEX requestip_desc  (customer, requestdesc);


CREATE TABLE netrange (
rangeaddr                INT UNSIGNED NOT NULL DEFAULT 0,
rangesize                INT UNSIGNED NOT NULL DEFAULT 0,
descrip                  VARCHAR(80) NOT NULL,
rangeindex               BIGINT NOT NULL AUTO_INCREMENT,
areaindex                BIGINT NOT NULL DEFAULT 0,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (rangeindex)
)TYPE=INNODB;


ALTER TABLE netrange ADD  INDEX range_rangeaddr  (rangeaddr, customer);


ALTER TABLE netrange ADD  UNIQUE INDEX range_customer  (customer, descrip);


ALTER TABLE netrange ADD  INDEX range_areaindex  (areaindex);


CREATE TABLE revdns (
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
hname                    VARCHAR(100) NOT NULL,
ipaddr                   VARCHAR(15) NOT NULL,
horder                   TINYINT UNSIGNED NOT NULL DEFAULT 0
)TYPE=INNODB;


ALTER TABLE revdns ADD  INDEX revdns_customer  (customer);


CREATE TABLE version (
version                  INTEGER NOT NULL DEFAULT 0
)TYPE=INNODB;


CREATE TABLE users (
userid                   VARCHAR(40) NOT NULL,
userdescrip              VARCHAR(80) NOT NULL,
useremail                VARCHAR(64),
password                 VARCHAR(40) NOT NULL,
                 PRIMARY KEY (userid)
)TYPE=INNODB;


CREATE TABLE usergrp (
userid                   VARCHAR(40) NOT NULL,
grp                      VARCHAR(40) NOT NULL
)TYPE=INNODB;


ALTER TABLE usergrp ADD  UNIQUE INDEX usergrp_userid  (userid, grp);


ALTER TABLE usergrp ADD  INDEX usergrp_grp  (grp);


CREATE TABLE bounds (
boundsaddr               INT UNSIGNED NOT NULL DEFAULT 0,
boundssize               INT UNSIGNED NOT NULL DEFAULT 0,
grp                      VARCHAR(40) NOT NULL
)TYPE=INNODB;


ALTER TABLE bounds ADD  INDEX bounds_grp  (grp);


ALTER TABLE bounds ADD  INDEX bounds_boundsaddr  (boundsaddr);


CREATE TABLE fwdzone (
data_id                  BIGINT NOT NULL AUTO_INCREMENT,
domain                   VARCHAR(254) NOT NULL,
createmod                DATE,
lastmod                  DATETIME,
regmod                   DATE,
expiremod                DATETIME,
engineer                 VARCHAR(254),
error_message            VARCHAR(254),
responsiblemail          VARCHAR(64),
serialdate               VARCHAR(8) NOT NULL,
serialnum                INTEGER DEFAULT 0,
ttl                      INTEGER DEFAULT 0,
refresh                  INTEGER DEFAULT 0,
retry                    INTEGER DEFAULT 0,
expire                   INTEGER DEFAULT 0,
minimum                  INTEGER DEFAULT 0,
userid                   VARCHAR(40),
lastexp                  DATETIME,
slaveonly                VARCHAR(1) NOT NULL DEFAULT 'N',
zonefilepath1            VARCHAR(254),
zonefilepath2            VARCHAR(254),
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
admingrp                 VARCHAR(40),
                 PRIMARY KEY (data_id)
)TYPE=INNODB;


ALTER TABLE fwdzone ADD  INDEX fwdzone_customer  (customer);


ALTER TABLE fwdzone ADD  INDEX fwdzone_domain  (domain);


CREATE TABLE fwdzoneadd (
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
data_id                  BIGINT NOT NULL DEFAULT 0,
info                     LONGTEXT,
infobinfn                VARCHAR(255)
)TYPE=INNODB;


ALTER TABLE fwdzoneadd ADD  UNIQUE INDEX fwdzoneadd_customer  (customer, data_id);


CREATE TABLE fwdzonerec (
recidx                   BIGINT NOT NULL AUTO_INCREMENT,
data_id                  BIGINT NOT NULL DEFAULT 0,
lastmod                  DATETIME,
host                     VARCHAR(254) NOT NULL,
recordtype               VARCHAR(5) NOT NULL,
ip_hostname              VARCHAR(254) NOT NULL,
error_message            VARCHAR(254),
sortorder                INTEGER NOT NULL DEFAULT 0,
userid                   VARCHAR(40) NOT NULL,
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (recidx)
)TYPE=INNODB;


ALTER TABLE fwdzonerec ADD  INDEX fwdzonerec_data_id  (data_id);


ALTER TABLE fwdzonerec ADD  INDEX fwdzonerec_sortorder  (sortorder);


ALTER TABLE fwdzonerec ADD  INDEX fwdzonerec_customer  (customer);


CREATE TABLE fwddns (
id                       BIGINT NOT NULL DEFAULT 0,
hname                    VARCHAR(100) NOT NULL,
horder                   TINYINT UNSIGNED NOT NULL DEFAULT 0
)TYPE=INNODB;


ALTER TABLE fwddns ADD  INDEX fwddns_id  (id);


CREATE TABLE zones (
id                       BIGINT NOT NULL AUTO_INCREMENT,
zoneip                   INT UNSIGNED NOT NULL DEFAULT 0,
zonesize                 INT UNSIGNED NOT NULL DEFAULT 0,
zone                     VARCHAR(254) NOT NULL,
error_message            VARCHAR(254),
lastmod                  DATETIME,
serialdate               VARCHAR(8) NOT NULL,
serialnum                INTEGER DEFAULT 0,
ttl                      INTEGER DEFAULT 0,
refresh                  INTEGER DEFAULT 0,
retry                    INTEGER DEFAULT 0,
expire                   INTEGER DEFAULT 0,
minimum                  INTEGER DEFAULT 0,
userid                   VARCHAR(40),
lastexp                  DATETIME,
slaveonly                VARCHAR(1) NOT NULL DEFAULT 'N',
zonefilepath1            VARCHAR(254),
zonefilepath2            VARCHAR(254),
responsiblemail          VARCHAR(64),
customer                 SMALLINT UNSIGNED NOT NULL DEFAULT 0,
                 PRIMARY KEY (id)
)TYPE=INNODB;


ALTER TABLE zones ADD  INDEX zones_customer  (customer);


ALTER TABLE zones ADD  INDEX zones_zoneip  (zoneip);


CREATE TABLE zonedns (
id                       BIGINT NOT NULL DEFAULT 0,
hname                    VARCHAR(100) NOT NULL,
horder                   TINYINT UNSIGNED NOT NULL DEFAULT 0
)TYPE=INNODB;


ALTER TABLE zonedns ADD  INDEX zonedns_id  (id);


BEGIN;


INSERT INTO version (version) VALUES (22);


COMMIT;



--- NEW FILE ipplan-pgsql.sql ---
CREATE TABLE area (
areaaddr                 INT8 DEFAULT 0 NOT NULL,
descrip                  VARCHAR(80) NOT NULL,
areaindex                SERIAL,
customer                 INT4 DEFAULT 0 NOT NULL,
                 PRIMARY KEY (areaindex)
);


CREATE UNIQUE INDEX area_customer ON area (customer, descrip);


CREATE UNIQUE INDEX area_areaaddr ON area (areaaddr, customer);


CREATE TABLE auditlog (
userid                   VARCHAR(40),
action                   VARCHAR(254) NOT NULL,
dt                       TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL
);


CREATE INDEX auditlog_dt ON auditlog (dt);


CREATE TABLE base (
baseaddr                 INT8 DEFAULT 0 NOT NULL,
subnetsize               INT8 DEFAULT 0 NOT NULL,
descrip                  VARCHAR(80) NOT NULL,
baseindex                SERIAL,
admingrp                 VARCHAR(40) NOT NULL,
customer                 INT4 DEFAULT 0 NOT NULL,
lastmod                  TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
userid                   VARCHAR(40),
baseopt                  INT8 DEFAULT 0,
swipmod                  TIMESTAMP,
                 PRIMARY KEY (baseindex)
);


CREATE UNIQUE INDEX base_baseaddr ON base (baseaddr, customer);


CREATE INDEX base_customer ON base (customer);


CREATE INDEX base_admingrp ON base (admingrp);


CREATE TABLE baseadd (
baseindex                INT8 DEFAULT 0 NOT NULL,
info                     TEXT,
infobin                  BYTEA,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (baseindex)
);


CREATE TABLE custinfo (
customer                 INT4 DEFAULT 0 NOT NULL,
org                      VARCHAR(100),
street                   VARCHAR(255),
city                     VARCHAR(80),
state                    VARCHAR(2),
zipcode                  VARCHAR(10),
cntry                    VARCHAR(2),
maint                    VARCHAR(80),
nichandl                 VARCHAR(80),
lname                    VARCHAR(80),
fname                    VARCHAR(80),
mname                    VARCHAR(80),
torg                     VARCHAR(100),
tstreet                  VARCHAR(255),
tcity                    VARCHAR(80),
tstate                   VARCHAR(2),
tzipcode                 VARCHAR(10),
tcntry                   VARCHAR(2),
phne                     VARCHAR(20),
mbox                     VARCHAR(100),
                 PRIMARY KEY (customer)
);


CREATE TABLE custadd (
customer                 INT4 DEFAULT 0 NOT NULL,
info                     TEXT,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (customer)
);


CREATE TABLE customer (
custdescrip              VARCHAR(80) NOT NULL,
customer                 SERIAL,
crm                      VARCHAR(20),
admingrp                 VARCHAR(40) NOT NULL,
                 PRIMARY KEY (customer)
);


CREATE UNIQUE INDEX customer_custdescrip ON customer (custdescrip);


CREATE INDEX customer_crm ON customer (crm);


CREATE INDEX customer_admingrp ON customer (admingrp);


CREATE TABLE grp (
grpdescrip               VARCHAR(80) NOT NULL,
grp                      VARCHAR(40) NOT NULL,
createcust               VARCHAR(1) DEFAULT 'N' NOT NULL,
resaddr                  INT4 DEFAULT 0,
grpopt                   INT8 DEFAULT 0 NOT NULL,
                 PRIMARY KEY (grp)
);


CREATE UNIQUE INDEX grp_grpdescrip ON grp (grpdescrip);


CREATE TABLE ipaddr (
ipaddr                   INT8 DEFAULT 0 NOT NULL,
userinf                  VARCHAR(80),
location                 VARCHAR(80),
telno                    VARCHAR(15),
descrip                  VARCHAR(80),
hname                    VARCHAR(100),
macaddr                  VARCHAR(12),
baseindex                INT8 DEFAULT 0 NOT NULL,
lastmod                  TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
lastpol                  TIMESTAMP,
userid                   VARCHAR(40),
                 PRIMARY KEY (ipaddr, baseindex)
);


CREATE INDEX ipaddr_baseindex ON ipaddr (baseindex);


CREATE TABLE ipaddradd (
ipaddr                   INT8 DEFAULT 0 NOT NULL,
baseindex                INT8 DEFAULT 0 NOT NULL,
info                     TEXT,
infobin                  BYTEA,
infobinfn                VARCHAR(255),
                 PRIMARY KEY (ipaddr, baseindex)
);


CREATE INDEX ipaddradd_baseindex ON ipaddradd (baseindex);


CREATE TABLE ipaddrlnk (
ipaddr                   INT8 DEFAULT 0 NOT NULL,
baseindex                INT8 DEFAULT 0 NOT NULL,
customer                 INT4 DEFAULT 0 NOT NULL,
dstipaddr                INT8 DEFAULT 0 NOT NULL,
dstcustomer              INT4 DEFAULT 0 NOT NULL
);


CREATE UNIQUE INDEX ipaddrlnk_uniq ON ipaddrlnk (baseindex, ipaddr, customer, dstipaddr, dstcustomer);


CREATE INDEX ipaddrlnk_dst ON ipaddrlnk (dstipaddr, dstcustomer);


CREATE INDEX ipaddrlnk_src ON ipaddrlnk (ipaddr, customer);


CREATE TABLE requestip (
requestindex             SERIAL,
customer                 INT4 DEFAULT 0 NOT NULL,
requestdesc              VARCHAR(80),
userinf                  VARCHAR(80),
location                 VARCHAR(80),
telno                    VARCHAR(15),
descrip                  VARCHAR(80),
hname                    VARCHAR(100),
macaddr                  VARCHAR(12),
lastmod                  TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,
info                     TEXT,
                 PRIMARY KEY (requestindex)
);


CREATE UNIQUE INDEX requestip_desc ON requestip (customer, requestdesc);


CREATE TABLE netrange (
rangeaddr                INT8 DEFAULT 0 NOT NULL,
rangesize                INT8 DEFAULT 0 NOT NULL,
descrip                  VARCHAR(80) NOT NULL,
rangeindex               SERIAL,
areaindex                INT8 DEFAULT 0 NOT NULL,
customer                 INT4 DEFAULT 0 NOT NULL,
                 PRIMARY KEY (rangeindex)
);


CREATE INDEX range_rangeaddr ON netrange (rangeaddr, customer);


CREATE UNIQUE INDEX range_customer ON netrange (customer, descrip);


CREATE INDEX range_areaindex ON netrange (areaindex);


CREATE TABLE revdns (
customer                 INT4 DEFAULT 0 NOT NULL,
hname                    VARCHAR(100) NOT NULL,
ipaddr                   VARCHAR(15) NOT NULL,
horder                   SMALLINT DEFAULT 0 NOT NULL
);


CREATE INDEX revdns_customer ON revdns (customer);


CREATE TABLE schema (
version                  INT4 DEFAULT 0 NOT NULL
);


CREATE TABLE users (
userid                   VARCHAR(40) NOT NULL,
userdescrip              VARCHAR(80) NOT NULL,
useremail                VARCHAR(64),
password                 VARCHAR(40) NOT NULL,
                 PRIMARY KEY (userid)
);


CREATE TABLE usergrp (
userid                   VARCHAR(40) NOT NULL,
grp                      VARCHAR(40) NOT NULL
);


CREATE UNIQUE INDEX usergrp_userid ON usergrp (userid, grp);


CREATE INDEX usergrp_grp ON usergrp (grp);


CREATE TABLE bounds (
boundsaddr               INT8 DEFAULT 0 NOT NULL,
boundssize               INT8 DEFAULT 0 NOT NULL,
grp                      VARCHAR(40) NOT NULL
);


CREATE INDEX bounds_grp ON bounds (grp);


CREATE INDEX bounds_boundsaddr ON bounds (boundsaddr);


CREATE TABLE fwdzone (
data_id                  SERIAL,
domain                   VARCHAR(254) NOT NULL,
createmod                DATE,
lastmod                  TIMESTAMP,
regmod                   DATE,
expiremod                TIMESTAMP,
engineer                 VARCHAR(254),
error_message            VARCHAR(254),
responsiblemail          VARCHAR(64),
serialdate               VARCHAR(8) NOT NULL,
serialnum                INT4 DEFAULT 0,
ttl                      INT4 DEFAULT 0,
refresh                  INT4 DEFAULT 0,
retry                    INT4 DEFAULT 0,
expire                   INT4 DEFAULT 0,
minimum                  INT4 DEFAULT 0,
userid                   VARCHAR(40),
lastexp                  TIMESTAMP,
slaveonly                VARCHAR(1) DEFAULT 'N' NOT NULL,
zonefilepath1            VARCHAR(254),
zonefilepath2            VARCHAR(254),
customer                 INT4 DEFAULT 0 NOT NULL,
admingrp                 VARCHAR(40),
                 PRIMARY KEY (data_id)
);


CREATE INDEX fwdzone_customer ON fwdzone (customer);


CREATE INDEX fwdzone_domain ON fwdzone (domain);


CREATE TABLE fwdzoneadd (
customer                 INT4 DEFAULT 0 NOT NULL,
data_id                  INT8 DEFAULT 0 NOT NULL,
info                     TEXT,
infobinfn                VARCHAR(255)
);


CREATE UNIQUE INDEX fwdzoneadd_customer ON fwdzoneadd (customer, data_id);


CREATE TABLE fwdzonerec (
recidx                   SERIAL,
data_id                  INT8 DEFAULT 0 NOT NULL,
lastmod                  TIMESTAMP,
host                     VARCHAR(254) NOT NULL,
recordtype               VARCHAR(5) NOT NULL,
ip_hostname              VARCHAR(254) NOT NULL,
error_message            VARCHAR(254),
sortorder                INT4 DEFAULT 0 NOT NULL,
userid                   VARCHAR(40) NOT NULL,
customer                 INT4 DEFAULT 0 NOT NULL,
                 PRIMARY KEY (recidx)
);


CREATE INDEX fwdzonerec_data_id ON fwdzonerec (data_id);


CREATE INDEX fwdzonerec_sortorder ON fwdzonerec (sortorder);


CREATE INDEX fwdzonerec_customer ON fwdzonerec (customer);


CREATE TABLE fwddns (
id                       INT8 DEFAULT 0 NOT NULL,
hname                    VARCHAR(100) NOT NULL,
horder                   SMALLINT DEFAULT 0 NOT NULL
);


CREATE INDEX fwddns_id ON fwddns (id);


CREATE TABLE zones (
id                       SERIAL,
zoneip                   INT8 DEFAULT 0 NOT NULL,
zonesize                 INT8 DEFAULT 0 NOT NULL,
zone                     VARCHAR(254) NOT NULL,
error_message            VARCHAR(254),
lastmod                  TIMESTAMP,
serialdate               VARCHAR(8) NOT NULL,
serialnum                INT4 DEFAULT 0,
ttl                      INT4 DEFAULT 0,
refresh                  INT4 DEFAULT 0,
retry                    INT4 DEFAULT 0,
expire                   INT4 DEFAULT 0,
minimum                  INT4 DEFAULT 0,
userid                   VARCHAR(40),
lastexp                  TIMESTAMP,
slaveonly                VARCHAR(1) DEFAULT 'N' NOT NULL,
zonefilepath1            VARCHAR(254),
zonefilepath2            VARCHAR(254),
responsiblemail          VARCHAR(64),
customer                 INT4 DEFAULT 0 NOT NULL,
                 PRIMARY KEY (id)
);


CREATE INDEX zones_customer ON zones (customer);


CREATE INDEX zones_zoneip ON zones (zoneip);


CREATE TABLE zonedns (
id                       INT8 DEFAULT 0 NOT NULL,
hname                    VARCHAR(100) NOT NULL,
horder                   SMALLINT DEFAULT 0 NOT NULL
);


CREATE INDEX zonedns_id ON zonedns (id);


BEGIN;


INSERT INTO schema (version) VALUES (22);


COMMIT;



ipplan-set-adodb-path.patch:
 admin/changepassword.php     |    2 +-
 admin/deletebounds.php       |    2 +-
 admin/displayauditlog.php    |    4 ++--
 admin/displayboundsform.php  |    2 +-
 admin/exportbase.php         |    2 +-
 admin/exportbaseform.php     |    2 +-
 admin/exportip.php           |    2 +-
 admin/exportipform.php       |    2 +-
 admin/importbase.php         |    2 +-
 admin/importbaseform.php     |    2 +-
 admin/importip.php           |    2 +-
 admin/importipform.php       |    2 +-
 admin/maintenance.php        |    2 +-
 admin/schemacreate.php       |    4 ++--
 admin/usermanager.php        |    2 +-
 contrib/ipplan-poller.php    |    2 +-
 user/changesettings.php      |    2 +-
 user/createarea.php          |    2 +-
 user/createrange.php         |    2 +-
 user/createsubnet.php        |    2 +-
 user/createsubnetform.php    |    2 +-
 user/deletearea.php          |    2 +-
 user/deletecustomer.php      |    2 +-
 user/deleterange.php         |    2 +-
 user/displaybase.php         |    2 +-
 user/displaybaseform.php     |    2 +-
 user/displaycustomerform.php |    2 +-
 user/displayoverlap.php      |    2 +-
 user/displayoverlapform.php  |    2 +-
 user/displayrouter.php       |    2 +-
 user/displayrouterform.php   |    2 +-
 user/displaysubnet.php       |    4 ++--
 user/displayswip.php         |    2 +-
 user/displayswipform.php     |    2 +-
 user/emailswip.php           |    2 +-
 user/exportdhcp.php          |    2 +-
 user/exportview.php          |    2 +-
 user/findfree.php            |    2 +-
 user/findfreeform.php        |    2 +-
 user/modifyarearange.php     |    2 +-
 user/modifyarearangeform.php |    2 +-
 user/modifybase.php          |    2 +-
 user/modifybaseform.php      |    2 +-
 user/modifycustomer.php      |    2 +-
 user/modifydns.php           |    2 +-
 user/modifydnsform.php       |    2 +-
 user/modifydnsrecord.php     |    2 +-
 user/modifydnsrecordform.php |    2 +-
 user/modifyipform.php        |    2 +-
 user/modifyipformmul.php     |    2 +-
 user/modifysubnet.php        |    2 +-
 user/modifyzone.php          |    2 +-
 user/modifyzoneform.php      |    2 +-
 user/ping.php                |    2 +-
 user/requestip.php           |    2 +-
 user/searchall.php           |    2 +-
 user/searchallform.php       |    2 +-
 user/traceroute.php          |    2 +-
 user/treeview.php            |    2 +-
 59 files changed, 62 insertions(+), 62 deletions(-)

--- NEW FILE ipplan-set-adodb-path.patch ---
diff -ruN ipplan.orig/admin/changepassword.php ipplan/admin/changepassword.php
--- ipplan.orig/admin/changepassword.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/changepassword.php	2009-07-27 18:08:20.964259380 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/deletebounds.php ipplan/admin/deletebounds.php
--- ipplan.orig/admin/deletebounds.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/deletebounds.php	2009-07-27 18:08:20.976259668 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/displayauditlog.php ipplan/admin/displayauditlog.php
--- ipplan.orig/admin/displayauditlog.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/displayauditlog.php	2009-07-27 18:08:21.010259547 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
@@ -135,7 +135,7 @@
 insert($w,text(my_("Total records:")." ".$cnt));
 
 /*
-include_once('../adodb/adodb-pager.inc.php');
+include_once('/usr/share/php/adodb/adodb-pager.inc.php');
 $sql = "SELECT userid, action, dt FROM auditlog ORDER BY dt DESC";
 
 function callback($buffer) {
diff -ruN ipplan.orig/admin/displayboundsform.php ipplan/admin/displayboundsform.php
--- ipplan.orig/admin/displayboundsform.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/displayboundsform.php	2009-07-27 18:08:20.978259300 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/exportbaseform.php ipplan/admin/exportbaseform.php
--- ipplan.orig/admin/exportbaseform.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/exportbaseform.php	2009-07-27 18:08:21.012260319 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/exportbase.php ipplan/admin/exportbase.php
--- ipplan.orig/admin/exportbase.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/exportbase.php	2009-07-27 18:08:20.966259550 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../auth.php");
 require_once("../class.templib.php");
diff -ruN ipplan.orig/admin/exportipform.php ipplan/admin/exportipform.php
--- ipplan.orig/admin/exportipform.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/exportipform.php	2009-07-27 18:08:21.014260770 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/exportip.php ipplan/admin/exportip.php
--- ipplan.orig/admin/exportip.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/exportip.php	2009-07-27 18:08:21.001494556 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../auth.php");
 
diff -ruN ipplan.orig/admin/importbaseform.php ipplan/admin/importbaseform.php
--- ipplan.orig/admin/importbaseform.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/importbaseform.php	2009-07-27 18:08:21.017259720 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/importbase.php ipplan/admin/importbase.php
--- ipplan.orig/admin/importbase.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/importbase.php	2009-07-27 18:08:20.973259193 +0200
@@ -56,7 +56,7 @@
 }
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../class.templib.php");
 require_once("../layout/class.layout");
diff -ruN ipplan.orig/admin/importipform.php ipplan/admin/importipform.php
--- ipplan.orig/admin/importipform.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/importipform.php	2009-07-27 18:08:21.073260965 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/importip.php ipplan/admin/importip.php
--- ipplan.orig/admin/importip.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/importip.php	2009-07-27 18:08:20.984259075 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../class.templib.php");
 require_once("../layout/class.layout");
diff -ruN ipplan.orig/admin/maintenance.php ipplan/admin/maintenance.php
--- ipplan.orig/admin/maintenance.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/maintenance.php	2009-07-27 18:08:20.992259086 +0200
@@ -20,7 +20,7 @@
 
 require_once("../config.php");
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/admin/schemacreate.php ipplan/admin/schemacreate.php
--- ipplan.orig/admin/schemacreate.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/schemacreate.php	2009-07-27 18:08:21.069260682 +0200
@@ -22,8 +22,8 @@
 define("SCHEMA", 22);
 
 require_once("../ipplanlib.php");
-//require_once('../adodb/adodb-errorhandler.inc.php');
-require_once("../adodb/adodb.inc.php");
+//require_once('/usr/share/php/adodb/adodb-errorhandler.inc.php');
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../auth.php");
 
diff -ruN ipplan.orig/admin/usermanager.php ipplan/admin/usermanager.php
--- ipplan.orig/admin/usermanager.php	2009-07-27 18:06:42.469260813 +0200
+++ ipplan/admin/usermanager.php	2009-07-27 18:08:21.042259729 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once '/usr/share/pear/HTML/Template/PHPLIB.php';
diff -ruN ipplan.orig/contrib/ipplan-poller.php ipplan/contrib/ipplan-poller.php
--- ipplan.orig/contrib/ipplan-poller.php	2009-02-22 23:44:50.000000000 +0200
+++ ipplan/contrib/ipplan-poller.php	2009-07-27 18:08:20.377259554 +0200
@@ -39,7 +39,7 @@
 // define the nmap command for scan with dns lookup
 define("NMAP_CMDH", "-sP -PE -q -R -v -oG");
 
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../config.php");
 
 $timestamp = FALSE;
diff -ruN ipplan.orig/user/changesettings.php ipplan/user/changesettings.php
--- ipplan.orig/user/changesettings.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/changesettings.php	2009-07-27 18:08:20.707259358 +0200
@@ -20,7 +20,7 @@
 
 require_once("../config.php");
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
 
diff -ruN ipplan.orig/user/createarea.php ipplan/user/createarea.php
--- ipplan.orig/user/createarea.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/createarea.php	2009-07-27 18:08:20.825259282 +0200
@@ -20,7 +20,7 @@
 // Modify capabilities added by Denes Magyar (fat at poison.hu) 22/02/05
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/createrange.php ipplan/user/createrange.php
--- ipplan.orig/user/createrange.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/createrange.php	2009-07-27 18:08:20.857259235 +0200
@@ -63,7 +63,7 @@
 }
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/createsubnetform.php ipplan/user/createsubnetform.php
--- ipplan.orig/user/createsubnetform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/createsubnetform.php	2009-07-27 18:08:20.799259298 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/createsubnet.php ipplan/user/createsubnet.php
--- ipplan.orig/user/createsubnet.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/createsubnet.php	2009-07-27 18:08:20.724259386 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/deletearea.php ipplan/user/deletearea.php
--- ipplan.orig/user/deletearea.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/deletearea.php	2009-07-27 18:08:20.710259490 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/deletecustomer.php ipplan/user/deletecustomer.php
--- ipplan.orig/user/deletecustomer.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/deletecustomer.php	2009-07-27 18:08:20.550259181 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/deleterange.php ipplan/user/deleterange.php
--- ipplan.orig/user/deleterange.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/deleterange.php	2009-07-27 18:08:20.809260311 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displaybaseform.php ipplan/user/displaybaseform.php
--- ipplan.orig/user/displaybaseform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displaybaseform.php	2009-07-27 18:08:20.791259227 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displaybase.php ipplan/user/displaybase.php
--- ipplan.orig/user/displaybase.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displaybase.php	2009-07-27 18:08:20.488259765 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displaycustomerform.php ipplan/user/displaycustomerform.php
--- ipplan.orig/user/displaycustomerform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displaycustomerform.php	2009-07-27 18:08:20.879259357 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayoverlapform.php ipplan/user/displayoverlapform.php
--- ipplan.orig/user/displayoverlapform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayoverlapform.php	2009-07-27 18:08:20.875259262 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayoverlap.php ipplan/user/displayoverlap.php
--- ipplan.orig/user/displayoverlap.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayoverlap.php	2009-07-27 18:08:20.593259271 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayrouterform.php ipplan/user/displayrouterform.php
--- ipplan.orig/user/displayrouterform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayrouterform.php	2009-07-27 18:08:20.872259229 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayrouter.php ipplan/user/displayrouter.php
--- ipplan.orig/user/displayrouter.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayrouter.php	2009-07-27 18:08:20.770259123 +0200
@@ -93,7 +93,7 @@
 }
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 
diff -ruN ipplan.orig/user/displaysubnet.php ipplan/user/displaysubnet.php
--- ipplan.orig/user/displaysubnet.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displaysubnet.php	2009-07-27 18:08:20.849259064 +0200
@@ -19,8 +19,8 @@
 //
 
 require_once("../ipplanlib.php");
-//include('../adodb/adodb-errorhandler.inc.php');
-require_once("../adodb/adodb.inc.php");
+//include('/usr/share/php/adodb/adodb-errorhandler.inc.php');
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayswipform.php ipplan/user/displayswipform.php
--- ipplan.orig/user/displayswipform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayswipform.php	2009-07-27 18:08:20.479259953 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/displayswip.php ipplan/user/displayswip.php
--- ipplan.orig/user/displayswip.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/displayswip.php	2009-07-27 18:08:20.764259337 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("swiplib.php");
diff -ruN ipplan.orig/user/emailswip.php ipplan/user/emailswip.php
--- ipplan.orig/user/emailswip.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/emailswip.php	2009-07-27 18:08:20.588259651 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("swiplib.php");
diff -ruN ipplan.orig/user/exportdhcp.php ipplan/user/exportdhcp.php
--- ipplan.orig/user/exportdhcp.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/exportdhcp.php	2009-07-27 18:08:20.717259269 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../auth.php");
 
diff -ruN ipplan.orig/user/exportview.php ipplan/user/exportview.php
--- ipplan.orig/user/exportview.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/exportview.php	2009-07-27 18:08:20.888259800 +0200
@@ -17,7 +17,7 @@
 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 //
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/findfreeform.php ipplan/user/findfreeform.php
--- ipplan.orig/user/findfreeform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/findfreeform.php	2009-07-27 18:08:20.540261810 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/findfree.php ipplan/user/findfree.php
--- ipplan.orig/user/findfree.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/findfree.php	2009-07-27 18:08:20.781259273 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyarearangeform.php ipplan/user/modifyarearangeform.php
--- ipplan.orig/user/modifyarearangeform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyarearangeform.php	2009-07-27 18:08:20.793260240 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyarearange.php ipplan/user/modifyarearange.php
--- ipplan.orig/user/modifyarearange.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyarearange.php	2009-07-27 18:08:20.886259388 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifybaseform.php ipplan/user/modifybaseform.php
--- ipplan.orig/user/modifybaseform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifybaseform.php	2009-07-27 18:08:20.860259626 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifybase.php ipplan/user/modifybase.php
--- ipplan.orig/user/modifybase.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifybase.php	2009-07-27 18:08:20.504259535 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifycustomer.php ipplan/user/modifycustomer.php
--- ipplan.orig/user/modifycustomer.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifycustomer.php	2009-07-27 18:08:20.527258935 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifydnsform.php ipplan/user/modifydnsform.php
--- ipplan.orig/user/modifydnsform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifydnsform.php	2009-07-27 18:08:20.733259100 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifydns.php ipplan/user/modifydns.php
--- ipplan.orig/user/modifydns.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifydns.php	2009-07-27 18:08:20.584259051 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../class.dnslib.php");
 require_once("../layout/class.layout");
diff -ruN ipplan.orig/user/modifydnsrecordform.php ipplan/user/modifydnsrecordform.php
--- ipplan.orig/user/modifydnsrecordform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifydnsrecordform.php	2009-07-27 18:08:20.492259765 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifydnsrecord.php ipplan/user/modifydnsrecord.php
--- ipplan.orig/user/modifydnsrecord.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifydnsrecord.php	2009-07-27 18:08:20.749259692 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyipformmul.php ipplan/user/modifyipformmul.php
--- ipplan.orig/user/modifyipformmul.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyipformmul.php	2009-07-27 18:08:20.555259277 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyipform.php ipplan/user/modifyipform.php
--- ipplan.orig/user/modifyipform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyipform.php	2009-07-27 18:08:20.571259438 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifysubnet.php ipplan/user/modifysubnet.php
--- ipplan.orig/user/modifysubnet.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifysubnet.php	2009-07-27 18:08:20.869259218 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyzoneform.php ipplan/user/modifyzoneform.php
--- ipplan.orig/user/modifyzoneform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyzoneform.php	2009-07-27 18:08:20.760259037 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/modifyzone.php ipplan/user/modifyzone.php
--- ipplan.orig/user/modifyzone.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/modifyzone.php	2009-07-27 18:08:20.821259349 +0200
@@ -21,7 +21,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../class.dnslib.php");
 require_once("../layout/class.layout");
diff -ruN ipplan.orig/user/ping.php ipplan/user/ping.php
--- ipplan.orig/user/ping.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/ping.php	2009-07-27 18:08:20.783260234 +0200
@@ -22,7 +22,7 @@
 define("NOCOMPRESS", "TRUE");
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../config.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/requestip.php ipplan/user/requestip.php
--- ipplan.orig/user/requestip.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/requestip.php	2009-07-27 18:08:20.806260271 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/searchallform.php ipplan/user/searchallform.php
--- ipplan.orig/user/searchallform.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/searchallform.php	2009-07-27 18:08:20.546259497 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/searchall.php ipplan/user/searchall.php
--- ipplan.orig/user/searchall.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/searchall.php	2009-07-27 18:08:20.536259319 +0200
@@ -19,7 +19,7 @@
 //
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/traceroute.php ipplan/user/traceroute.php
--- ipplan.orig/user/traceroute.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/traceroute.php	2009-07-27 18:08:20.482259840 +0200
@@ -22,7 +22,7 @@
 define("NOCOMPRESS", "TRUE");
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../config.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
diff -ruN ipplan.orig/user/treeview.php ipplan/user/treeview.php
--- ipplan.orig/user/treeview.php	2009-07-27 18:06:42.474261590 +0200
+++ ipplan/user/treeview.php	2009-07-27 18:08:20.787259612 +0200
@@ -20,7 +20,7 @@
 // Bcracknell 03/11/2005 - Added tree menu display of Customers/Areas/Ranges & Subnets
 
 require_once("../ipplanlib.php");
-require_once("../adodb/adodb.inc.php");
+require_once("/usr/share/php/adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");

ipplan-set-menus-path.patch:
 ipplan/admin/usermanager.php |   20 ++++++++++----------
 ipplan/ipplanlib.php         |   19 ++++++++++---------
 ipplan/user/treeview.php     |   20 ++++++++++----------
 ipplanlib.php                |    2 +-
 4 files changed, 31 insertions(+), 30 deletions(-)

--- NEW FILE ipplan-set-menus-path.patch ---
diff -ruN ipplan.orig/admin/usermanager.php ipplan/admin/usermanager.php
--- ipplan.orig/admin/usermanager.php	2009-03-18 22:44:03.000000000 +0200
+++ ipplan/admin/usermanager.php	2009-07-23 18:39:21.905261618 +0200
@@ -22,9 +22,9 @@
 require_once("../adodb/adodb.inc.php");
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
-require_once '../menus/lib/PHPLIB.php';
-require_once '../menus/lib/layersmenu-common.inc.php';
-require_once '../menus/lib/treemenu.inc.php';
+require_once '/usr/share/pear/HTML/Template/PHPLIB.php';
+require_once '/usr/share/php/php-layers-menu/lib/layersmenu-common.inc.php';
+require_once '/usr/share/php/php-layers-menu/lib/treemenu.inc.php';
 require_once("../auth.php");
 
 
@@ -38,7 +38,7 @@
 isset($_COOKIE["ipplanLanguage"]) && myLanguage($_COOKIE['ipplanLanguage']);
 
 newhtml($p);
-$myWwwPath='../menus/';
+$myWwwPath='../../menus/';
 $w=myheading($p,my_("User Manager"));
 insert($w, generic("link",array("rel"=>"stylesheet","href"=>"$myWwwPath"."layerstreemenu.css")));
 insert($w, generic("link",array("rel"=>"stylesheet","href"=>"$myWwwPath"."layerstreemenu-hidden.css")));
@@ -190,12 +190,12 @@
 insert($view, block("<i>".my_("Click on a group or user")."</i>"));
 
 $mid = new TreeMenu();
-$mid->setDirroot('../menus');
-$mid->setLibjsdir('../menus/libjs/');
-$mid->setImgdir('../menus/menuimages/');
-$mid->setImgwww('../menus/menuimages/');
-$mid->setIcondir('../menus/menuicons/');
-$mid->setIconwww('../menus/menuicons/');
+$mid->setDirroot('/usr/share/php/php-layers-menu');
+$mid->setLibjsdir('/usr/share/php/php-layers-menu/libjs/');
+$mid->setImgdir('/usr/share/php/php-layers-menu/menuimages/');
+$mid->setImgwww('../../menus/menuimages/');
+$mid->setIcondir('/usr/share/php/php-layers-menu/menuicons/');
+$mid->setIconwww('../../menus/menuicons/');
 $mid->SetMenuStructureString($MENU);
 $mid->setIconsize(16, 16);
 $mid->parseStructureForMenu('treemenu1');
diff -ruN ipplan.orig/ipplanlib.php ipplan/ipplanlib.php
--- ipplan.orig/ipplanlib.php	2009-03-18 22:43:54.000000000 +0200
+++ ipplan/ipplanlib.php	2009-07-23 18:49:26.576261171 +0200
@@ -540,8 +540,9 @@
     $BASE_URL = base_url();
     $BASE_DIR = base_dir();
 
-    $myDirPath = $BASE_DIR . '/menus/';
-    $myWwwPath = $BASE_URL . '/menus/';
+    $myDirPath = '/usr/share/php/php-layers-menu/';
+    $myMenPath = str_replace('/ipplan','',$BASE_URL);
+    $myWwwPath = $myMenPath . '/menus/';
 
     // these files should probably not be here
     require_once $myDirPath . 'lib/PHPLIB.php';
@@ -583,13 +584,13 @@
         insert($w, script("",array("language"=>"JavaScript","type"=>"text/javascript","src"=> $myWwwPath . 'libjs/layersmenu.js')));
 
         $mid= new LayersMenu(6, 7, 2, 1);
-        $mid->setDirroot ($BASE_DIR.'/menus/');
-        $mid->setLibjsdir($BASE_DIR.'/menus/libjs/');
-        $mid->setImgdir  ($BASE_DIR.'/menus/menuimages/');
-        $mid->setImgwww  ($BASE_URL.'/menus/menuimages/');
-        $mid->setIcondir ($BASE_DIR.'/menus/menuicons/');
-        $mid->setIconwww ($BASE_URL.'/menus/menuicons/');
-        $mid->setTpldir  ($BASE_DIR.'/menus/templates/');
+        $mid->setDirroot ('/usr/share/php/php-layers-menu/');
+        $mid->setLibjsdir('/usr/share/php/php-layers-menu/libjs/');
+        $mid->setImgdir  ('/usr/share/php/php-layers-menu/menuimages/');
+        $mid->setImgwww  ('../../menus/menuimages/');
+        $mid->setIcondir ('/usr/share/php/php-layers-menu/menuicons/');
+        $mid->setIconwww ('../../menus/menuicons/');
+        $mid->setTpldir  ('/usr/share/php/php-layers-menu/templates/');
         $mid->SetMenuStructureString($ADMIN_MENU);
         $mid->setIconsize(16, 16);
         $mid->parseStructureForMenu('hormenu1');
diff -ruN ipplan.orig/user/treeview.php ipplan/user/treeview.php
--- ipplan.orig/user/treeview.php	2009-03-18 22:43:59.000000000 +0200
+++ ipplan/user/treeview.php	2009-07-23 18:52:03.193261518 +0200
@@ -24,9 +24,9 @@
 require_once("../class.dbflib.php");
 require_once("../layout/class.layout");
 require_once("../auth.php");
-require_once '../menus/lib/PHPLIB.php';
-require_once '../menus/lib/layersmenu-common.inc.php';
-require_once '../menus/lib/treemenu.inc.php';
+require_once '/usr/share/pear/HTML/Template/PHPLIB.php';
+require_once '/usr/share/php/php-layers-menu/lib/layersmenu-common.inc.php';
+require_once '/usr/share/php/php-layers-menu/lib/treemenu.inc.php';
 
 $auth = new SQLAuthenticator(REALM, REALMERROR);
 
@@ -39,7 +39,7 @@
 $title=my_("Display subnet information");
 newhtml($p);
 
-$myWwwPath='../menus/';
+$myWwwPath='../../menus/';
 $w=myheading($p, $title);
 
 insert($w, generic("link",array("rel"=>"stylesheet","href"=>"$myWwwPath"."layerstreemenu.css")));
@@ -133,12 +133,12 @@
   	}
 
 	$mid = new TreeMenu();
-	$mid->setDirroot('../menus');
-	$mid->setLibjsdir('../menus/libjs/');
-	$mid->setImgdir('../menus/menuimages/');
-	$mid->setImgwww('../menus/menuimages/');
-	$mid->setIcondir('../menus/menuicons/');
-	$mid->setIconwww('../menus/menuicons/');
+	$mid->setDirroot('/usr/share/php/php-layers-menu');
+	$mid->setLibjsdir('/usr/share/php/php-layers-menu/libjs/');
+	$mid->setImgdir('/usr/share/php/php-layers-menu/menuimages/');
+	$mid->setImgwww('../../menus/menuimages/');
+	$mid->setIcondir('/usr/share/php/php-layers-menu/menuicons/');
+	$mid->setIconwww('../../menus/menuicons/');
 	if(!$menustring) myError($w,$p, my_("No customers"));
 	$mid->setMenuStructureString($menustring);
 	$mid->setIconsize(16, 16);
diff -ruN ipplan.orig/ipplanlib.php ipplan/ipplanlib.php
--- ipplan.orig/ipplanlib.php	2009-07-27 18:18:17.073261816 +0200
+++ ipplan/ipplanlib.php	2009-07-27 18:19:44.414278370 +0200
@@ -545,7 +545,7 @@
     $myWwwPath = $myMenPath . '/menus/';
 
     // these files should probably not be here
-    require_once $myDirPath . 'lib/PHPLIB.php';
+    require_once '/usr/share/pear/HTML/Template/PHPLIB.php';
     require_once $myDirPath . 'lib/layersmenu-common.inc.php';
     require_once $myDirPath . 'lib/layersmenu.inc.php';
     require_once $BASE_DIR  . '/menudefs.php';

ipplan-set-phpmailer-path.patch:
 displaysubnet.php      |    8 ++++----
 displaysubnet.php.orig |    8 ++++----
 requestip.php          |    4 ++--
 swiplib.php            |    4 ++--
 4 files changed, 12 insertions(+), 12 deletions(-)

--- NEW FILE ipplan-set-phpmailer-path.patch ---
diff -ruN ipplan.orig/user/displaysubnet.php ipplan/user/displaysubnet.php
--- ipplan.orig/user/displaysubnet.php	2009-08-23 11:17:07.326552632 +0200
+++ ipplan/user/displaysubnet.php	2009-08-23 11:28:14.122554254 +0200
@@ -261,10 +261,10 @@
                         }
 
                         if ($sendwarningmail) {
-                            require_once("../class.phpmailer.php");
+                            require_once("/usr/share/php/PHPMailer/class.phpmailer.php");
                             $mail = new PHPMailer();
                             $mail->IsSMTP(); // telling the class to use SMTP
-                            $mail->SetLanguage("en", "../");
+                            $mail->SetLanguage("en");
                             $mail->Host = EMAILSERVER; // SMTP server
                             $mail->From = HELPDESKEMAIL;
                             $mail->IsHTML(false);
@@ -347,10 +347,10 @@
                             else {
 
                                 //Send email notification that IP Request was entered 
-                                require_once("../class.phpmailer.php");
+                                require_once("/usr/share/php/PHPMailer/class.phpmailer.php");
                                 $mail = new PHPMailer();
                                 $mail->IsSMTP(); // telling the class to use SMTP
-                                $mail->SetLanguage("en", "../");
+                                $mail->SetLanguage("en");
                                 $mail->Host = EMAILSERVER; // SMTP server
                                 $mail->From = HELPDESKEMAIL;
                                 $mail->IsHTML(false);
diff -ruN ipplan.orig/user/displaysubnet.php.orig ipplan/user/displaysubnet.php.orig
--- ipplan.orig/user/displaysubnet.php.orig	2009-08-23 11:16:42.634555924 +0200
+++ ipplan/user/displaysubnet.php.orig	2009-08-23 11:26:26.055552579 +0200
@@ -261,10 +261,10 @@
                         }
 
                         if ($sendwarningmail) {
-                            require_once("../class.phpmailer.php");
+                            require_once("/usr/share/php/PHPMailer/class.phpmailer.php");
                             $mail = new PHPMailer();
                             $mail->IsSMTP(); // telling the class to use SMTP
-                            $mail->SetLanguage("en", "../");
+                            $mail->SetLanguage("en");
                             $mail->Host = EMAILSERVER; // SMTP server
                             $mail->From = HELPDESKEMAIL;
                             $mail->IsHTML(false);
@@ -347,10 +347,10 @@
                             else {
 
                                 //Send email notification that IP Request was entered 
-                                require_once("../class.phpmailer.php");
+                                require_once("/usr/share/php/PHPMailer/class.phpmailer.php");
                                 $mail = new PHPMailer();
                                 $mail->IsSMTP(); // telling the class to use SMTP
-                                $mail->SetLanguage("en", "../");
+                                $mail->SetLanguage("en");
                                 $mail->Host = EMAILSERVER; // SMTP server
                                 $mail->From = HELPDESKEMAIL;
                                 $mail->IsHTML(false);
diff -ruN ipplan.orig/user/requestip.php ipplan/user/requestip.php
--- ipplan.orig/user/requestip.php	2009-08-23 11:17:07.345554665 +0200
+++ ipplan/user/requestip.php	2009-08-23 11:27:11.342553873 +0200
@@ -140,10 +140,10 @@
             $custdescrip=$ds->GetCustomerDescrip($cust);
 
             //Send email notification that IP Request was entered 
-            require("../class.phpmailer.php");
+            require("/usr/share/php/PHPMailer/class.phpmailer.php");
             $mail = new PHPMailer();
             $mail->IsSMTP(); // telling the class to use SMTP
-            $mail->SetLanguage("en", "../");
+            $mail->SetLanguage("en");
             $mail->Host = EMAILSERVER; // SMTP server
             $mail->From = HELPDESKEMAIL;
             $mail->IsHTML(false);
diff -ruN ipplan.orig/user/swiplib.php ipplan/user/swiplib.php
--- ipplan.orig/user/swiplib.php	2009-07-17 00:15:20.000000000 +0200
+++ ipplan/user/swiplib.php	2009-08-23 11:23:16.109553193 +0200
@@ -154,10 +154,10 @@
 // email the swip entry
 function emailSWIP($swip) {
 
-    require_once("../class.phpmailer.php");
+    require_once("/usr/share/php/PHPMailer/class.phpmailer.php");
     $mail = new PHPMailer();
     $mail->IsSMTP(); // telling the class to use SMTP
-    $mail->SetLanguage("en", "../");
+    $mail->SetLanguage("en");
     $mail->Host = EMAILSERVER; // SMTP server
     $mail->From = REGADMINEMAIL;
     $mail->FromName = "IP Plan";

ipplan-use-qmagic.patch:
 admin/changepassword.php    |    4 -
 admin/deletebounds.php      |    2 
 admin/displayboundsform.php |    2 
 admin/importbase.php        |   14 ++---
 admin/usermanager.php       |   86 +++++++++++++++++------------------
 auth.php                    |    6 +-
 class.dbflib.php            |   92 +++++++++++++++++++-------------------
 class.dnslib.php            |  106 ++++++++++++++++++++++----------------------
 contrib/ipplan-poller.php   |   18 +++----
 user/createarea.php         |    4 -
 user/createrange.php        |    4 -
 user/createsubnet.php       |    2 
 user/displaysubnet.php      |   52 ++++++++++-----------
 user/exportdhcp.php         |    2 
 user/modifybase.php         |    4 -
 user/modifycustomer.php     |   62 ++++++++++++-------------
 user/modifydns.php          |   10 ++--
 user/modifydnsrecord.php    |   52 ++++++++++-----------
 user/modifyipform.php       |    6 +-
 user/modifysubnet.php       |   28 +++++------
 user/modifyzone.php         |    2 
 user/requestip.php          |   16 +++---
 user/searchall.php          |   82 +++++++++++++++++-----------------
 23 files changed, 328 insertions(+), 328 deletions(-)

--- NEW FILE ipplan-use-qmagic.patch ---
diff -ruN ipplan.orig/admin/changepassword.php ipplan/admin/changepassword.php
--- ipplan.orig/admin/changepassword.php	2009-07-24 16:35:37.067261296 +0200
+++ ipplan/admin/changepassword.php	2009-07-24 16:52:07.366262054 +0200
@@ -67,8 +67,8 @@
 
       $ds->DbfTransactionStart();
       $result=&$ds->ds->Execute("UPDATE users
-                              SET password=".$ds->ds->qstr($password)."
-                              WHERE userid=".$ds->ds->qstr($userid));
+                              SET password=".$ds->ds->QMagic($password)."
+                              WHERE userid=".$ds->ds->QMagic($userid));
       $ds->AuditLog(sprintf(my_("User %s changed password"), $userid));
 
       if ($result) {
diff -ruN ipplan.orig/admin/deletebounds.php ipplan/admin/deletebounds.php
--- ipplan.orig/admin/deletebounds.php	2009-07-24 16:35:37.068261756 +0200
+++ ipplan/admin/deletebounds.php	2009-07-24 16:51:07.699261009 +0200
@@ -54,7 +54,7 @@
 
 $ds->DbfTransactionStart();
 $result=&$ds->ds->Execute("DELETE FROM bounds
-                        WHERE grp=".$ds->ds->qstr($grp)." AND boundsaddr=$boundsaddr");
+                        WHERE grp=".$ds->ds->QMagic($grp)." AND boundsaddr=$boundsaddr");
   
 if ($result) {
    $ds->DbfTransactionEnd();
diff -ruN ipplan.orig/admin/displayboundsform.php ipplan/admin/displayboundsform.php
--- ipplan.orig/admin/displayboundsform.php	2009-07-24 16:35:37.072265328 +0200
+++ ipplan/admin/displayboundsform.php	2009-07-24 16:51:25.950266841 +0200
@@ -51,7 +51,7 @@
 
 $where="";
 if ($grp) {
-   $where="WHERE grp=".$ds->ds->qstr($grp);
+   $where="WHERE grp=".$ds->ds->QMagic($grp);
 }
 
 $result=&$ds->ds->Execute("SELECT boundsaddr, boundssize, grp
diff -ruN ipplan.orig/admin/importbase.php ipplan/admin/importbase.php
--- ipplan.orig/admin/importbase.php	2009-07-24 16:35:37.085272914 +0200
+++ ipplan/admin/importbase.php	2009-07-24 16:51:47.829261312 +0200
@@ -206,10 +206,10 @@
            insert($w,block("<b>".sprintf(my_("Row is duplicate - updating with [ %s, %s ]"), $ipaddr, $descrip)."</b>"));
 
            $result=&$ds->ds->Execute("UPDATE base
-                   SET descrip=".$ds->ds->qstr($descrip).",
+                   SET descrip=".$ds->ds->QMagic($descrip).",
                    lastmod=".$ds->ds->DBTimeStamp(time()).",
-                   userid=".$ds->ds->qstr(getAuthUsername()).",
-                   admingrp=".$ds->ds->qstr($admingrp)."
+                   userid=".$ds->ds->QMagic(getAuthUsername()).",
+                   admingrp=".$ds->ds->QMagic($admingrp)."
                    WHERE customer=$cust AND
                    baseaddr=$base");
 
@@ -225,12 +225,12 @@
                $result = &$ds->ds->Execute("INSERT INTO baseadd
                        (info, baseindex)
                        VALUES
-                       (".$ds->ds->qstr($info).",
+                       (".$ds->ds->QMagic($info).",
                         $baseindex)");
                // Second, try to update.
                if ( $result == FALSE ) {
                    $result=&$ds->ds->Execute("UPDATE baseadd
-                           SET info=".$ds->ds->qstr($info)."                                 
+                           SET info=".$ds->ds->QMagic($info)."                                 
                            WHERE baseindex=$baseindex");
 
                    if ( $result == FALSE ) {
@@ -267,12 +267,12 @@
                    $result = &$ds->ds->Execute("INSERT INTO baseadd
                            (info, baseindex)
                            VALUES
-                           (".$ds->ds->qstr($info).",
+                           (".$ds->ds->QMagic($info).",
                             $baseindex)");
                    // Second, try to update.
                    if ( $result == FALSE ) {
                        $result=&$ds->ds->Execute("UPDATE baseadd
-                               SET info=".$ds->ds->qstr($info)."                                 
+                               SET info=".$ds->ds->QMagic($info)."                                 
                                WHERE baseindex=$baseindex");
 
                        if ( $result == FALSE ) {
diff -ruN ipplan.orig/admin/usermanager.php ipplan/admin/usermanager.php
--- ipplan.orig/admin/usermanager.php	2009-07-24 16:35:37.096261011 +0200
+++ ipplan/admin/usermanager.php	2009-07-24 16:50:49.924261394 +0200
@@ -96,8 +96,8 @@
 if ($usersearch != "") {
     $result=&$ds->ds->Execute("SELECT userid, userdescrip
             FROM users
-            WHERE userid LIKE ".$ds->ds->qstr("%".$usersearch."%")
-            ." OR userdescrip LIKE ".$ds->ds->qstr("%".$usersearch."%"));
+            WHERE userid LIKE ".$ds->ds->QMagic("%".$usersearch."%")
+            ." OR userdescrip LIKE ".$ds->ds->QMagic("%".$usersearch."%"));
 
     $MENU=".|".my_("Search Result")."\n";
     $count=0;
@@ -293,7 +293,7 @@
     list($ipaddr, $userid, $grp, $grpdescrip, $createcust, $grpview) = myRegister("S:ipaddr S:userid S:grp S:grpdescrip S:createcust S:grpview");
     $grp=trim($grp);
     $grpdescrip=trim($grpdescrip);
-    $result=&$ds->ds->Execute("SELECT * FROM users WHERE userid=".$ds->ds->qstr($userid));
+    $result=&$ds->ds->Execute("SELECT * FROM users WHERE userid=".$ds->ds->QMagic($userid));
     if ($result) {
         $row=$result->FetchRow();
     }
@@ -362,7 +362,7 @@
         // in a table and allow the user to delete them.
 
         insert($con, generic("br"));
-        $result=&$ds->ds->Execute("SELECT * FROM usergrp WHERE userid=".$ds->ds->qstr($userid));
+        $result=&$ds->ds->Execute("SELECT * FROM usergrp WHERE userid=".$ds->ds->QMagic($userid));
         $lst=array();
 
         while($row = $result->FetchRow()) {
@@ -399,7 +399,7 @@
 
     list($ipaddr, $size, $grp) = myRegister("S:ipaddr S:size S:grp");
 
-    $result=&$ds->ds->Execute("SELECT * FROM grp WHERE grp=".$ds->ds->qstr($grp));
+    $result=&$ds->ds->Execute("SELECT * FROM grp WHERE grp=".$ds->ds->QMagic($grp));
     $row=$result->FetchRow();
     $grpdescrip=$row["grpdescrip"];
     $createcust=$row["createcust"];
@@ -474,7 +474,7 @@
         insert($f2,submit(array("value"=>my_("Add User"))));
         // Edit users assigned to the group.
 
-        $result=&$ds->ds->Execute("SELECT * FROM usergrp WHERE grp=".$ds->ds->qstr($grp));
+        $result=&$ds->ds->Execute("SELECT * FROM usergrp WHERE grp=".$ds->ds->QMagic($grp));
 
         $lst=array();
         while($row = $result->FetchRow()) {
@@ -568,7 +568,7 @@
 
     $result=&$ds->ds->Execute("SELECT boundsaddr, boundssize, grp
             FROM bounds
-            WHERE grp=".$ds->ds->qstr($grp)."
+            WHERE grp=".$ds->ds->QMagic($grp)."
             ORDER BY boundsaddr");
 
     // logic here is:
@@ -706,25 +706,25 @@
         $ds->DbfTransactionStart();
         // emulates mysql REPLACE
         $result=&$ds->ds->Execute("DELETE FROM users
-                WHERE userid=".$ds->ds->qstr($userid));
+                WHERE userid=".$ds->ds->QMagic($userid));
         $result=&$ds->ds->Execute("INSERT INTO users
                 (userid, userdescrip, useremail, password)
                 VALUES
-                (".$ds->ds->qstr($userid).",
-                 ".$ds->ds->qstr($userdescrip).",
-                 ".$ds->ds->qstr($useremail).",
-                 ".$ds->ds->qstr($password).")");
+                (".$ds->ds->QMagic($userid).",
+                 ".$ds->ds->QMagic($userdescrip).",
+                 ".$ds->ds->QMagic($useremail).",
+                 ".$ds->ds->QMagic($password).")");
 
         // add group if user selected a group other than "No group"
         if (!empty($grp)) {
             $result=&$ds->ds->Execute("DELETE FROM usergrp
-                    WHERE userid=".$ds->ds->qstr($userid)." AND
-                    grp=".$ds->ds->qstr($grp));
+                    WHERE userid=".$ds->ds->QMagic($userid)." AND
+                    grp=".$ds->ds->QMagic($grp));
             $result=&$ds->ds->Execute("INSERT INTO usergrp
                     (userid, grp)
                     VALUES
-                    (".$ds->ds->qstr($userid).",
-                     ".$ds->ds->qstr($grp).")");
+                    (".$ds->ds->QMagic($userid).",
+                     ".$ds->ds->QMagic($grp).")");
         }
         if ($result) {
             $ds->DbfTransactionEnd();
@@ -779,9 +779,9 @@
         $result=&$ds->ds->Execute("INSERT INTO grp
                 (grp, createcust, grpdescrip, grpopt, resaddr)
                 VALUES
-                (".$ds->ds->qstr($grp).",
-                 ".$ds->ds->qstr($createcust).",
-                 ".$ds->ds->qstr($grpdescrip).",
+                (".$ds->ds->QMagic($grp).",
+                 ".$ds->ds->QMagic($createcust).",
+                 ".$ds->ds->QMagic($grpdescrip).",
                  ".$grpbit.", $resaddr)");
 
         if ($result) {
@@ -803,8 +803,8 @@
 
     $ds->DbfTransactionStart();
     $result=&$ds->ds->Execute("DELETE FROM usergrp
-            WHERE userid=".$ds->ds->qstr($userid)." AND
-            grp=".$ds->ds->qstr($grp));
+            WHERE userid=".$ds->ds->QMagic($userid)." AND
+            grp=".$ds->ds->QMagic($grp));
     if ($result) {
         $ds->DbfTransactionEnd();
         insert($w,text(my_("User deleted from group")));
@@ -835,9 +835,9 @@
     if ($userid) {
         $ds->DbfTransactionStart();
         $result=&$ds->ds->Execute("DELETE FROM users
-                WHERE userid=".$ds->ds->qstr($userid)) and
+                WHERE userid=".$ds->ds->QMagic($userid)) and
             $result=&$ds->ds->Execute("DELETE FROM usergrp
-                    WHERE userid=".$ds->ds->qstr($userid));
+                    WHERE userid=".$ds->ds->QMagic($userid));
 
         if ($result) {
             $ds->DbfTransactionEnd();
@@ -853,8 +853,8 @@
         $userid=$usergrp;
         $ds->DbfTransactionStart();
         $result=&$ds->ds->Execute("DELETE FROM usergrp
-                WHERE userid=".$ds->ds->qstr($userid)." AND
-                grp=".$ds->ds->qstr($grp));
+                WHERE userid=".$ds->ds->QMagic($userid)." AND
+                grp=".$ds->ds->QMagic($grp));
 
         if ($result) {
             $ds->DbfTransactionEnd();
@@ -874,7 +874,7 @@
         // check if grp has customers
         $result=&$ds->ds->Execute("SELECT custdescrip
                 FROM customer
-                WHERE admingrp=".$ds->ds->qstr($grp));
+                WHERE admingrp=".$ds->ds->QMagic($grp));
         if ($row=$result->FetchRow()) {
             $formerror .=my_("Cannot delete group because the following customers are assigned to the group:");
             do {
@@ -886,7 +886,7 @@
         // check if grp has subnets
         $result=&$ds->ds->Execute("SELECT baseaddr, descrip
                 FROM base
-                WHERE admingrp=".$ds->ds->qstr($grp)."
+                WHERE admingrp=".$ds->ds->QMagic($grp)."
                 ORDER BY baseaddr");
         if ($row=$result->FetchRow()) {
             $formerror .= my_("Cannot delete group because the following subnets are assigned to the group:");
@@ -898,11 +898,11 @@
 
         $ds->DbfTransactionStart();
         $result=&$ds->ds->Execute("DELETE FROM grp
-                WHERE grp=".$ds->ds->qstr($grp)) and
+                WHERE grp=".$ds->ds->QMagic($grp)) and
             $result=&$ds->ds->Execute("DELETE FROM usergrp
-                    WHERE grp=".$ds->ds->qstr($grp)) and
+                    WHERE grp=".$ds->ds->QMagic($grp)) and
             $result=&$ds->ds->Execute("DELETE FROM bounds
-                    WHERE grp=".$ds->ds->qstr($grp));
+                    WHERE grp=".$ds->ds->QMagic($grp));
 
         if ($result) {
             $ds->DbfTransactionEnd();
@@ -934,8 +934,8 @@
 
         $ds->DbfTransactionStart();
         $result=&$ds->ds->Execute("UPDATE users
-                SET password=".$ds->ds->qstr($password)."
-                WHERE userid=".$ds->ds->qstr($userid));
+                SET password=".$ds->ds->QMagic($password)."
+                WHERE userid=".$ds->ds->QMagic($userid));
         $ds->AuditLog(sprintf(my_("User %s changed password"), $userid));
 
         if ($result) {
@@ -961,13 +961,13 @@
     $ds->DbfTransactionStart();
     // emulate mysql REPLACE
     $result=&$ds->ds->Execute("DELETE FROM usergrp
-            WHERE userid=".$ds->ds->qstr($userid)." AND
-            grp=".$ds->ds->qstr($grp));
+            WHERE userid=".$ds->ds->QMagic($userid)." AND
+            grp=".$ds->ds->QMagic($grp));
     $result=&$ds->ds->Execute("INSERT INTO usergrp
             (userid, grp)
             VALUES
-            (".$ds->ds->qstr($userid).",
-             ".$ds->ds->qstr($grp).")");
+            (".$ds->ds->QMagic($userid).",
+             ".$ds->ds->QMagic($grp).")");
 
     if ($result) {
         $ds->DbfTransactionEnd();
@@ -1007,11 +1007,11 @@
         }
 
         $result=&$ds->ds->Execute("UPDATE grp
-                SET grpdescrip=".$ds->ds->qstr($grpdescrip).",
-                createcust=".$ds->ds->qstr($createcust).",
+                SET grpdescrip=".$ds->ds->QMagic($grpdescrip).",
+                createcust=".$ds->ds->QMagic($createcust).",
                 grpopt=".$grpbit.",
                 resaddr=".$resaddr."
-                WHERE grp=".$ds->ds->qstr($grp));
+                WHERE grp=".$ds->ds->QMagic($grp));
 
         if ($result) {
             $ds->DbfTransactionEnd();
@@ -1037,7 +1037,7 @@
 
         // creating readonly group?
         if ($base == 0 and $size == 0) {
-            if ($ds->ds->GetOne("SELECT count(*) AS cnt FROM bounds WHERE grp=".$ds->ds->qstr($grp))) {
+            if ($ds->ds->GetOne("SELECT count(*) AS cnt FROM bounds WHERE grp=".$ds->ds->QMagic($grp))) {
                 $formerror .= my_("Boundary cannot be created - overlaps with existing boundary")."\n";
             }
         }
@@ -1065,7 +1065,7 @@
             $result=&$ds->ds->Execute("INSERT INTO bounds
                     (boundsaddr, boundssize, grp)
                     VALUES
-                    ($base, $size, ".$ds->ds->qstr($grp).")");
+                    ($base, $size, ".$ds->ds->QMagic($grp).")");
 
             if ($result) {
                 $ds->DbfTransactionEnd();
@@ -1090,7 +1090,7 @@
                 ($boundsaddr < boundsaddr AND
                  $boundsaddr+$boundssize >
                  boundsaddr + boundssize - 1)) AND
-            grp=".$ds->ds->qstr($grp));
+            grp=".$ds->ds->QMagic($grp));
     if ($result->FetchRow()) {
         return 1;
     }
@@ -1101,7 +1101,7 @@
     list($grp, $boundsaddr) = myRegister("S:grp S:boundsaddr");
 
     $result=&$ds->ds->Execute("DELETE FROM bounds
-            WHERE grp=".$ds->ds->qstr($grp)." AND boundsaddr=$boundsaddr");
+            WHERE grp=".$ds->ds->QMagic($grp)." AND boundsaddr=$boundsaddr");
 
     if ($result) {
         $ds->DbfTransactionEnd();
diff -ruN ipplan.orig/auth.php ipplan/auth.php
--- ipplan.orig/auth.php	2009-03-18 22:43:54.000000000 +0200
+++ ipplan/auth.php	2009-07-24 16:49:49.184261940 +0200
@@ -192,14 +192,14 @@
           $passwd=crypt($passwd, 'xq');
           $result=$ds->Execute("SELECT usergrp.grp AS grp
                                 FROM users, usergrp
-                                WHERE users.userid=".$ds->qstr($user)." AND
-                                   users.password=".$ds->qstr($passwd)." AND
+                                WHERE users.userid=".$ds->QMagic($user)." AND
+                                   users.password=".$ds->QMagic($passwd)." AND
                                    users.userid=usergrp.userid");
        }
        else {
           $result=$ds->Execute("SELECT usergrp.grp AS grp
                                 FROM users, usergrp
-                                WHERE users.userid=".$ds->qstr($user)." AND
+                                WHERE users.userid=".$ds->QMagic($user)." AND
                                    users.userid=usergrp.userid");
        }
        
diff -ruN ipplan.orig/class.dbflib.php ipplan/class.dbflib.php
--- ipplan.orig/class.dbflib.php	2009-03-18 22:43:54.000000000 +0200
+++ ipplan/class.dbflib.php	2009-07-24 16:49:36.394261175 +0200
@@ -143,14 +143,14 @@
                 WHERE baseindex=$baseindex AND
                 ipaddr=$ipaddr")) {   // should have FOR UPDATE here!
         $result = &$this->ds->Execute("UPDATE ipaddr
-                SET userinf=".$this->ds->qstr($user).",
-                location=".$this->ds->qstr($location).",
-                telno=".$this->ds->qstr($telno).",
-                macaddr=".$this->ds->qstr($macaddr).",
-                descrip=".$this->ds->qstr($descrip).",
-                hname=".$this->ds->qstr($hname).",
+                SET userinf=".$this->ds->QMagic($user).",
+                location=".$this->ds->QMagic($location).",
+                telno=".$this->ds->QMagic($telno).",
+                macaddr=".$this->ds->QMagic($macaddr).",
+                descrip=".$this->ds->QMagic($descrip).",
+                hname=".$this->ds->QMagic($hname).",
                 lastmod=".$this->ds->DBTimeStamp(time()).",
-                userid=".$this->ds->qstr($userid)."
+                userid=".$this->ds->QMagic($userid)."
                 WHERE baseindex=$baseindex AND
                 ipaddr=$ipaddr");
         }
@@ -159,16 +159,16 @@
                     (userinf, location, telno, macaddr, descrip, hname,
                      baseindex, ipaddr, lastmod, userid)
                     VALUES
-                    (".$this->ds->qstr($user).",
-                     ".$this->ds->qstr($location).",
-                     ".$this->ds->qstr($telno).",
-                     ".$this->ds->qstr($macaddr).",
-                     ".$this->ds->qstr($descrip).",
-                     ".$this->ds->qstr($hname).",
+                    (".$this->ds->QMagic($user).",
+                     ".$this->ds->QMagic($location).",
+                     ".$this->ds->QMagic($telno).",
+                     ".$this->ds->QMagic($macaddr).",
+                     ".$this->ds->QMagic($descrip).",
+                     ".$this->ds->QMagic($hname).",
                      $baseindex, 
                      $ipaddr,
                      ".$this->ds->DBTimeStamp(time()).",
-                     ".$this->ds->qstr($userid).")");
+                     ".$this->ds->QMagic($userid).")");
         }
 
         // always try to update record - record could not exist, which
@@ -183,7 +183,7 @@
                 WHERE baseindex=$baseindex AND
                 ipaddr=$ipaddr")) {   // should have FOR UPDATE here!
             $result = &$this->ds->Execute("UPDATE ipaddradd
-                    SET info=".$this->ds->qstr($info)."
+                    SET info=".$this->ds->QMagic($info)."
                     WHERE baseindex=$baseindex AND
                     ipaddr=$ipaddr");
         // this generates a "duplicate key" error if no update
@@ -195,7 +195,7 @@
                 $result = &$this->ds->Execute("INSERT INTO ipaddradd
                         (info, baseindex, ipaddr)
                         VALUES
-                        (".$this->ds->qstr($info).",
+                        (".$this->ds->QMagic($info).",
                          $baseindex,
                          $ipaddr)");
             }
@@ -208,9 +208,9 @@
         $userid = getAuthUsername();
 
         $result = &$this->ds->Execute("UPDATE ipaddr
-                           SET $field=".$this->ds->qstr($value).",
+                           SET $field=".$this->ds->QMagic($value).",
                               lastmod=".$this->ds->DBTimeStamp(time()).",
-                              userid=".$this->ds->qstr($userid)."
+                              userid=".$this->ds->QMagic($userid)."
                            WHERE baseindex=$baseindex AND ipaddr=$ipaddr");
 
         // record does not exist, error
@@ -331,11 +331,11 @@
                                baseopt, customer, userid, lastmod)
                            VALUES
                               ($baseaddr, $subnetsize,
-                              ".$this->ds->qstr($descrip).",
-                              ".$this->ds->qstr($grp).",
+                              ".$this->ds->QMagic($descrip).",
+                              ".$this->ds->QMagic($grp).",
                                $dhcp,
                                $cust,
-                              ".$this->ds->qstr($userid).",
+                              ".$this->ds->QMagic($userid).",
                               ".$this->ds->DBTimeStamp(time()).")");
 
         if (DBF_TYPE == "mysql" or DBF_TYPE == "maxsql") {
@@ -360,7 +360,7 @@
                             WHERE base.baseindex=$baseindex AND
                                base.customer=customer.customer AND
                                customer.admingrp=usergrp.grp AND
-                               usergrp.userid=".$this->ds->qstr($userid));
+                               usergrp.userid=".$this->ds->QMagic($userid));
 
         if ($row = $result->FetchRow()) {
             return $row["admingrp"];
@@ -376,9 +376,9 @@
         // could use GetRow here
         $result = &$this->ds->Execute("SELECT usergrp.grp
                             FROM usergrp, grp
-                            WHERE usergrp.userid=".$this->ds->qstr($userid)." AND
+                            WHERE usergrp.userid=".$this->ds->QMagic($userid)." AND
                                usergrp.grp=grp.grp AND
-                               grp.createcust=".$this->ds->qstr('Y'));
+                               grp.createcust=".$this->ds->QMagic('Y'));
 
         if ($row = $result->FetchRow()) {
             return $row["grp"];
@@ -425,7 +425,7 @@
 
         $string = " IN (";
         foreach($grps as $value) {
-            $string .= $this->ds->qstr($value).",";
+            $string .= $this->ds->QMagic($value).",";
         }
         return substr($string, 0, -1).")";
     }
@@ -457,7 +457,7 @@
 
         $result = &$this->ds->Execute("SELECT count(*) AS cnt
                          FROM bounds
-                         WHERE grp=".$this->ds->qstr($grp));
+                         WHERE grp=".$this->ds->QMagic($grp));
         $row = $result->FetchRow();
         // no bounds, group can do anything
         if ($row["cnt"] == 0) {
@@ -470,7 +470,7 @@
                                   boundsaddr + boundssize - 1) AND
                                   ($boundsaddr+$boundssize-1 BETWEEN boundsaddr AND 
                                       boundsaddr + boundssize - 1)) AND
-                                  grp=".$this->ds->qstr($grp));
+                                  grp=".$this->ds->QMagic($grp));
 
         if ($result->FetchRow()) {
             return 1;
@@ -719,16 +719,16 @@
                     (userinf, location, telno, descrip, hname,
                      baseindex, ipaddr, lastmod, lastpol, userid)
                     VALUES
-                    (".$this->ds->qstr("").",
-                     ".$this->ds->qstr("").",
-                     ".$this->ds->qstr("").",
-                     ".$this->ds->qstr("Unknown - added by IPplan poller").",
-                     ".$this->ds->qstr("").",
+                    (".$this->ds->QMagic("").",
+                     ".$this->ds->QMagic("").",
+                     ".$this->ds->QMagic("").",
+                     ".$this->ds->QMagic("Unknown - added by IPplan poller").",
+                     ".$this->ds->QMagic("").",
                      $baseindex, 
                      $ipaddr,
                      ".$this->ds->DBTimeStamp(time()).",
                      ".$this->ds->DBTimeStamp(time()).",
-                     ".$this->ds->qstr("POLLER").")");
+                     ".$this->ds->QMagic("POLLER").")");
         }
 
     }
@@ -942,8 +942,8 @@
                 $this->ds->Execute("INSERT INTO auditlog
                         (action, userid, dt)
                         VALUES
-                        (".$this->ds->qstr(substr($message,0,254)).",
-                         ".$this->ds->qstr(getAuthUsername()).",
+                        (".$this->ds->QMagic(substr($message,0,254)).",
+                         ".$this->ds->QMagic(getAuthUsername()).",
                          ".$this->ds->DBTimeStamp(time()).")");
             }
             else if (is_array($message)) {
@@ -960,8 +960,8 @@
                     $this->ds->Execute("INSERT INTO auditlog
                             (action, userid, dt)
                             VALUES
-                            (".$this->ds->qstr(substr($value,0,254)).",
-                             ".$this->ds->qstr(getAuthUsername()).",
+                            (".$this->ds->QMagic(substr($value,0,254)).",
+                             ".$this->ds->QMagic(getAuthUsername()).",
                              ".$this->ds->DBTimeStamp(time()).")");
                 }
 
@@ -983,10 +983,10 @@
         if (!empty($search)) {
             switch ($expr) {
                 case "NLIKE":
-                    $sql="$var NOT LIKE ".$this->ds->qstr("%$search%");
+                    $sql="$var NOT LIKE ".$this->ds->QMagic("%$search%");
                     break;
                 case "EXACT":
-                    $sql="$var = ".$this->ds->qstr("$search");
+                    $sql="$var = ".$this->ds->QMagic("$search");
                     break;
                 case "RLIKE":
                 // default is RLIKE, need to protect for DBF's without RLIKE
@@ -994,11 +994,11 @@
                         return "";
                     }
                     if (DBF_TYPE=="mysql" or DBF_TYPE=="maxsql") {
-                        $sql="$var RLIKE ".$this->ds->qstr("$search");
+                        $sql="$var RLIKE ".$this->ds->QMagic("$search");
                         break;
                     }
                     if (DBF_TYPE=="postgres7") {
-                        $sql="$var ~ ".$this->ds->qstr("$search");
+                        $sql="$var ~ ".$this->ds->QMagic("$search");
                         break;
                     }
                 case "NRLIKE":
@@ -1006,22 +1006,22 @@
                         return "";
                     }
                     if (DBF_TYPE=="mysql" or DBF_TYPE=="maxsql") {
-                        $sql="$var NOT RLIKE ".$this->ds->qstr("$search");
+                        $sql="$var NOT RLIKE ".$this->ds->QMagic("$search");
                         break;
                     }
                     if (DBF_TYPE=="postgres7") {
-                        $sql="$var NOT ~ ".$this->ds->qstr("$search");
+                        $sql="$var NOT ~ ".$this->ds->QMagic("$search");
                         break;
                     }
                 case "LIKE":
-                    $sql="$var LIKE ".$this->ds->qstr("%$search%");
+                    $sql="$var LIKE ".$this->ds->QMagic("%$search%");
                     break;
                 case "END":
-                    $sql="$var LIKE ".$this->ds->qstr("%$search");
+                    $sql="$var LIKE ".$this->ds->QMagic("%$search");
                     break;
                 // default is START search
                 default:
-                    $sql="$var LIKE ".$this->ds->qstr("$search%");
+                    $sql="$var LIKE ".$this->ds->QMagic("$search%");
             }
             // should there be an AND?
             if ($addand) {
diff -ruN ipplan.orig/class.dnslib.php ipplan/class.dnslib.php
--- ipplan.orig/class.dnslib.php	2009-03-18 22:43:54.000000000 +0200
+++ ipplan/class.dnslib.php	2009-07-24 16:49:13.294270409 +0200
@@ -262,10 +262,10 @@
                      recordtype, userid, ip_hostname) ".
                     "VALUES ($this->cust, $dataid, ". $i.",".
                     $this->ds->DBTimeStamp(time()).",".
-                    $this->ds->qstr($host).",".
-                    $this->ds->qstr($recordtype).",".
-                    $this->ds->qstr(getAuthUsername()).",".
-                    $this->ds->qstr($iphostname).")" );
+                    $this->ds->QMagic($host).",".
+                    $this->ds->QMagic($recordtype).",".
+                    $this->ds->QMagic(getAuthUsername()).",".
+                    $this->ds->QMagic($iphostname).")" );
             if (!$result) {
                 return FALSE;
             }
@@ -288,7 +288,7 @@
                         (id, hname, horder)
                         VALUES
                         ($dataid,
-                         ".$this->ds->qstr($hnametemp).",
+                         ".$this->ds->QMagic($hnametemp).",
                          $i)");
                 if (!$result) {
                     return FALSE;
@@ -340,23 +340,23 @@
 
         // Updated DB here.
         $result = $this->ds->Execute("UPDATE fwdzone ".
-                "set serialdate=".$this->ds->qstr($this->serialdate).
+                "set serialdate=".$this->ds->QMagic($this->serialdate).
                 ", serialnum=$this->serialnum".
                 ",ttl=".$this->ttl.
                 ",refresh=".$this->refresh.
                 ",retry=".$this->retry.
                 ",expire=".$this->expire.
                 ",minimum=".$this->minimum.
-                ",error_message=".$this->ds->qstr("E").
-                ",responsiblemail=".$this->ds->qstr($this->responsiblemail).
-                ",userid=".$this->ds->qstr(getAuthUsername()).
-                ",zonefilepath1=".$this->ds->qstr($this->zonepath).
-                ",zonefilepath2=".$this->ds->qstr($this->seczonepath).
+                ",error_message=".$this->ds->QMagic("E").
+                ",responsiblemail=".$this->ds->QMagic($this->responsiblemail).
+                ",userid=".$this->ds->QMagic(getAuthUsername()).
+                ",zonefilepath1=".$this->ds->QMagic($this->zonepath).
+                ",zonefilepath2=".$this->ds->QMagic($this->seczonepath).
                 ",createmod=".$this->ds->DBDate($this->createmod).
                 ",lastmod=".$this->ds->DBTimeStamp(time()).
                 ",expiremod=".$this->ds->DBDate($this->expiremod).
                 ",regmod=".$this->ds->DBDate($this->regmod).
-                ",slaveonly=".$this->ds->qstr($this->slaveonly).
+                ",slaveonly=".$this->ds->QMagic($this->slaveonly).
                 " WHERE customer=$cust AND data_id=".$dataid );
 
         if($this->ds->GetRow("SELECT info
@@ -364,7 +364,7 @@
                 WHERE customer=$cust AND
                 data_id=$dataid")) {   // should have FOR UPDATE here!
             $result = $this->ds->Execute("UPDATE fwdzoneadd ".
-                "set info=".$this->ds->qstr($this->info).
+                "set info=".$this->ds->QMagic($this->info).
                 " WHERE customer=$cust AND data_id=".$dataid );
         } 
         else {  // no record, insert
@@ -372,7 +372,7 @@
                 $result = $this->ds->Execute("INSERT into fwdzoneadd (customer, data_id, info) ".
                         "VALUES ($this->cust,".
                         $dataid.",".
-                        $this->ds->qstr($this->info).")" );
+                        $this->ds->QMagic($this->info).")" );
             }
 
         }
@@ -398,23 +398,23 @@
             createmod, lastmod, expiremod, regmod, serialdate, serialnum, ttl, refresh, retry, 
             expire, minimum, responsiblemail, userid, zonefilepath1, zonefilepath2, slaveonly) ".
                 "VALUES ($this->cust,".
-                $this->ds->qstr($this->domain).",".
-                $this->ds->qstr("E").",".
+                $this->ds->QMagic($this->domain).",".
+                $this->ds->QMagic("E").",".
                 $this->ds->DBDate($this->createmod).",".
                 $this->ds->DBTimeStamp(time()).",".
                 $this->ds->DBDate($this->expiremod).",".
                 $this->ds->DBDate($this->regmod).",".
-                $this->ds->qstr($this->serialdate).", $this->serialnum,".
+                $this->ds->QMagic($this->serialdate).", $this->serialnum,".
                 $this->ttl.",".
                 $this->refresh.",".
                 $this->retry.",".
                 $this->expire.",".
                 $this->minimum.",".
-                $this->ds->qstr($this->responsiblemail).",".
-                $this->ds->qstr(getAuthUsername()).",".
-                $this->ds->qstr($this->zonepath).",".
-                $this->ds->qstr($this->seczonepath).",".
-                $this->ds->qstr($this->slaveonly).")" );
+                $this->ds->QMagic($this->responsiblemail).",".
+                $this->ds->QMagic(getAuthUsername()).",".
+                $this->ds->QMagic($this->zonepath).",".
+                $this->ds->QMagic($this->seczonepath).",".
+                $this->ds->QMagic($this->slaveonly).")" );
 
         // did not fail due to key error?
         // should not fail as we checked this already!
@@ -427,7 +427,7 @@
                 $result=$this->ds->Execute("SELECT data_id 
                         FROM fwdzone
                         WHERE customer=$this->cust AND 
-                        domain=".$this->ds->qstr($this->domain));
+                        domain=".$this->ds->QMagic($this->domain));
                 $temprow = $result->FetchRow();
                 $dataid=$temprow["data_id"];
             }
@@ -436,7 +436,7 @@
                 $result = $this->ds->Execute("INSERT into fwdzoneadd (customer, data_id, info) ".
                         "VALUES ($this->cust,".
                         $dataid.",".
-                        $this->ds->qstr($this->info).")" );
+                        $this->ds->QMagic($this->info).")" );
             }
 
             return $dataid;
@@ -465,7 +465,7 @@
         // could use unique key on database to do check, but requires extra key
         // just to add a new record
         $restemp=$this->ds->Execute("SELECT domain FROM fwdzone 
-                WHERE customer=$cust AND domain = ".$this->ds->qstr($this->domain));
+                WHERE customer=$cust AND domain = ".$this->ds->QMagic($this->domain));
 
         if ($restemp->FetchRow()) {
             // domain already exists, fail transaction
@@ -499,11 +499,11 @@
                         (data_id, host, recordtype, ip_hostname, sortorder, customer, userid, lastmod)
                         SELECT $dataid AS data_id, fwdzonerec.host, fwdzonerec.recordtype, 
                             fwdzonerec.ip_hostname, fwdzonerec.sortorder, fwdzonerec.customer, 
-                            ".$this->ds->qstr(getAuthUsername())." AS userid,
+                            ".$this->ds->QMagic(getAuthUsername())." AS userid,
                             ".$this->ds->DBTimeStamp(time())." AS lastmod
                         FROM fwdzonerec, fwdzone
                         WHERE fwdzonerec.data_id=fwdzone.data_id AND 
-                            fwdzone.domain=".$this->ds->qstr("template.com"));
+                            fwdzone.domain=".$this->ds->QMagic("template.com"));
 
                 }
                 $this->err = 0;
@@ -526,9 +526,9 @@
 
         // Update DNS Database Serial Count.  Update Serial Count only when we export.
         $result = $this->ds->Execute("UPDATE fwdzone ".
-                "set serialdate=".$this->ds->qstr($this->serialdate).
-                ", userid=".$this->ds->qstr(getAuthUsername()).
-                ", error_message=".$this->ds->qstr("").
+                "set serialdate=".$this->ds->QMagic($this->serialdate).
+                ", userid=".$this->ds->QMagic(getAuthUsername()).
+                ", error_message=".$this->ds->QMagic("").
                 ", lastexp=".$this->ds->DBTimeStamp(time()).
                 ", serialnum=$this->serialnum".
                 " WHERE customer=$cust AND data_id=".$dataid);
@@ -798,7 +798,7 @@
                         (id, hname, horder)
                         VALUES
                         ($zoneid,
-                         ".$this->ds->qstr($hnametemp).",
+                         ".$this->ds->QMagic($hnametemp).",
                          $i)");
 
                 if (!$result) {
@@ -854,22 +854,22 @@
 
         // Updated DB here.
         $result = $this->ds->Execute("UPDATE zones SET zoneip=$zoneip".
-                ",zone=".$this->ds->qstr($this->zone).
+                ",zone=".$this->ds->QMagic($this->zone).
                 ",zonesize=$size".
-                ",serialdate=".$this->ds->qstr($this->serialdate).
+                ",serialdate=".$this->ds->QMagic($this->serialdate).
                 ",serialnum=$this->serialnum".
                 ",ttl=".$this->ttl.
                 ",refresh=".$this->refresh.
                 ",retry=".$this->retry.
                 ",expire=".$this->expire.
                 ",minimum=".$this->minimum.
-                ",error_message=".$this->ds->qstr("E").
-                ",responsiblemail=".$this->ds->qstr($this->responsiblemail).
-                ",userid=".$this->ds->qstr(getAuthUsername()).
-                ",zonefilepath1=".$this->ds->qstr($this->zonepath).
-                ",zonefilepath2=".$this->ds->qstr($this->seczonepath).
+                ",error_message=".$this->ds->QMagic("E").
+                ",responsiblemail=".$this->ds->QMagic($this->responsiblemail).
+                ",userid=".$this->ds->QMagic(getAuthUsername()).
+                ",zonefilepath1=".$this->ds->QMagic($this->zonepath).
+                ",zonefilepath2=".$this->ds->QMagic($this->seczonepath).
                 ",lastmod=".$this->ds->DBTimeStamp(time()).
-                ",slaveonly=".$this->ds->qstr($this->slaveonly).
+                ",slaveonly=".$this->ds->QMagic($this->slaveonly).
                 " WHERE customer=$cust AND id=".$zoneid );
 
         // delete all the DNS records first to preserve correct order
@@ -896,20 +896,20 @@
                  lastmod, responsiblemail, userid, zonefilepath1, 
                  zonefilepath2, slaveonly) ".
                 "VALUES ($this->cust, $this->zoneip,".
-                $this->ds->qstr($this->zone).", $this->size,".
-                $this->ds->qstr($this->serialdate).", $this->serialnum,".
-                $this->ds->qstr("E").",".
+                $this->ds->QMagic($this->zone).", $this->size,".
+                $this->ds->QMagic($this->serialdate).", $this->serialnum,".
+                $this->ds->QMagic("E").",".
                 $this->ttl.",".
                 $this->refresh.",".
                 $this->retry.",".
                 $this->expire.",".
                 $this->minimum.",".
                 $this->ds->DBTimeStamp(time()).",".
-                $this->ds->qstr($this->responsiblemail).",".
-                $this->ds->qstr(getAuthUsername()).",".
-                $this->ds->qstr($this->zonepath).",".
-                $this->ds->qstr($this->seczonepath).",".
-                $this->ds->qstr($this->slaveonly).")" );
+                $this->ds->QMagic($this->responsiblemail).",".
+                $this->ds->QMagic(getAuthUsername()).",".
+                $this->ds->QMagic($this->zonepath).",".
+                $this->ds->QMagic($this->seczonepath).",".
+                $this->ds->QMagic($this->slaveonly).")" );
 
         // did not fail due to key error?
         // should not fail as we checked this already!
@@ -953,7 +953,7 @@
         // could use unique key on database to do check, but requires extra key
         // just to add a new record
         $restemp=$this->ds->Execute("SELECT zone FROM zones
-                WHERE customer=$cust AND zone = ".$this->ds->qstr($this->zone));
+                WHERE customer=$cust AND zone = ".$this->ds->QMagic($this->zone));
 
         if ($restemp->FetchRow()) {
             // domain already exists, fail transaction
@@ -999,10 +999,10 @@
         $this->Serial();
 
         $result = $this->ds->Execute("UPDATE zones ".
-                "set serialdate=".$this->ds->qstr($this->serialdate).
-                ", userid=".$this->ds->qstr(getAuthUsername()).
+                "set serialdate=".$this->ds->QMagic($this->serialdate).
+                ", userid=".$this->ds->QMagic(getAuthUsername()).
                 ", lastexp=".$this->ds->DBTimeStamp(time()).
-                ", error_message=".$this->ds->qstr("").
+                ", error_message=".$this->ds->QMagic("").
                 ", serialnum=$this->serialnum ".
                 " WHERE customer=$cust AND id=$zoneid");
 
@@ -1155,8 +1155,8 @@
 
         // Update DNS Database Serial Count.  Update Serial Count only when we export.
         $result = $this->ds->Execute("UPDATE fwdzone ".
-        "set serialdate=".$this->ds->qstr($this->serialdate).
-        ", userid=".$this->ds->qstr(getAuthUsername()).
+        "set serialdate=".$this->ds->QMagic($this->serialdate).
+        ", userid=".$this->ds->QMagic(getAuthUsername()).
         ", serialnum=$this->serialnum".
         " WHERE customer=$cust AND data_id=".$zoneid);
 
diff -ruN ipplan.orig/contrib/ipplan-poller.php ipplan/contrib/ipplan-poller.php
--- ipplan.orig/contrib/ipplan-poller.php	2009-07-24 16:35:37.098269923 +0200
+++ ipplan/contrib/ipplan-poller.php	2009-07-24 16:48:58.061261570 +0200
@@ -242,7 +242,7 @@
 
                 if ($hostnames) {
                     $result = $ds->Execute("UPDATE ipaddr
-                            SET lastpol=".$ds->DBTimeStamp(time()).", hname=".$ds->qstr($hname)."
+                            SET lastpol=".$ds->DBTimeStamp(time()).", hname=".$ds->QMagic($hname)."
                             WHERE baseindex=$baseindex AND
                             ipaddr=$ipaddr");
                 }
@@ -258,23 +258,23 @@
                             (userinf, location, telno, descrip, hname,
                              baseindex, ipaddr, lastmod, lastpol, userid)
                             VALUES
-                            (".$ds->qstr("").",
-                             ".$ds->qstr("").",
-                             ".$ds->qstr("").",
-                             ".$ds->qstr("Unknown - added by IPplan command line poller").",
-                             ".$ds->qstr($hname).",
+                            (".$ds->QMagic("").",
+                             ".$ds->QMagic("").",
+                             ".$ds->QMagic("").",
+                             ".$ds->QMagic("Unknown - added by IPplan command line poller").",
+                             ".$ds->QMagic($hname).",
                              $baseindex, 
                              $ipaddr,
                              ".$ds->DBTimeStamp(time()).",
                              ".$ds->DBTimeStamp(time()).",
-                             ".$ds->qstr("POLLER").")");
+                             ".$ds->QMagic("POLLER").")");
 
                     if ($audit) {
                         $ds->Execute("INSERT INTO auditlog
                                 (action, userid, dt)
                                 VALUES
-                                (".$ds->qstr(sprintf("User POLLER added ip record %s customer %u index %u", $key, $cust, $baseindex)).",
-                                 ".$ds->qstr("POLLER").",
+                                (".$ds->QMagic(sprintf("User POLLER added ip record %s customer %u index %u", $key, $cust, $baseindex)).",
+                                 ".$ds->QMagic("POLLER").",
                                  ".$ds->DBTimeStamp(time()).")");
                     }
                 }
diff -ruN ipplan.orig/user/createarea.php ipplan/user/createarea.php
--- ipplan.orig/user/createarea.php	2009-07-24 16:35:37.104261224 +0200
+++ ipplan/user/createarea.php	2009-07-24 16:45:44.647275743 +0200
@@ -84,7 +84,7 @@
       $ds->DbfTransactionStart();
       if ($action=="modify") {
           $result=&$ds->ds->Execute("UPDATE area SET areaaddr=$base, 
-                  descrip=".$ds->ds->qstr($descrip)." WHERE areaindex=$areaindex") and
+                  descrip=".$ds->ds->QMagic($descrip)." WHERE areaindex=$areaindex") and
           $ds->AuditLog(array("event"=>151, "action"=>"modify area", 
                     "descrip"=>$descrip, "user"=>getAuthUsername(), "area"=>$ipaddr,
                     "cust"=>$cust));
@@ -93,7 +93,7 @@
           $result=&$ds->ds->Execute("INSERT INTO area
                   (areaaddr, descrip, customer)
                   VALUES
-                  ($base, ".$ds->ds->qstr($descrip).", $cust)") and
+                  ($base, ".$ds->ds->QMagic($descrip).", $cust)") and
           $ds->AuditLog(array("event"=>150, "action"=>"create area", 
                     "descrip"=>$descrip, "user"=>getAuthUsername(), "area"=>$ipaddr,
                     "cust"=>$cust));
diff -ruN ipplan.orig/user/createrange.php ipplan/user/createrange.php
--- ipplan.orig/user/createrange.php	2009-07-24 16:35:37.106272084 +0200
+++ ipplan/user/createrange.php	2009-07-24 16:45:10.911264478 +0200
@@ -166,7 +166,7 @@
         if ($action=="modify") {
 
             $result=&$ds->ds->Execute("UPDATE netrange SET areaindex=$areaindex, 
-                    descrip=".$ds->ds->qstr($descrip).",
+                    descrip=".$ds->ds->QMagic($descrip).",
                     rangeaddr=$base, rangesize=$size
                     WHERE rangeindex=$rangeindex") and
                 $ds->AuditLog(array("event"=>161, "action"=>"modify range", 
@@ -179,7 +179,7 @@
                      customer)
                     VALUES
                     ($base, $size, $areaindex,
-                     ".$ds->ds->qstr($descrip).",
+                     ".$ds->ds->QMagic($descrip).",
                      $cust)") and
                     $ds->AuditLog(array("event"=>160, "action"=>"create range", 
                                 "descrip"=>$descrip, "user"=>getAuthUsername(), "areaindex"=>$areaindex,
diff -ruN ipplan.orig/user/createsubnet.php ipplan/user/createsubnet.php
--- ipplan.orig/user/createsubnet.php	2009-07-24 16:35:37.111261269 +0200
+++ ipplan/user/createsubnet.php	2009-07-24 16:47:00.295261634 +0200
@@ -219,7 +219,7 @@
                 $result = &$ds->ds->Execute("INSERT INTO baseadd
                         (info, baseindex)
                         VALUES
-                        (".$ds->ds->qstr($info).", $id)");
+                        (".$ds->ds->QMagic($info).", $id)");
             }
 
             $ds->DbfTransactionEnd();
diff -ruN ipplan.orig/user/displaysubnet.php ipplan/user/displaysubnet.php
--- ipplan.orig/user/displaysubnet.php	2009-07-24 16:35:37.134260756 +0200
+++ ipplan/user/displaysubnet.php	2009-07-24 16:45:26.829261752 +0200
@@ -221,7 +221,7 @@
                                     WHERE base.customer=$cust AND
                                     base.baseindex=ipaddr.baseindex AND
                                     ipaddr.ipaddr!=$ip AND
-                                    ipaddr.macaddr=".$ds->ds->qstr($macaddr))) {
+                                    ipaddr.macaddr=".$ds->ds->QMagic($macaddr))) {
                             $formerror .= sprintf(my_("Duplicate MAC address: %s"), $oldmacaddr)."\n";
                             insert($w,anchor("searchall.php?cust=".$cust."&field=macaddr&search=".$macaddr,
                                 my_("Show duplicate MAC addresses")));
@@ -302,7 +302,7 @@
                                     WHERE requestindex=$request");
                             $gw=$ds->ds->GetOne("SELECT ipaddr FROM ipaddr
                                     WHERE baseindex=$baseindex AND 
-                                       descrip LIKE ".$ds->ds->qstr("GW%"));
+                                       descrip LIKE ".$ds->ds->QMagic("GW%"));
 
                             $body="?Subject=IP address request actioned&body=";
                             $body2="The request details submitted: $requestdesc\n\n";
@@ -925,15 +925,15 @@
                 FROM fwdzone, fwdzonerec 
                 WHERE fwdzone.data_id=fwdzonerec.data_id AND
                 fwdzone.customer=$cust AND
-                fwdzonerec.recordtype=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.error_message=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.ip_hostname=".$ds->ds->qstr(inet_ntoa($ip)));
+                fwdzonerec.recordtype=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.error_message=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.ip_hostname=".$ds->ds->QMagic(inet_ntoa($ip)));
 
         $recs=$result->PO_RecordCount("fwdzone, fwdzonerec", 
                 "fwdzone.data_id=fwdzonerec.data_id AND fwdzone.customer=$cust AND
-                fwdzonerec.recordtype=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.error_message=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.ip_hostname=".$ds->ds->qstr(inet_ntoa($ip)));
+                fwdzonerec.recordtype=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.error_message=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.ip_hostname=".$ds->ds->QMagic(inet_ntoa($ip)));
         // must be exactly one A record on one domain else cannot delete
         if($recs == 1) {
             $row=$result->FetchRow();
@@ -944,7 +944,7 @@
 
             $result = &$ds->ds->Execute("DELETE FROM fwdzonerec 
                     WHERE customer=$cust AND recidx=$recidx") and
-            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->qstr("E").
+            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->QMagic("E").
                     " WHERE customer=$cust AND data_id=".$dom_id) and
             $ds->AuditLog(array("event"=>120, "action"=>"delete zone record", "cust"=>$cust,
                             "user"=>getAuthUsername(), "id"=>$recidx));
@@ -979,13 +979,13 @@
                 FROM fwdzone, fwdzonerec 
                 WHERE fwdzone.data_id=fwdzonerec.data_id AND
                 fwdzone.customer=$cust AND
-                fwdzonerec.recordtype=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.ip_hostname=".$ds->ds->qstr(inet_ntoa($ip)));
+                fwdzonerec.recordtype=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.ip_hostname=".$ds->ds->QMagic(inet_ntoa($ip)));
 
         $recs=$result->PO_RecordCount("fwdzone, fwdzonerec", 
                 "fwdzone.data_id=fwdzonerec.data_id AND fwdzone.customer=$cust AND
-                fwdzonerec.recordtype=".$ds->ds->qstr("A")." AND 
-                fwdzonerec.ip_hostname=".$ds->ds->qstr(inet_ntoa($ip)));
+                fwdzonerec.recordtype=".$ds->ds->QMagic("A")." AND 
+                fwdzonerec.ip_hostname=".$ds->ds->QMagic(inet_ntoa($ip)));
         // must be exactly one A record on one domain else cannot update
         if($recs == 1) {
             // does domain name of record match ip records hostname?
@@ -1005,13 +1005,13 @@
             }
 
             insert($w,textbr(my_("IP hostname field in DNS forward zone modified")));
-            $ds->ds->Execute("UPDATE fwdzonerec SET host=".$ds->ds->qstr($hnametmp).",
+            $ds->ds->Execute("UPDATE fwdzonerec SET host=".$ds->ds->QMagic($hnametmp).",
                     lastmod=".$ds->ds->DBTimeStamp(time()).",
-                    userid=".$ds->ds->qstr(getAuthUsername())."
+                    userid=".$ds->ds->QMagic(getAuthUsername())."
                     WHERE customer=$cust AND
-                    recordtype=".$ds->ds->qstr("A")." AND 
-                    ip_hostname=".$ds->ds->qstr(inet_ntoa($ip))) and
-            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->qstr("E").
+                    recordtype=".$ds->ds->QMagic("A")." AND 
+                    ip_hostname=".$ds->ds->QMagic(inet_ntoa($ip))) and
+            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->QMagic("E").
                     " WHERE customer=$cust AND data_id=".$dataid) and
             $ds->AuditLog(array("event"=>122, "action"=>"modified zone record", "cust"=>$cust,
                     "user"=>getAuthUsername(), "domain"=>$domain, "host"=>$hnametmp,
@@ -1042,12 +1042,12 @@
             $result = &$ds->ds->Execute("SELECT length(domain) AS domainlen, data_id, domain
                     FROM fwdzone
                     WHERE customer=$cust AND
-                    ".$ds->ds->qstr($hname."$")." $regex domain
+                    ".$ds->ds->QMagic($hname."$")." $regex domain
                     ORDER BY domainlen DESC");
 
             $recs=$result->PO_RecordCount("fwdzone", 
                     "customer=$cust AND
-                    ".$ds->ds->qstr($hname."$")." $regex domain");
+                    ".$ds->ds->QMagic($hname."$")." $regex domain");
 
             // must be exactly one matching zone only, or more than one zone
             // sorted DESC. If second case, use first record for longest match
@@ -1063,12 +1063,12 @@
                          recordtype, error_message, userid, ip_hostname) ".
                         "VALUES ($cust, $dataid, 9999,".
                         $ds->ds->DBTimeStamp(time()).",".
-                        $ds->ds->qstr($hnametmp).",".
-                        $ds->ds->qstr("A").",".
-                        $ds->ds->qstr("A").",".
-                        $ds->ds->qstr(getAuthUsername()).",".
-                        $ds->ds->qstr(inet_ntoa($ip)).")" ) and
-            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->qstr("E").
+                        $ds->ds->QMagic($hnametmp).",".
+                        $ds->ds->QMagic("A").",".
+                        $ds->ds->QMagic("A").",".
+                        $ds->ds->QMagic(getAuthUsername()).",".
+                        $ds->ds->QMagic(inet_ntoa($ip)).")" ) and
+            $ds->ds->Execute("UPDATE fwdzone SET error_message=".$ds->ds->QMagic("E").
                     " WHERE customer=$cust AND data_id=".$dataid) and
             $ds->AuditLog(array("event"=>121, "action"=>"add zone record", "cust"=>$cust,
                     "user"=>getAuthUsername(), "domain"=>$domain, "host"=>$hnametmp,
diff -ruN ipplan.orig/user/exportdhcp.php ipplan/user/exportdhcp.php
--- ipplan.orig/user/exportdhcp.php	2009-07-24 16:35:37.142261270 +0200
+++ ipplan/user/exportdhcp.php	2009-07-24 16:47:14.257261620 +0200
@@ -150,7 +150,7 @@
     $result_ip=&$ds->ds->Execute("SELECT ipaddr, macaddr, hname
             FROM ipaddr
             WHERE baseindex=$baseindex AND
-            userinf LIKE ".$ds->ds->qstr("%".DHCPRESERVED."%")."
+            userinf LIKE ".$ds->ds->QMagic("%".DHCPRESERVED."%")."
             ORDER BY ipaddr");
 
     $iprange_dynamicIPs=array();
diff -ruN ipplan.orig/user/modifybase.php ipplan/user/modifybase.php
--- ipplan.orig/user/modifybase.php	2009-07-24 16:35:37.157277068 +0200
+++ ipplan/user/modifybase.php	2009-07-24 16:48:36.765261577 +0200
@@ -224,7 +224,7 @@
         $result=&$ds->ds->Execute("UPDATE base
                 SET subnetsize=$size*2,
                 lastmod=".$ds->ds->DBTimeStamp(time()).",
-                userid=".$ds->ds->qstr(getAuthUsername())."
+                userid=".$ds->ds->QMagic(getAuthUsername())."
                 WHERE baseindex=$baseindex");
 
         $ds->AuditLog(array("event"=>173, "action"=>"join subnet", 
@@ -240,7 +240,7 @@
         $result=&$ds->ds->Execute("UPDATE base
                 SET subnetsize=$size/2,
                 lastmod=".$ds->ds->DBTimeStamp(time()).",
-                userid=".$ds->ds->qstr(getAuthUsername())."
+                userid=".$ds->ds->QMagic(getAuthUsername())."
                 WHERE baseindex=$baseindex");
         // ... and create new subnet
         $timetmp=time();
diff -ruN ipplan.orig/user/modifycustomer.php ipplan/user/modifycustomer.php
--- ipplan.orig/user/modifycustomer.php	2009-07-24 16:35:37.160261295 +0200
+++ ipplan/user/modifycustomer.php	2009-07-24 16:48:21.805261227 +0200
@@ -126,9 +126,9 @@
             $result=&$ds->ds->Execute("INSERT INTO customer
                     (custdescrip, crm, admingrp)
                     VALUES
-                    (".$ds->ds->qstr($custdescrip).",
-                     ".$ds->ds->qstr($crm).",
-                     ".$ds->ds->qstr($grp).")");
+                    (".$ds->ds->QMagic($custdescrip).",
+                     ".$ds->ds->QMagic($crm).",
+                     ".$ds->ds->QMagic($grp).")");
 
             // did not fail due to key error?
             if ($result) {
@@ -139,7 +139,7 @@
                     // emulate getting the last insert_id
                     $result=&$ds->ds->Execute("SELECT customer 
                             FROM customer
-                            WHERE custdescrip=".$ds->ds->qstr($custdescrip));
+                            WHERE custdescrip=".$ds->ds->QMagic($custdescrip));
                     $temprow = $result->FetchRow();
                     $cust=$temprow["customer"];
                 }
@@ -160,9 +160,9 @@
             }
 
             $result=&$ds->ds->Execute("UPDATE customer
-                    SET custdescrip=".$ds->ds->qstr($custdescrip).",
-                    crm=".$ds->ds->qstr($crm).",
-                    admingrp=".$ds->ds->qstr($grp)."
+                    SET custdescrip=".$ds->ds->QMagic($custdescrip).",
+                    crm=".$ds->ds->QMagic($crm).",
+                    admingrp=".$ds->ds->QMagic($grp)."
                     WHERE customer=$cust");
 
             // did not fail due to key error?
@@ -176,7 +176,7 @@
         // test for CRM duplicates - this is not a unique key and cannot be 
         if (!empty($crm)) {
             $recs=$ds->ds->GetOne("SELECT count(*) AS cnt FROM customer 
-                    WHERE crm=".$ds->ds->qstr($crm));
+                    WHERE crm=".$ds->ds->QMagic($crm));
             if ($recs > 1) {  //duplicate ?
                 insert($w,text(my_("The CRM field has already been used for another customer"), array("color"=>"#FF0000")));
                 insert($w,textbr());
@@ -200,25 +200,25 @@
                      phne, mbox)
                     VALUES
                     ($cust,
-                     ".$ds->ds->qstr("").",
-                     ".$ds->ds->qstr($org).",
-                     ".$ds->ds->qstr($street).",
-                     ".$ds->ds->qstr($city).",
-                     ".$ds->ds->qstr($state).",
-                     ".$ds->ds->qstr($zipcode).",
-                     ".$ds->ds->qstr($cntry).",
-                     ".$ds->ds->qstr($nichandl).",
-                     ".$ds->ds->qstr($lname).",
-                     ".$ds->ds->qstr($fname).",
-                     ".$ds->ds->qstr($mname).",
-                     ".$ds->ds->qstr($torg).",
-                     ".$ds->ds->qstr($tstreet).",
-                     ".$ds->ds->qstr($tcity).",
-                     ".$ds->ds->qstr($tstate).",
-                     ".$ds->ds->qstr($tzipcode).",
-                     ".$ds->ds->qstr($tcntry).",
-                     ".$ds->ds->qstr($phne).",
-                     ".$ds->ds->qstr($mbox).")");
+                     ".$ds->ds->QMagic("").",
+                     ".$ds->ds->QMagic($org).",
+                     ".$ds->ds->QMagic($street).",
+                     ".$ds->ds->QMagic($city).",
+                     ".$ds->ds->QMagic($state).",
+                     ".$ds->ds->QMagic($zipcode).",
+                     ".$ds->ds->QMagic($cntry).",
+                     ".$ds->ds->QMagic($nichandl).",
+                     ".$ds->ds->QMagic($lname).",
+                     ".$ds->ds->QMagic($fname).",
+                     ".$ds->ds->QMagic($mname).",
+                     ".$ds->ds->QMagic($torg).",
+                     ".$ds->ds->QMagic($tstreet).",
+                     ".$ds->ds->QMagic($tcity).",
+                     ".$ds->ds->QMagic($tstate).",
+                     ".$ds->ds->QMagic($tzipcode).",
+                     ".$ds->ds->QMagic($tcntry).",
+                     ".$ds->ds->QMagic($phne).",
+                     ".$ds->ds->QMagic($mbox).")");
 
             // delete all the DNS records first to preserve correct order
             $result=&$ds->ds->Execute("DELETE FROM revdns
@@ -235,8 +235,8 @@
                             (customer, hname, ipaddr, horder)
                             VALUES
                             ($cust,
-                             ".$ds->ds->qstr($hnametemp).",
-                             ".$ds->ds->qstr($ipaddrtemp).",
+                             ".$ds->ds->QMagic($hnametemp).",
+                             ".$ds->ds->QMagic($ipaddrtemp).",
                              $i)");
                 }
             }
@@ -245,7 +245,7 @@
                         FROM custadd
                         WHERE customer=$cust")) {   // should have FOR UPDATE here!
                 $result = &$ds->ds->Execute("UPDATE custadd
-                        SET info=".$ds->ds->qstr($info)."
+                        SET info=".$ds->ds->QMagic($info)."
                         WHERE customer=$cust");
             // this generates a "duplicate key" error if no update
             // should be OK under normal circumstances, but generates error under
@@ -256,7 +256,7 @@
                     $result = &$ds->ds->Execute("INSERT INTO custadd
                             (info, customer)
                             VALUES
-                            (".$ds->ds->qstr($info).", $cust)");
+                            (".$ds->ds->QMagic($info).", $cust)");
                 }
             }
 
diff -ruN ipplan.orig/user/modifydns.php ipplan/user/modifydns.php
--- ipplan.orig/user/modifydns.php	2009-07-24 16:35:37.165261158 +0200
+++ ipplan/user/modifydns.php	2009-07-24 16:47:32.669263630 +0200
@@ -245,10 +245,10 @@
              recordtype, userid, ip_hostname) ".
             "VALUES ($cust, $ds->dataid, 9999,".
             $ds->ds->DBTimeStamp(time()).",".
-            $ds->ds->qstr($host).",".               // myhost or myhost.mydomain.com.
-            $ds->ds->qstr($recordtype).",".         // A, MX, NS
-            $ds->ds->qstr(getAuthUsername()).",".
-            $ds->ds->qstr($iphostname).")" );       // ip address for A, or 10 myhost for MX
+            $ds->ds->QMagic($host).",".               // myhost or myhost.mydomain.com.
+            $ds->ds->QMagic($recordtype).",".         // A, MX, NS
+            $ds->ds->QMagic(getAuthUsername()).",".
+            $ds->ds->QMagic($iphostname).")" );       // ip address for A, or 10 myhost for MX
             */
 
             $ds->AuditLog(array("event"=>111, "action"=>"add forward zone", "cust"=>$cust,
@@ -316,7 +316,7 @@
     if ($dataid==0) {
         $dataid = &$ds->ds->GetCol("SELECT data_id
                 FROM fwdzone 
-                WHERE customer=$cust AND error_message=".$ds->ds->qstr("E")."
+                WHERE customer=$cust AND error_message=".$ds->ds->QMagic("E")."
                 ORDER BY domain ");
     }
     
diff -ruN ipplan.orig/user/modifydnsrecord.php ipplan/user/modifydnsrecord.php
--- ipplan.orig/user/modifydnsrecord.php	2009-07-24 16:35:37.170261039 +0200
+++ ipplan/user/modifydnsrecord.php	2009-07-24 16:46:37.127261298 +0200
@@ -81,7 +81,7 @@
 if ($action=="delete") {
     if (!$dom_id=$ds->ds->GetOne("SELECT data_id
                 FROM fwdzone
-                WHERE customer=$cust AND domain=".$ds->ds->qstr($domain))) {
+                WHERE customer=$cust AND domain=".$ds->ds->QMagic($domain))) {
         myError($w,$p, my_("Could not find the zone - possibly deleted by another user"));
     }
 
@@ -110,7 +110,7 @@
                     $baseindex=$row1["baseindex"];
 
                     $ds->ds->Execute("UPDATE ipaddr
-                            SET hname=".$ds->ds->qstr($row["host"])."
+                            SET hname=".$ds->ds->QMagic($row["host"])."
                             WHERE baseindex=$baseindex AND ipaddr=".inet_aton($row["ip_hostname"]));
                     insert($w,textbr(sprintf(my_("IP record %s updated in subnet '%s' due to deletion of auto created A record"), $row["ip_hostname"], $row1["descrip"])));
                 }
@@ -118,7 +118,7 @@
             $result = &$ds->ds->Execute("DELETE FROM fwdzonerec 
                     WHERE customer=$cust AND recidx=$value") and
             $ds->ds->Execute("UPDATE fwdzone 
-                    SET error_message=".$ds->ds->qstr("E").",
+                    SET error_message=".$ds->ds->QMagic("E").",
                     lastmod=".$ds->ds->DBTimeStamp(time()).
                     " WHERE customer=$cust AND data_id=".$dom_id) and 
             $ds->AuditLog(array("event"=>120, "action"=>"delete zone record", "cust"=>$cust,
@@ -161,7 +161,7 @@
     $result = &$ds->ds->Execute("SELECT fwdzonerec.recidx, fwdzonerec.sortorder 
             FROM fwdzone, fwdzonerec
             WHERE fwdzone.customer=$cust AND 
-            fwdzone.domain=".$ds->ds->qstr($domain)." AND
+            fwdzone.domain=".$ds->ds->QMagic($domain)." AND
             fwdzone.data_id=fwdzonerec.data_id
             ORDER by fwdzonerec.sortorder");
 
@@ -297,14 +297,14 @@
     $result = &$ds->ds->Execute("SELECT customer 
                                 FROM fwdzonerec 
                                 WHERE customer=$cust AND data_id=$zoneid AND
-            host=".$ds->ds->qstr($host)." AND
-            recordtype=".$ds->ds->qstr($recordtype)." AND 
-            ip_hostname=".$ds->ds->qstr($iphostname));
+            host=".$ds->ds->QMagic($host)." AND
+            recordtype=".$ds->ds->QMagic($recordtype)." AND 
+            ip_hostname=".$ds->ds->QMagic($iphostname));
 
     $recs=$result->PO_RecordCount("fwdzonerec", "customer=$cust AND data_id=$zoneid AND
-            host=".$ds->ds->qstr($host)." AND
-            recordtype=".$ds->ds->qstr($recordtype)." AND 
-            ip_hostname=".$ds->ds->qstr($iphostname));
+            host=".$ds->ds->QMagic($host)." AND
+            recordtype=".$ds->ds->QMagic($recordtype)." AND 
+            ip_hostname=".$ds->ds->QMagic($iphostname));
     if($recs > 0) {
         myError($w,$p, my_("Cannot create duplicate records"));
     }
@@ -317,12 +317,12 @@
         $result = &$ds->ds->Execute("SELECT ip_hostname 
                 FROM fwdzonerec 
                 WHERE customer=$cust AND
-                recordtype=".$ds->ds->qstr("A")." AND 
-                ip_hostname=".$ds->ds->qstr($iphostname));
+                recordtype=".$ds->ds->QMagic("A")." AND 
+                ip_hostname=".$ds->ds->QMagic($iphostname));
 
         $recs=$result->PO_RecordCount("fwdzonerec", "customer=$cust AND
-                recordtype=".$ds->ds->qstr("A")." AND 
-                ip_hostname=".$ds->ds->qstr($iphostname));
+                recordtype=".$ds->ds->QMagic("A")." AND 
+                ip_hostname=".$ds->ds->QMagic($iphostname));
         if($recs == 1) {
             $updateiprec=1;
         }
@@ -361,12 +361,12 @@
              recordtype, userid, ip_hostname) ".
             "VALUES ($cust, $zoneid, ". $sortorder.",".
             $ds->ds->DBTimeStamp(time()).",".
-            $ds->ds->qstr($host).",".
-            $ds->ds->qstr($recordtype).",".
-            $ds->ds->qstr(getAuthUsername()).",".
-            $ds->ds->qstr($iphostname).")" ) and
+            $ds->ds->QMagic($host).",".
+            $ds->ds->QMagic($recordtype).",".
+            $ds->ds->QMagic(getAuthUsername()).",".
+            $ds->ds->QMagic($iphostname).")" ) and
         $ds->ds->Execute("UPDATE fwdzone 
-            SET error_message=".$ds->ds->qstr("E").",
+            SET error_message=".$ds->ds->QMagic("E").",
             lastmod=".$ds->ds->DBTimeStamp(time()).
             " WHERE customer=$cust AND data_id=".$dom_id) and
         $ds->AuditLog(array("event"=>121, "action"=>"add zone record", "cust"=>$cust,
@@ -392,7 +392,7 @@
     }
     $dom_id=$ds->ds->GetOne("SELECT data_id
                 FROM fwdzone
-                WHERE customer=$cust AND domain=".$ds->ds->qstr($domain));
+                WHERE customer=$cust AND domain=".$ds->ds->QMagic($domain));
 
     // Updated DB here.
     // Log the Transaction.
@@ -411,14 +411,14 @@
     }
 
     $result = &$ds->ds->Execute("UPDATE fwdzonerec SET sortorder=".$sortorder.
-            ", host=".$ds->ds->qstr($host).
+            ", host=".$ds->ds->QMagic($host).
             ", lastmod=".$ds->ds->DBTimeStamp(time()).
-            ", recordtype=".$ds->ds->qstr($recordtype).
-            ", userid=".$ds->ds->qstr(getAuthUsername()).
-            ", ip_hostname=".$ds->ds->qstr($iphostname).
+            ", recordtype=".$ds->ds->QMagic($recordtype).
+            ", userid=".$ds->ds->QMagic(getAuthUsername()).
+            ", ip_hostname=".$ds->ds->QMagic($iphostname).
             " WHERE customer=$cust AND recidx=".$dataid ) and
         $ds->ds->Execute("UPDATE fwdzone 
-            SET error_message=".$ds->ds->qstr("E").",
+            SET error_message=".$ds->ds->QMagic("E").",
             lastmod=".$ds->ds->DBTimeStamp(time()).
             " WHERE customer=$cust AND data_id=".$dom_id) and
         $ds->AuditLog(array("event"=>122, "action"=>"modified zone record", "cust"=>$cust,
@@ -458,7 +458,7 @@
 
 $result = &$ds->ds->Execute("SELECT domain, data_id FROM fwdzone 
                             WHERE customer=$cust AND 
-                            slaveonly=".$ds->ds->qstr("N")."
+                            slaveonly=".$ds->ds->QMagic("N")."
                             ORDER BY domain");
 if (!$result) {
    myError($w,$p, my_("No domains found. Create some domains and try again."));
diff -ruN ipplan.orig/user/modifyipform.php ipplan/user/modifyipform.php
--- ipplan.orig/user/modifyipform.php	2009-07-24 16:35:37.175260999 +0200
+++ ipplan/user/modifyipform.php	2009-07-24 16:47:47.499261554 +0200
@@ -192,7 +192,7 @@
 
             // add serialized info from file upload
             $ds->ds->Execute("UPDATE ipaddradd
-                    SET infobin=".$ds->ds->qstr(serialize($files))."
+                    SET infobin=".$ds->ds->QMagic(serialize($files))."
                     WHERE baseindex=$baseindex AND
                     ipaddr=$ip");
             // this generates a "duplicate key" error if no update
@@ -202,7 +202,7 @@
                 $ds->ds->Execute("INSERT INTO ipaddradd
                         (infobin, baseindex, ipaddr)
                         VALUES
-                        (".$ds->ds->qstr(serialize($files)).",
+                        (".$ds->ds->QMagic(serialize($files)).",
                          $baseindex,
                          $ip)");
             }
@@ -235,7 +235,7 @@
 
         // add serialized info after file deteled
         $ds->ds->Execute("UPDATE ipaddradd
-                SET infobin=".$ds->ds->qstr(empty($files) ? "" : serialize($files))."
+                SET infobin=".$ds->ds->QMagic(empty($files) ? "" : serialize($files))."
                 WHERE baseindex=$baseindex AND
                 ipaddr=$ip") and
             $ds->AuditLog(array("event"=>141, "action"=>"delete file", 
diff -ruN ipplan.orig/user/modifysubnet.php ipplan/user/modifysubnet.php
--- ipplan.orig/user/modifysubnet.php	2009-07-24 16:35:37.177261840 +0200
+++ ipplan/user/modifysubnet.php	2009-07-24 16:44:56.606265283 +0200
@@ -129,11 +129,11 @@
                 // between base and baseadd is baseindex column
                 if ($duplicatesubnet==0) {
                     $result=&$ds->ds->Execute("UPDATE base
-                            SET descrip=".$ds->ds->qstr($descrip).",
-                            admingrp=".$ds->ds->qstr($grp).",
+                            SET descrip=".$ds->ds->QMagic($descrip).",
+                            admingrp=".$ds->ds->QMagic($grp).",
                             customer=$cust,
                             lastmod=".$ds->ds->DBTimeStamp(time()).",
-                            userid=".$ds->ds->qstr($userid)."
+                            userid=".$ds->ds->QMagic($userid)."
                             WHERE baseindex=$baseindex");
                     
                     $ds->AuditLog(array("event"=>174, "action"=>"move subnet", 
@@ -163,13 +163,13 @@
                                         (ipaddr, userinf, location, telno,
                                          descrip, lastmod, userid, baseindex)
                                         VALUES
-                                        (".$ds->ds->qstr($tempipaddr).",
-                                         ".$ds->ds->qstr($tempuser).",
-                                         ".$ds->ds->qstr($templocation).",
-                                         ".$ds->ds->qstr($temptelno).",
-                                         ".$ds->ds->qstr($tempdescrip).",
+                                        (".$ds->ds->QMagic($tempipaddr).",
+                                         ".$ds->ds->QMagic($tempuser).",
+                                         ".$ds->ds->QMagic($templocation).",
+                                         ".$ds->ds->QMagic($temptelno).",
+                                         ".$ds->ds->QMagic($tempdescrip).",
                                          $templastmod,
-                                         ".$ds->ds->qstr($tempuserid).",
+                                         ".$ds->ds->QMagic($tempuserid).",
                                          $id)");
                             } // end while
                         }
@@ -206,11 +206,11 @@
 
             $ds->DbfTransactionStart();
             $result=&$ds->ds->Execute("UPDATE base
-                    SET descrip=".$ds->ds->qstr($descrip).",
-                    admingrp=".$ds->ds->qstr($grp).",
+                    SET descrip=".$ds->ds->QMagic($descrip).",
+                    admingrp=".$ds->ds->QMagic($grp).",
                     lastmod=".$ds->ds->DBTimeStamp(time()).",
                     baseopt=$dhcp,
-                    userid=".$ds->ds->qstr($userid)."
+                    userid=".$ds->ds->QMagic($userid)."
                     WHERE baseindex=$baseindex") and
                 $ds->AuditLog(array("event"=>171, "action"=>"modify subnet", 
                             "descrip"=>$descrip, "user"=>getAuthUsername(), "baseaddr"=>inet_ntoa($base),
@@ -242,7 +242,7 @@
                         FROM baseadd
                         WHERE baseindex=$baseindex")) {   // should have FOR UPDATE here!
                 $result = &$ds->ds->Execute("UPDATE baseadd
-                        SET info=".$ds->ds->qstr($info)."
+                        SET info=".$ds->ds->QMagic($info)."
                         WHERE baseindex=$baseindex");
             // this generates a "duplicate key" error if no update
             // should be OK under normal circumstances, but generates error under
@@ -253,7 +253,7 @@
                     $result = &$ds->ds->Execute("INSERT INTO baseadd
                             (info, baseindex)
                             VALUES
-                            (".$ds->ds->qstr($info).", $baseindex)");
+                            (".$ds->ds->QMagic($info).", $baseindex)");
                 }
             }
 
diff -ruN ipplan.orig/user/modifyzone.php ipplan/user/modifyzone.php
--- ipplan.orig/user/modifyzone.php	2009-07-24 16:35:37.182261244 +0200
+++ ipplan/user/modifyzone.php	2009-07-24 16:46:00.574261375 +0200
@@ -276,7 +276,7 @@
                 WHERE zones.customer=base.customer AND 
                 base.baseindex=ipaddr.baseindex AND 
                 zones.customer=$cust AND
-                ($sqlfn >= zones.serialdate OR zones.error_message=".$ds->ds->qstr("E").") AND
+                ($sqlfn >= zones.serialdate OR zones.error_message=".$ds->ds->QMagic("E").") AND
                 ipaddr.ipaddr >= zones.zoneip AND 
                 ipaddr.ipaddr < zones.zoneip+zones.zonesize");
     }
diff -ruN ipplan.orig/user/requestip.php ipplan/user/requestip.php
--- ipplan.orig/user/requestip.php	2009-07-24 16:35:37.186261178 +0200
+++ ipplan/user/requestip.php	2009-07-24 16:46:16.008271108 +0200
@@ -120,14 +120,14 @@
                  hname, telno, macaddr, info)
                 VALUES
                 ($cust,
-                 ".$ds->ds->qstr($request).",
-                 ".$ds->ds->qstr($user).",
-                 ".$ds->ds->qstr($location).",
-                 ".$ds->ds->qstr($descrip).",
-                 ".$ds->ds->qstr($hname).",
-                 ".$ds->ds->qstr($telno).",
-                 ".$ds->ds->qstr($newmacaddr).",
-                 ".$ds->ds->qstr($info).")") and
+                 ".$ds->ds->QMagic($request).",
+                 ".$ds->ds->QMagic($user).",
+                 ".$ds->ds->QMagic($location).",
+                 ".$ds->ds->QMagic($descrip).",
+                 ".$ds->ds->QMagic($hname).",
+                 ".$ds->ds->QMagic($telno).",
+                 ".$ds->ds->QMagic($newmacaddr).",
+                 ".$ds->ds->QMagic($info).")") and
                 $ds->AuditLog(array("event"=>200, "action"=>"request ip", 
                             "descrip"=>$descrip, "user"=>getAuthUsername(), "userinf"=>$user,
                             "location"=>$location, "hname"=>$hname, "telno"=>$telno, 
diff -ruN ipplan.orig/user/searchall.php ipplan/user/searchall.php
--- ipplan.orig/user/searchall.php	2009-07-24 16:35:37.191261348 +0200
+++ ipplan/user/searchall.php	2009-07-24 16:48:04.835262321 +0200
@@ -94,35 +94,35 @@
       myError($w,$p, my_("Regular expression repetition-operator operand invalid"));
    }
 /*   if ($field == "any") {
-      $where ="WHERE ipaddr.userinf RLIKE ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.location RLIKE ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.telno RLIKE ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.descrip RLIKE ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.hname RLIKE ".$ds->ds->qstr($search);
+      $where ="WHERE ipaddr.userinf RLIKE ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.location RLIKE ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.telno RLIKE ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.descrip RLIKE ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.hname RLIKE ".$ds->ds->QMagic($search);
       $where.=" OR (ipaddr.ipaddr=ipaddradd.ipaddr AND 
-                 ipaddradd.info RLIKE ".$ds->ds->qstr($search).")";
+                 ipaddradd.info RLIKE ".$ds->ds->QMagic($search).")";
    }
    else */
    if ($field == "userinf")
-      $where="WHERE ipaddr.userinf RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.userinf RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "location")
-      $where="WHERE ipaddr.location RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.location RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "telno")
-      $where="WHERE ipaddr.telno RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.telno RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "descrip")
-      $where="WHERE ipaddr.descrip RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.descrip RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "hname")
-      $where="WHERE ipaddr.hname RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.hname RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "macaddr")
-      $where="WHERE ipaddr.macaddr RLIKE ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.macaddr RLIKE ".$ds->ds->QMagic($search);
    else if ($field == "template" and $tmplfield == "any") {
       $addtables=", ipaddradd";
       $where="WHERE ipaddr.ipaddr=ipaddradd.ipaddr AND ipaddr.baseindex = ipaddradd.baseindex AND 
-                 ipaddradd.info RLIKE ".$ds->ds->qstr($search);
+                 ipaddradd.info RLIKE ".$ds->ds->QMagic($search);
    } else if ($field == "template" and $tmplfield != "any") {
       $addtables=", ipaddradd";
       $where="WHERE ipaddr.ipaddr=ipaddradd.ipaddr AND ipaddr.baseindex = ipaddradd.baseindex AND
-                 ipaddradd.info RLIKE ".$ds->ds->qstr(".*\:\"".$tmplfield."\"\;.*\".*".$search.".*\"\;");
+                 ipaddradd.info RLIKE ".$ds->ds->QMagic(".*\:\"".$tmplfield."\"\;.*\".*".$search.".*\"\;");
    }
 }
 else if (DBF_TYPE=="postgres7") {
@@ -131,65 +131,65 @@
    }
    /*
    if ($field == "any") {
-      $where ="WHERE ipaddr.userinf ~ ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.location ~ ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.telno ~ ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.descrip ~ ".$ds->ds->qstr($search);
-      $where.=" OR ipaddr.hname ~ ".$ds->ds->qstr($search);
+      $where ="WHERE ipaddr.userinf ~ ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.location ~ ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.telno ~ ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.descrip ~ ".$ds->ds->QMagic($search);
+      $where.=" OR ipaddr.hname ~ ".$ds->ds->QMagic($search);
       $where.=" OR (ipaddr.ipaddr=ipaddradd.ipaddr AND 
-                 ipaddradd.info ~ ".$ds->ds->qstr($search).")";
+                 ipaddradd.info ~ ".$ds->ds->QMagic($search).")";
    }
    else */
    if ($field == "userinf")
-      $where="WHERE ipaddr.userinf ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.userinf ~ ".$ds->ds->QMagic($search);
    else if ($field == "location")
-      $where="WHERE ipaddr.location ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.location ~ ".$ds->ds->QMagic($search);
    else if ($field == "telno")
-      $where="WHERE ipaddr.telno ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.telno ~ ".$ds->ds->QMagic($search);
    else if ($field == "descrip")
-      $where="WHERE ipaddr.descrip ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.descrip ~ ".$ds->ds->QMagic($search);
    else if ($field == "hname")
-      $where="WHERE ipaddr.hname ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.hname ~ ".$ds->ds->QMagic($search);
    else if ($field == "macaddr")
-      $where="WHERE ipaddr.macaddr ~ ".$ds->ds->qstr($search);
+      $where="WHERE ipaddr.macaddr ~ ".$ds->ds->QMagic($search);
    else if ($field == "template" and $tmplfield == "any") {
       $addtables=", ipaddradd";
       $where="WHERE ipaddr.ipaddr=ipaddradd.ipaddr AND ipaddr.baseindex = ipaddradd.baseindex AND
-                 ipaddradd.info ~ ".$ds->ds->qstr($search);
+                 ipaddradd.info ~ ".$ds->ds->QMagic($search);
    } else if ($field == "template" and $tmplfield != "any") {
       $addtables=", ipaddradd";
       $where="WHERE ipaddr.ipaddr=ipaddradd.ipaddr AND ipaddr.baseindex = ipaddradd.baseindex AND
-                 ipaddradd.info ~ ".$ds->ds->qstr(".*\:\"".$tmplfield."\"\;.*\".*".$search.".*\"\;");
+                 ipaddradd.info ~ ".$ds->ds->QMagic(".*\:\"".$tmplfield."\"\;.*\".*".$search.".*\"\;");
    }
 }
 else {
     /*
    if ($field == "any") {
-      $where ="WHERE ipaddr.userinf LIKE ".$ds->ds->qstr("%".$search."%");
-      $where.=" OR ipaddr.location LIKE ".$ds->ds->qstr("%".$search."%");
-      $where.=" OR ipaddr.telno LIKE ".$ds->ds->qstr("%".$search."%");
-      $where.=" OR ipaddr.descrip LIKE ".$ds->ds->qstr("%".$search."%");
-      $where.=" OR ipaddr.hname LIKE ".$ds->ds->qstr("%".$search."%");
+      $where ="WHERE ipaddr.userinf LIKE ".$ds->ds->QMagic("%".$search."%");
+      $where.=" OR ipaddr.location LIKE ".$ds->ds->QMagic("%".$search."%");
+      $where.=" OR ipaddr.telno LIKE ".$ds->ds->QMagic("%".$search."%");
+      $where.=" OR ipaddr.descrip LIKE ".$ds->ds->QMagic("%".$search."%");
+      $where.=" OR ipaddr.hname LIKE ".$ds->ds->QMagic("%".$search."%");
       $where.=" OR (ipaddr.ipaddr=ipaddradd.ipaddr AND 
-                 ipaddradd.info LIKE ".$ds->ds->qstr("%".$search."%").")";
+                 ipaddradd.info LIKE ".$ds->ds->QMagic("%".$search."%").")";
    }
    else */
    if ($field == "userinf")
-      $where="WHERE ipaddr.userinf LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.userinf LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "location")
-      $where="WHERE ipaddr.location LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.location LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "telno")
-      $where="WHERE ipaddr.telno LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.telno LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "descrip")
-      $where="WHERE ipaddr.descrip LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.descrip LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "hname")
-      $where="WHERE ipaddr.hname LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.hname LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "macaddr")
-      $where="WHERE ipaddr.macaddr LIKE ".$ds->ds->qstr("%".$search."%");
+      $where="WHERE ipaddr.macaddr LIKE ".$ds->ds->QMagic("%".$search."%");
    else if ($field == "template") {
       $addtables=", ipaddradd";
       $where="WHERE ipaddr.ipaddr=ipaddradd.ipaddr AND 
-                 ipaddradd.info LIKE ".$ds->ds->qstr("%".$search."%");
+                 ipaddradd.info LIKE ".$ds->ds->QMagic("%".$search."%");
    }
 }
 


--- NEW FILE ipplan.spec ---
Name:		ipplan
Version:	4.92
Release:	3%{?dist}
Summary:	Web-based IP address manager and tracker
Group:		Applications/Internet
License:	GPLv2+
URL:		http://iptrack.sourceforge.net/
Source0:	http://downloads.sourceforge.net/sourceforge/iptrack/ipplan-%{version}.tar.gz
Source1:	%{name}-mysql.sql
Source2:	%{name}-pgsql.sql
Source3:	README.%{name}
# Fedora specific patches to use libraries shipped with fedora
Patch1:		ipplan-set-menus-path.patch
Patch2:		ipplan-set-adodb-path.patch
Patch3:		ipplan-use-qmagic.patch
Patch4:		ipplan-set-phpmailer-path.patch
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch:	noarch
Requires:	php, httpd
Requires:	php-gettext, php-snmp
Requires:	php-layers-menu, php-adodb, php-PHPMailer

%description
IPplan is an administrative tool for ISPs and network service companies.
It goes beyond IP address management to provide DNS administration,
configuration file management, circuit management and storing of hardware
information, all customizable via templates. IPplan can handle a single
network or cater for multiple networks and customers with overlapping address
space. Making managing IP addresses and address spaces simple and easy.
It is written in PHP and requires a MySQL or PostgresSQL database.

%prep
%setup -q -n %{name}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1

find . -name README.html -delete
find . -type f -print0 | xargs -0 sed -i 's/\r//'
sed -i -e "s/\(\.*\"UPLOADDIRECTORY\"[^'\"]*['\"]\)[^'\"]*\(['\"].*\)/\1\/var\/cache\/ipplan\2/" config.php
sed -i 's|/tmp/|%{_tmppath}/%{name}/|' config.php
find . -type f -exec chmod a-x {} \;
#remove bundled phplayersmenu
rm -rf menus/
sed -i 's:/usr/local:/usr:' contrib/*.{pl,php}
mkdir sql
cp -p %SOURCE1 %SOURCE2 sql
cp %SOURCE3 %{name}-README.fedora
#remove bundled adodb
rm -rf adodb/
#remove bundled phpMailer
rm -f class.smtp.php class.phpmailer.php phpmailer.lang-en.php
cat <<EOF >%{name}.conf
# %{name}
# %{summary}
# %{version}a
#
Alias /%{name} %{_datadir}/%{name}
Alias /menus %{_datadir}/php/php-layers-menu

<Directory %{_datadir}/%{name}>
	Options +FollowSymLinks
	AllowOverride Limit Options FileInfo
</Directory>

<Directory %{_sysconfdir}/%{name}>
	Order Deny,Allow
	Deny from all
</Directory>

<DirectoryMatch "^%{_datadir}/%{name}/(.*/)?(adodb|templates)/(.*)?">
	Order Deny,Allow
	Deny from all
</DirectoryMatch>
EOF

%build

%install
rm -rf $RPM_BUILD_ROOT
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}
install -p -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/admin
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/images
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/layout
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/templates
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/themes
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/user
install -p -d $RPM_BUILD_ROOT%{_datadir}/%{name}/locale
install -p -d $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
install -p -d $RPM_BUILD_ROOT%{_localstatedir}/cache/%{name}
cp -pr admin/* $RPM_BUILD_ROOT%{_datadir}/%{name}/admin
cp -pr images/* $RPM_BUILD_ROOT%{_datadir}/%{name}/images
cp -pr layout/* $RPM_BUILD_ROOT%{_datadir}/%{name}/layout
cp -pr templates/* $RPM_BUILD_ROOT%{_datadir}/%{name}/templates
cp -pr themes/* $RPM_BUILD_ROOT%{_datadir}/%{name}/themes
cp -pr user/* $RPM_BUILD_ROOT%{_datadir}/%{name}/user
cp -pr locale/* $RPM_BUILD_ROOT%{_datadir}/%{name}/locale
install -p -D -m0644 *.php $RPM_BUILD_ROOT%{_datadir}/%{name}/
install -p -D -m0644 config.php $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/
rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/config.php
install -p -D -m0644 %{name}.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/
install -p -D -m0644 *.html $RPM_BUILD_ROOT%{_datadir}/%{name}/
install -p -D -m0644 *.js $RPM_BUILD_ROOT%{_datadir}/%{name}/
install -p -D -m0644 *.css $RPM_BUILD_ROOT%{_datadir}/%{name}/
pushd $RPM_BUILD_ROOT%{_datadir}/%{name}
ln -fs ../../..%{_sysconfdir}/%{name}/config.php .
popd

for lang in locale/*; do
	mkdir -p $RPM_BUILD_ROOT%{_datadir}/locale/`basename $lang`/LC_MESSAGES
	mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/locale/`basename $lang`/LC_MESSAGES
	if [ -f $lang/LC_MESSAGES/*.mo ]; then
		for file in $lang/LC_MESSAGES/*.mo; do
			rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/locale/`basename $lang`/LC_MESSAGES/`basename $file`
			cp -a $file $RPM_BUILD_ROOT%{_datadir}/locale/`basename $lang`/LC_MESSAGES/%{name}.mo
			pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/locale/`basename $lang`/LC_MESSAGES
			ln -fs ../../../../locale/`basename $lang`/LC_MESSAGES/%{name}.mo messages.mo
			popd
		done
	fi
done
%find_lang %{name}

%clean
rm -rf $RPM_BUILD_ROOT

%files -f %{name}.lang
%defattr(-,root,root,-)
%doc gpl.html %{name}-README.fedora contrib PORTERS INTERNALS CONTRIBUTORS INSTALL-POSTGRESQL TODO TRANSLATIONS TRIGGERS UPGRADE sql
%dir %{_datadir}/%{name}
%dir %{_sysconfdir}/%{name}
%attr(0640,root,apache) %config(noreplace) %{_sysconfdir}/%{name}/*
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
%attr(0700,apache,apache) %dir %{_localstatedir}/cache/%{name}
%{_datadir}/%{name}/*

%changelog
* Mon Aug 24 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.92-3
- Remove unnessesary dependency on /sbin/service

* Sun Aug 23 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.92-2
- Use Fedora bundled php-PHPMailer
- Fix License tag
- Remove apache restart
- Remove in spec password generation

* Fri Aug 14 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.92-1
- Update to version 4.92

* Mon Jul 27 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.91-3.a
- Use Packaged HTML_Template_PHPLIB

* Thu Jul 23 2009 Andrew Colin Kissa <andrew at topdog.za.net> - 4.91-2.a
- Made changes to use fedora supplied libraries

* Sat Jul 11 2009 Andrew Colin Kissa <andrew at topdog-software.com> - 4.91-1.a
- Initial packaging


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/ipplan/EL-5/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- .cvsignore	24 Aug 2009 19:40:13 -0000	1.1
+++ .cvsignore	25 Aug 2009 08:29:55 -0000	1.2
@@ -0,0 +1 @@
+ipplan-4.92.tar.gz


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/ipplan/EL-5/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- sources	24 Aug 2009 19:40:13 -0000	1.1
+++ sources	25 Aug 2009 08:29:55 -0000	1.2
@@ -0,0 +1 @@
+2540b381744d1891b53b660fffc5ec56  ipplan-4.92.tar.gz




More information about the fedora-extras-commits mailing list