General ⇒ Announcements :: Archives ⇒ New drastic changes for 9.1 :: Archived ⇒ Community Forums ⇒ CPG Dragonfly™ CMS
Forum IndexAnnouncements

Archived ⇒ New drastic changes for 9.1


As you all noticed it has been a few months since we released 9.0.6.1 but we realy want to make 9.1 as stable as possible also due to MySQL 5 and PostgreSQL 8.1 which made the very old (cpg/php-nuke) SQL queries pretty useless.

It also came to my attention that IPv6 will take a fast forward in the years to come.
To be on top of this we had to change the current IP functionality to be compliant and sort out new ways to be compatible with the future.

Due to this we are using PHP 5.1's inet functionality to encode and decode the IP addresses.
There's no worry if you're on Windows OS or PHP < 5.1 because i've build two equivelant functions inside a new file (includes/functions/inet.php) which will do the same thing.
This new encoding has benefits but also drawbacks.

1. The encoded IP is either 4 bytes (v4) or 16 bytes (v6) in binary form.

2. Each database field that contains an encoded IP must be "VARCHAR(16) BINARY" in MySQL or "BYTEA(16)" in PostgreSQL and each INSERT and UPDATE must use the new function $db->escape_binary() for correct processing.

3. The current developed IP detection in the new Security class (CVS only) which used ip2long() will become obsolete and we're trying to find out new options for ip range management, detection and flood prevention.

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora 25 / Apache 2.4.27 / MariaDB 10.1.26 / PHP 7.1.10 / Mercurial


Another update:

- includes/classes/extract.inc is obsolete

A new system for archives has been placed which will be far more superior with filetype detection.
dragonflycms.org/cvs/h...rchive.php

How to use this:
<?php # load the archive $archive = archive::load('myfile.tar'); # valid archive ? if (!$archive) { die('Unknown archive'); } # output archive type echo "$archive->filename FileType: {$archive->type}<br />"; # output Table of Contents echo 'ToC:<pre>'; print_r($archive->toc); echo '</pre>'; # Load one of the files from the archive $file = $archive->extract(1); if (!$file) die('no file'); # See $file data echo 'File 1:<pre>'; print_r($file); echo '</pre>'; # Save one of the files to disk $file = $archive->extract(1, './'); if (!$file) die('no file'); # Output the filename where data is stored echo $file['tmp_name'];

Currently supported archives:
- bzip2 (.tar.bz/.tbz)
- gzip (.tar.gz/.tgz)
- zip

NOTE: bzip is not turned ON by default you must recompile PHP or load the php_bz2.so/dll

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora 25 / Apache 2.4.27 / MariaDB 10.1.26 / PHP 7.1.10 / Mercurial


How would this effect the upgrade from tho older version? Do we have to delete out the old ophan file that will not be use?

Lead Theme Designer - WebSiteGuru Designs

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux 2.6.9 / Apache 2.2.6 / MySQL 5.0.27 / PHP 5 / DF Version 9.2.1


the extract.inc wasn't used yet by us and was mainly added for coppermine image archive uploads to allow many images at once thru one upload but, we never made that yet.

After i gave nano a note to build a module installer thru archives instead of cvs he started to use extract.inc and noticed he had to conquer many issues.
So it's more a notification to devs not to use extract.inc if they already did for some of their modules.

So just delete the file and hope nobody used it yet Smile

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Fedora 25 / Apache 2.4.27 / MariaDB 10.1.26 / PHP 7.1.10 / Mercurial


Cool Bean Big grin

Lead Theme Designer - WebSiteGuru Designs

Server specs (Server OS / Apache / MySQL / PHP / DragonflyCMS):
Linux 2.6.9 / Apache 2.2.6 / MySQL 5.0.27 / PHP 5 / DF Version 9.2.1

All times are UTC