Subj : Re: Login integration To : All From : Ragnarok Date : Sat Mar 03 2007 12:59 am Beta2K wrote: > Ok, I'm trying to use e107 (a php based CMS) and having it pull specific > aspects from SBBS's webserver, namly the messages bases. I'm trying to > come up > with a way of having a single login. I contemplated modifying userdat.c > to add/remove users from a MySQL database as well as user.dat but that > looks like > way too much work. I've thought about doing a export from user.dat to > MySQL once a hour or maybe more, but don't like that idea (want tighter > integration.) > > Anyone got any other ideas, or some encouragement for taking on the more > difficult task of doing a synchronous update of user.dat and MySQL? > > thanks, > > > Beta > --- > ? Synchronet ? Vertrauen ? Home of Synchronet ? telnet://vert.synchro.net you can write a webservice with ssjs scripting or a simple auth service like : load ("sbbsdefs.js"); var usuario; var pass; var entrada; var un; //user number log("Conexion desde:" + client.ip_address + ":" + client.port); writeln ("+OK bbs server"); entrada = truncsp(readln()); if (String(entrada).substr(0,4).toUpperCase() == "USER") { //obterner user y preguntar por password usuario = String(entrada).substr(5).toUpperCase(); entrada = truncsp(readln()); if (String(entrada).substr(0,4).toUpperCase() == "PASS") { //obtener pass y compara pass = String(entrada).substr(5).toUpperCase(); if (checklogin(usuario,pass)) { //login ok writeln ("+OK login ok"); } else { log ("error en el login"); writeln ("-ERR login error"); } } else { //error de comando log("deberia ser PASS"); writeln ("-ERR secuencia invalida"); } } else { // comando invadlido log ("comando invalida no fue USER"); writeln ("-ERR comando invalido"); } function checklogin(user,pass) { un = system.matchuser(truncsp(user)); if (un >0) { log ("usuario encontrado!"); usuario = new User(un); if(usuario.security.password == pass){ log ("password OK"); return true; } else { log ("password error"); return false; } } else { log ("error usuario no encotrando"); return false; }; } this is a pop3-like auth service, you can put it in your service.ini as: [auth] port=9999 MaxclientS=10 options = 0 command=auth.js -- Dock Sud BBS http://bbs.docksud.com.ar telnet://bbs.docksud.com.ar --- þ Synchronet þ Dock Sud BBS TLD 24 HS - www.docksud.com.ar .