3 error_reporting(E_ALL
);
5 include_once('../../config.php');
6 include_once('../../libs/nel_message.php');
7 include_once('libs/login_translations.php');
8 include_once('libs/login_service_itf.php');
9 include_once('libs/domain_info.php');
10 include_once('libs/join_shard.php');
12 include_once('libs/r2_login_db.php');
13 include_once('libs/r2_login_logs.php');
14 include_once('libs/r2_login_logincb.php');
15 include_once('libs/r2_login_domain.php');
16 include_once('libs/r2_login_user.php');
17 if (!isset($_GET['cmd']))
18 die (errorMsgBlock(3002));
20 set_error_handler('err_callback');
22 // For error handling, buffer all output
23 ob_start('ob_callback_r2login');
25 $submittedLang = isset($_GET['lg']) ?
$_GET['lg'] : 'unknown';
26 $submittedLang = addslashes(substr($submittedLang, 0, 10));
27 $cmd = isset($_GET['cmd'])?
addslashes(substr($_GET['cmd'], 0, 7)):'';
28 $login = isset($_GET['login'])?
addslashes(substr($_GET['login'], 0, 20)):'';
29 $password = isset($_GET['password'])?
$_GET['password']:'';
30 $clientApplication = isset($_GET['clientApplication'])?
addslashes(substr($_GET['clientApplication'], 0, 20)):'';
33 $RingDb = new LoginDB($DBHost, $RingDBUserName, $RingDBPassword, $DBName);
34 $User = new RingUser($RingDb, $login, $password, $clientApplication, $submittedLang);
38 // client ask for a login salt
43 // client sent is login info
44 $ServerDomain = new ServerDomain($RingDb, $clientApplication);
45 if ($User->checkValidity($password, $ServerDomain)) {
47 if ($AutoCreateRingInfo)
48 $User->createRingInfo($ServerDomain);
50 $LSaddr = explode(":", $ServerDomain->domainInfo
['login_address']);
51 // ask for a session cookie to the login service
52 $Login = new LoginCb();
53 $Login->init($RingDb, $ServerDomain);
56 $Login->connect($LSaddr[0], $LSaddr[1], $res);
57 $Login->login($User->uid
, $_SERVER['REMOTE_ADDR'], $ServerDomain->id
);
59 if (!$Login->waitCallback())
60 die(errorMsgBlock(3003));