Go Back   FlashFXP Forums > > > >

NeoXed's scripts nxAutoNuke, nxTools, etc.

Reply
 
Thread Tools Rate Thread Display Modes
Old 06-04-2006, 05:50 AM   #1
neoxed
Too much time...
FlashFXP Beta Tester
ioFTPD Scripter
 
Join Date: May 2003
Posts: 1,326
Default Coming Soon: nxMyDB and nxDistDB

nxMyDB:
  • Shares users and groups amongst several ioFTPD sites.
  • Central MySQL Server database.
  • Adjustable connection pool (maintains multiple connections to the database server).
  • Optional compression and encryption (SSL) for network communication.
  • Periodically synchronizes the database with ioFTPD.

nxDistDB:
  • Shares users and groups amongst several ioFTPD sites.
  • No central server (which means no single point of failure if the DB server goes down).
  • Each ioFTPD server maintains a list of updates (transactions).
  • Transaction records are saved in a local SQLite v3 database.
  • These transaction records are shared with other ioFTPD sites.
  • If a server goes down, pending transactions are saved until it comes back online.
  • All network communication is encrypted with MatrixSSL (an SSL library).

Both of these modules are under rapid development. nxMyDB will be finished soon. nxDistDB on the other hand, will take much longer due to its complexity.
neoxed is offline   Reply With Quote
Old 06-04-2006, 06:47 AM   #2
zOrP
Senior Member
 
Join Date: Jan 2005
Posts: 282
Default

neoxed... <3

Thnx for all ur amazing scripts...
this is just what we have been waiting for.

Nice to see someone still keeping ioftpd alive.

so nxMydb will be kinda like iosharedb without all the errors?
zOrP is offline   Reply With Quote
Old 06-04-2006, 01:22 PM   #3
neoxed
Too much time...
FlashFXP Beta Tester
ioFTPD Scripter
 
Join Date: May 2003
Posts: 1,326
Default

I guess nxMyDB and ioShareDb are similar in concept, but their designs are quite different.

nxMyDB uses MySQL's GET_LOCK/RELEASE_LOCK for locking. ioShareDb uses site ID+locked column (which worked poorly, especially when the locked flag wasn't cleared).

nxMyDB uses the MySQL client library directly. ioShareDb uses ODBC.

The list could go on, but you get the idea.
neoxed is offline   Reply With Quote
Old 06-04-2006, 01:39 PM   #4
zOrP
Senior Member
 
Join Date: Jan 2005
Posts: 282
Default

yeye.. very nice.

looking forward to it.

so will there be a workaround of the annyoing 1024 max users bug.
Sometimes when i add new servers to iosharedb, it gives the rather large id's, and it wont add new users.

i know its a ioftpd bug. But iosharedb makes it even worse.. hehe
zOrP is offline   Reply With Quote
Old 06-04-2006, 01:42 PM   #5
neoxed
Too much time...
FlashFXP Beta Tester
ioFTPD Scripter
 
Join Date: May 2003
Posts: 1,326
Default

Nope, there's nothing I can do about that. ioFTPD tells the module which ID to use, so the module doesn't have a choice.
neoxed is offline   Reply With Quote
Old 06-04-2006, 05:01 PM   #6
zOrP
Senior Member
 
Join Date: Jan 2005
Posts: 282
Default

I thought so..

well, only takes a couple of mins to fix manuel anyway..


Keep up the good work..
zOrP is offline   Reply With Quote
Old 06-29-2006, 08:21 PM   #7
neoxed
Too much time...
FlashFXP Beta Tester
ioFTPD Scripter
 
Join Date: May 2003
Posts: 1,326
Default

I will not be able to finish nxMyDB until I have a chance to correct a trivial design flaw in ioFTPD's module system.

These are the forward declarations for callbacks used by ioFTPD's module system:
Code:
INT32 UserCreate(char *userName);
INT   UserRename(char *userName, INT32 userId, char *newName);
INT   UserDelete(char *userName, INT32 userId);
INT   UserLock(USERFILE *userFile);
INT   UserUnlock(USERFILE *userFile);
INT   UserOpen(char *userName, USERFILE *userFile);
INT   UserWrite(USERFILE *userFile);
INT   UserClose(USERFILE *userFile);
The problem is that ioFTPD does not pass a pointer to the USERFILE structure on "Rename" and "Delete" operations. This is a problem because I must be able access the lpInternal member of the USERFILE structure.

It is possible to work around this issue, but I don't want to write an unpleasant hack to cope with this oversight.

Note: This doesn't mean nxMyDB is dead; it's just on hold until I can make the appropriate changes to ioFTPD.
neoxed is offline   Reply With Quote
Old 07-15-2006, 04:18 AM   #8
pion
Senior Member
 
Join Date: Feb 2006
Posts: 138
Question

"It is possible to work around this issue, but I don't want to write an unpleasant hack to cope with this oversight."

So we won't see a working module anytime soon? With a little deluser workaround, and renuser disabled? Pretty please, with sugar on top!
pion is offline   Reply With Quote
Reply

Tags
database, ioftpd, nxdistdb, nxmydb, server

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Forum Jump


All times are GMT -5. The time now is 11:16 AM.

Parts of this site powered by vBulletin Mods & Addons from DragonByte Technologies Ltd. (Details)