1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126
|
<?php
/**
* FusionForge system users integration
*
* Copyright 2004, Christian Bayle
*
* This file is part of FusionForge. FusionForge is free software;
* you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software
* Foundation; either version 2 of the Licence, or (at your option)
* any later version.
*
* FusionForge is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with FusionForge; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
require_once $gfcommon.'include/System.class.php';
class UNIX extends System {
/**
* Value to add to unix_uid to get unix uid
*
* @var constant $UID_ADD
*/
var $UID_ADD = 20000;
/**
* UNIX() - CONSTRUCTOR
*
*/
function UNIX() {
$this->System();
return true;
}
/**
* sysCreateUser() - Create a user
*
* @param int $user_id The user ID of the user to create
* @return bool The return status
*
*/
function sysCreateUser($user_id) {
$user = user_get_object($user_id);
if (!$user) {
return false;
} else {
$res = db_query_params ('UPDATE users SET
unix_uid=user_id+$1,
unix_gid=user_id+$2,
unix_status=$3
WHERE user_id=$4',
array ($this->UID_ADD,
$this->UID_ADD,
'A',
$user_id)) ;
if (!$res) {
$this->setError('Error: Cannot Update User UID/GID: '.db_error());
return false;
}
return true;
}
}
/**
* sysRemoveUser() - Remove a user
*
* @param int $user_id The user ID of the user to remove
* @return bool true on success/false on failure
*
*/
function sysRemoveUser($user_id) {
$res = db_query_params ('UPDATE users SET unix_status=$1 WHERE user_id=$2',
array ('N',
$user_id));
if (!$res) {
$this->setError('Error: Cannot Update User Unix Status: '.db_error());
return false;
}
return true;
}
/*
* Group management functions
*/
/**
* sysCheckGroup() - Check for the existence of a group
*
* @param int $group_id The ID of the group to check
* @return bool true on success/false on error
*
*/
function sysCheckGroup($group_id) {
$group = group_get_object($group_id);
if (!$group){
return false;
}
return true;
}
/**
* sysCreateGroup() - Create a group
*
* @param int $group_id The ID of the group to create
* @return bool true on success/false on error
*
*/
function sysCreateGroup($group_id) {
$group = group_get_object($group_id);
if (!$group) {
return false;
}
return true;
}
}
// Local Variables:
// mode: php
// c-file-style: "bsd"
// End:
|