function SAMBA_PROXY() { if (function_exists("WriteToSyslogMail")) { WriteToSyslogMail("{reconfigure} Samba for proxy commpliance", basename(__FILE__)); } progress_logs(15, "SAMBA_SPECIFIC_PROXY() start... "); $IsAppliance = false; progress_logs(15, "users=new usersMenus(); "); $user = new settings_inc(); $unix = new unix(); $sock = new sockets(); if (!$user->SAMBA_INSTALLED) { progress_logs(16, "{APP_SAMBA}", " Samba, no such software"); return; } if ($user->SQUID_APPLIANCE) { $IsAppliance = true; } if ($user->KASPERSKY_WEB_APPLIANCE) { $IsAppliance = true; } $EnableWebProxyStatsAppliance = $sock->GET_INFO("EnableWebProxyStatsAppliance"); if (!is_numeric($EnableWebProxyStatsAppliance)) { $EnableWebProxyStatsAppliance = 0; } if ($user->WEBSTATS_APPLIANCE) { $EnableWebProxyStatsAppliance = 1; } if ($EnableWebProxyStatsAppliance == 1) { $IsAppliance = true; } if (!$IsAppliance) { progress_logs(16, "{APP_SAMBA}", " Samba,This is not a Proxy appliance, i leave untouched smb.conf"); return; } progress_logs(16, "{APP_SAMBA}", " Samba, it is an appliance..."); $array = unserialize(base64_decode($sock->GET_INFO("KerbAuthInfos"))); if (!isset($array["USE_AUTORID"])) { $array["USE_AUTORID"] = 1; } if (!is_numeric($array["USE_AUTORID"])) { $array["USE_AUTORID"] = 1; } $domainUp = strtoupper($array["WINDOWS_DNS_SUFFIX"]); $domain_lower = strtolower($array["WINDOWS_DNS_SUFFIX"]); $adminpassword = $array["WINDOWS_SERVER_PASS"]; $adminpassword = $unix->shellEscapeChars($adminpassword); $adminname = $array["WINDOWS_SERVER_ADMIN"]; $ad_server = $array["WINDOWS_SERVER_NETBIOSNAME"]; $KerbAuthDisableGroupListing = $sock->GET_INFO("KerbAuthDisableGroupListing"); $KerbAuthDisableNormalizeName = $sock->GET_INFO("KerbAuthDisableNormalizeName"); $KerbAuthMapUntrustedDomain = $sock->GET_INFO("KerbAuthMapUntrustedDomain"); $KerbAuthTrusted = $sock->GET_INFO("KerbAuthTrusted"); if (!is_numeric($KerbAuthDisableGroupListing)) { $KerbAuthDisableGroupListing = 0; } if (!is_numeric($KerbAuthDisableNormalizeName)) { $KerbAuthDisableNormalizeName = 1; } if (!is_numeric($KerbAuthMapUntrustedDomain)) { $KerbAuthMapUntrustedDomain = 1; } if (!is_numeric($KerbAuthTrusted)) { $KerbAuthTrusted = 1; } $workgroup = $array["ADNETBIOSDOMAIN"]; $realm = strtoupper($array["WINDOWS_DNS_SUFFIX"]); $ipaddr = trim($array["ADNETIPADDR"]); progress_logs(16, "{APP_SAMBA}", " Samba, [{$adminname}]: Kdc server ads : {$ad_server} workgroup `{$workgroup}` ipaddr:{$ipaddr}"); $hostname = strtolower(trim($array["WINDOWS_SERVER_NETBIOSNAME"])) . "." . strtolower(trim($array["WINDOWS_DNS_SUFFIX"])); $password_server = $hostname; //if($ipaddr<>null){$password_server=$ipaddr;} if (strpos($password_server, ".") > 0) { $aa = explode(".", $password_server); $password_server = $aa[0]; } $SAMBA_VERSION = SAMBA_VERSION(); $ipaddr = trim($array["ADNETIPADDR"]); if ($ipaddr != null) { $password_server = $ipaddr; } $AS36 = false; if (preg_match("#^3\\.6\\.#", $SAMBA_VERSION)) { $AS36 = true; } if (preg_match("#([0-9]+)\\.([0-9]+)\\.([0-9]+)#", $SAMBA_VERSION, $re)) { $MAJOR = intval($re[1]); $MINOR = intval($re[2]); $REV = intval($re[3]); progress_logs(17, "{APP_SAMBA}", " Samba, V{$MAJOR} {$MINOR} {$REV}"); } $f[] = "[global]"; $smbkerb = new samba_kerb(); $f[] = $smbkerb->buildPart(); @file_put_contents("/etc/samba/smb.conf", @implode("\n", $f)); progress_logs(18, "{APP_SAMBA}", " Samba, [{$adminname}]: SMB.CONF DONE, restarting services"); $net = $unix->find_program("net"); shell_exec("{$net} cache flush"); shell_exec("{$net} cache stabilize"); shell_exec("/usr/share/artica-postfix/bin/artica-install --nsswitch"); $smbcontrol = $unix->find_program("smbcontrol"); if (!is_file($smbcontrol)) { progress_logs(19, "{APP_SAMBA}", " Samba, [{$adminname}]: Restarting Samba..."); shell_exec("/etc/init.d/artica-postfix restart samba"); } else { progress_logs(19, "{APP_SAMBA}", " Samba, [{$adminname}]: Reloading Samba..."); shell_exec("{$smbcontrol} smbd reload-config"); } progress_logs(19, "{APP_SAMBA}", " Samba, [{$adminname}]: Restarting Winbind..."); shell_exec("/etc/init.d/winbind stop"); shell_exec("/etc/init.d/winbind start"); shell_exec($unix->LOCATE_PHP5_BIN() . " /usr/share/artica-postfix/exec.squid.ad.import.php --by=" . basename(__FILE__) . " &"); }
die; } } } if (is_dir("/root/gluster-builder")) { shell_exec("{$rm} -rf /root/gluster-builder"); } create_package(); @mkdir("/root/samba-builder/etc/init.d", 0755, true); if (is_file("{$SOURCE_DIRECTORY2}/packaging/LSB/samba.sh")) { shell_exec("/bin/cp {$SOURCE_DIRECTORY2}/packaging/LSB/samba.sh /root/samba-builder/etc/init.d/samba"); @chmod("/root/samba-builder/etc/init.d/samba", 0755); } else { echo "{$SOURCE_DIRECTORY2}/packaging/LSB/samba.sh no such file"; } $version = SAMBA_VERSION(); if (is_file("/root/ftp-password")) { echo "Uploading sambac-{$Architecture}-{$version}.tar.gz Done...\n"; echo "/root/samba-builder/sambac-{$Architecture}-{$version}.tar.gz is now ready to be uploaded\n"; shell_exec("curl -T /root/samba-builder/sambac-{$Architecture}-{$version}.tar.gz ftp://www.articatech.net/download/ --user " . @file_get_contents("/root/ftp-password")); if (is_file("/root/rebuild-artica")) { shell_exec("{$wget} \"" . @file_get_contents("/root/rebuild-artica") . "\" -O /tmp/rebuild.html"); } } function GLUSTER_VERSION() { $unix = new unix(); $glusterfsd = $unix->find_program("glusterfsd"); exec("{$glusterfsd} -V 2>&1", $results); if (preg_match("#glusterfs\\s+([0-9\\.]+)\\s+built#i", @implode("", $results), $re)) { return $re[1];
function create_package() { $Architecture = Architecture(); $unix = new unix(); $wget = $unix->find_program("wget"); $tar = $unix->find_program("tar"); $rm = $unix->find_program("rm"); $cp = $unix->find_program("cp"); $DebianVersion = DebianVersion(); if ($DebianVersion == 6) { $DebianVersion = null; } else { $DebianVersion = "-debian{$DebianVersion}"; } @mkdir('/root/samba-builder/usr/sbin', 0755, true); @mkdir('/root/samba-builder/usr/bin', 0755, true); @mkdir('/root/samba-builder/usr/lib/samba', 0755, true); @mkdir('/root/samba-builder/usr/lib/samba/vfs', 0755, true); @mkdir('/root/samba-builder/usr/lib/samba/idmap', 0755, true); @mkdir('/root/samba-builder/usr/lib/samba/charset', 0755, true); @mkdir('/root/samba-builder/usr/lib/samba/auth', 0755, true); @mkdir('/root/samba-builder/lib/security', 0755, true); @mkdir('/root/samba-builder/usr/include', 0755, true); @mkdir('/root/samba-builder/usr/lib', 0755, true); @mkdir('/root/samba-builder/lib', 0755, true); @mkdir('/root/samba-builder/usr/include', 0755, true); @mkdir('/root/samba-builder/etc/ctdb/events.d', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/de/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/ar/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/cs/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/da/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/es/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/fi/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/fr/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/hu/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/it/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/ja/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/ko/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/nb/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/nl/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/pl/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/pt_BR/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/ru/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/sv/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/zh_CN/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/share/locale/zh_TW/LC_MESSAGES', 0755, true); @mkdir('/root/samba-builder/usr/bin', 0755, true); @mkdir('/root/samba-builder/usr/lib', 0755, true); @mkdir('/root/samba-builder/usr/lib/php5/20090626+lfs', 0755, true); @mkdir('/root/samba-builder/usr/lib/xapian-omega', 0755, true); @mkdir('/root/samba-builder/usr/share/omega', 0755, true); @mkdir('/root/samba-builder/usr/include/xapian', 0755, true); $f[] = "/usr/sbin/smbd"; $f[] = "/usr/sbin/nmbd"; $f[] = "/usr/sbin/swat"; $f[] = "/usr/sbin/winbindd"; $f[] = "/usr/sbin/msktutil"; $f[] = "/usr/bin/wbinfo"; $f[] = "/usr/bin/smbclient"; $f[] = "/usr/bin/net"; $f[] = "/usr/bin/smbspool"; $f[] = "/usr/bin/testparm"; $f[] = "/usr/bin/smbstatus"; $f[] = "/usr/bin/smbget"; $f[] = "/usr/bin/smbta-util"; $f[] = "/usr/bin/smbcontrol"; $f[] = "/usr/bin/smbtree"; $f[] = "/usr/bin/tdbbackup"; $f[] = "/usr/bin/nmblookup"; $f[] = "/usr/bin/pdbedit"; $f[] = "/usr/bin/tdbdump"; $f[] = "/usr/bin/tdbrestore"; $f[] = "/usr/bin/tdbtool"; $f[] = "/usr/bin/smbpasswd"; $f[] = "/usr/bin/rpcclient"; $f[] = "/usr/bin/smbcacls"; $f[] = "/usr/bin/profiles"; $f[] = "/usr/bin/ntlm_auth"; $f[] = "/usr/bin/sharesec"; $f[] = "/usr/bin/smbcquotas"; $f[] = "/usr/bin/eventlogadm"; $f[] = "/usr/lib/samba/lowcase.dat"; $f[] = "/usr/lib/samba/upcase.dat"; $f[] = "/usr/lib/samba/valid.dat"; $f[] = "/usr/lib/samba/vfs/recycle.so"; $f[] = "/usr/lib/samba/vfs/audit.so"; $f[] = "/usr/lib/samba/vfs/extd_audit.so"; $f[] = "/usr/lib/samba/vfs/full_audit.so"; $f[] = "/usr/lib/samba/vfs/netatalk.so"; $f[] = "/usr/lib/samba/vfs/fake_perms.so"; $f[] = "/usr/lib/samba/vfs/default_quota.so"; $f[] = "/usr/lib/samba/vfs/readonly.so"; $f[] = "/usr/lib/samba/vfs/cap.so"; $f[] = "/usr/lib/samba/vfs/expand_msdfs.so"; $f[] = "/usr/lib/samba/vfs/shadow_copy.so"; $f[] = "/usr/lib/samba/vfs/shadow_copy2.so"; $f[] = "/usr/lib/samba/vfs/xattr_tdb.so"; $f[] = "/usr/lib/samba/vfs/catia.so"; $f[] = "/usr/lib/samba/vfs/streams_xattr.so"; $f[] = "/usr/lib/samba/vfs/streams_depot.so"; $f[] = "/usr/lib/samba/vfs/readahead.so"; $f[] = "/usr/lib/samba/vfs/fileid.so"; $f[] = "/usr/lib/samba/vfs/preopen.so"; $f[] = "/usr/lib/samba/vfs/syncops.so"; $f[] = "/usr/lib/samba/vfs/acl_xattr.so"; $f[] = "/usr/lib/samba/vfs/acl_tdb.so"; $f[] = "/usr/lib/samba/vfs/smb_traffic_analyzer.so"; $f[] = "/usr/lib/samba/vfs/dirsort.so"; $f[] = "/usr/lib/samba/vfs/scannedonly.so"; $f[] = "/usr/lib/samba/vfs/crossrename.so"; $f[] = "/usr/lib/samba/vfs/linux_xfs_sgid.so"; $f[] = "/usr/lib/samba/vfs/time_audit.so"; $f[] = "/usr/lib/samba/idmap/rid.so"; $f[] = "/usr/lib/samba/idmap/autorid.so"; $f[] = "/usr/lib/samba/idmap/ad.so"; $f[] = "/usr/lib/samba/charset/CP850.so"; $f[] = "/usr/lib/samba/charset/CP437.so"; $f[] = "/usr/lib/samba/auth/script.so"; $f[] = "/usr/lib/samba/de.msg"; $f[] = "/usr/lib/samba/en.msg"; $f[] = "/usr/lib/samba/fi.msg"; $f[] = "/usr/lib/samba/fr.msg"; $f[] = "/usr/lib/samba/it.msg"; $f[] = "/usr/lib/samba/ja.msg"; $f[] = "/usr/lib/samba/nl.msg"; $f[] = "/usr/lib/samba/pl.msg"; $f[] = "/usr/lib/samba/ru.msg"; $f[] = "/usr/lib/samba/tr.msg"; $f[] = "/lib/security/pam_smbpass.so"; $f[] = "/lib/security/pam_winbind.so"; $f[] = "/usr/lib/libtalloc.so.2.0.5"; $f[] = "/usr/lib/libtalloc.a"; $f[] = "/usr/include/talloc.h"; $f[] = "/usr/lib/libtdb.so.1.2.9"; $f[] = "/usr/lib/libtdb.a"; $f[] = "/usr/include/tdb.h"; $f[] = "/usr/lib/libwbclient.so.0"; $f[] = "/usr/lib/libwbclient.a"; $f[] = "/usr/include/wbclient.h"; $f[] = "/usr/lib/libnetapi.so.0"; $f[] = "/usr/lib/libnetapi.a"; $f[] = "/usr/include/netapi.h"; $f[] = "/usr/lib/libsmbclient.so.0"; $f[] = "/usr/lib/libsmbclient.a"; $f[] = "/usr/include/libsmbclient.h"; $f[] = "/usr/lib/libsmbsharemodes.so.0"; $f[] = "/usr/lib/libsmbsharemodes.a"; $f[] = "/usr/include/smb_share_modes.h"; $f[] = "/usr/share/locale/de/LC_MESSAGES/net.mo"; $f[] = "/usr/share/locale/ar/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/cs/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/da/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/de/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/es/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/fi/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/fr/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/hu/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/it/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/ja/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/ko/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/nb/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/nl/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/pl/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/pt_BR/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/ru/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/sv/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/zh_CN/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/share/locale/zh_TW/LC_MESSAGES/pam_winbind.mo"; $f[] = "/usr/lib/libnetapi.a"; $f[] = "/usr/lib/libnetapi.so.0"; $f[] = "/usr/lib/libsmbclient.a"; $f[] = "/usr/lib/libsmbclient.so.0"; $f[] = "/usr/lib/libsmbsharemodes.a"; $f[] = "/usr/lib/libsmbsharemodes.so.0"; $f[] = "/usr/lib/libtalloc.a"; $f[] = "/usr/lib/libtalloc.so.2.0.5"; $f[] = "/usr/lib/libtalloc.so.2"; $f[] = "/usr/lib/libtdb.a"; $f[] = "/usr/lib/libtdb.so.1.2.9"; $f[] = "/usr/lib/libtdb.so.1"; $f[] = "/usr/lib/libcups.so.2"; $f[] = "/usr/lib/libavahi-client.so.3"; $f[] = "/usr/lib/libavahi-client.so.3.2.7"; $f[] = "/usr/lib/libwbclient.so.0"; $f[] = "/lib/libnss_winbind.so"; $f[] = "/lib/libnss_wins.so"; $f[] = "/usr/bin/ctdb"; $f[] = "/usr/bin/smnotify"; $f[] = "/usr/bin/ping_pong"; $f[] = "/usr/bin/ctdb_diagnostics"; $f[] = "/usr/bin/onnode"; $f[] = "/usr/include/ctdb.h"; $f[] = "/usr/include/ctdb_private.h"; $f[] = "/usr/sbin/ctdbd"; $f[] = "/usr/share/locale/cs/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/da/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/de/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/eo/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/es/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/fi/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/fr/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/ga/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/gl/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/hu/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/id/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/is/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/it/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/ja/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/ko/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/lv/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/nb/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/nl/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/pl/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/pt/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/ro/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/ru/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/sk/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/sl/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/sv/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/th/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/tr/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/uk/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/vi/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/wa/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/zh_TW/LC_MESSAGES/popt.mo"; $f[] = "/usr/share/locale/zh_CN/LC_MESSAGES/popt.mo"; $f[] = "/usr/lib/libpopt.la"; $f[] = "/usr/lib/libpopt.so.0.0.0"; $f[] = "/usr/lib/libpopt.so.0"; $f[] = "/usr/lib/libpopt.so"; $f[] = "/usr/include/popt.h"; $f[] = "/usr/lib/libxapian.la"; $f[] = "/usr/lib/libxapian.so"; $f[] = "/usr/lib/libxapian.a"; $f[] = "/usr/lib/libxapian.so.22.5.0 "; $f[] = "/usr/lib/libxapian.so.22"; $f[] = "/usr/lib/libxapian.so.22.6.3"; $f[] = "/usr/lib/xapian-omega/bin/omega"; $f[] = "/usr/bin/quartzcheck"; $f[] = "/usr/bin/quartzcheck"; $f[] = "/usr/bin/quartzcompact"; $f[] = "/usr/bin/quartzcompact"; $f[] = "/usr/bin/quartzdump"; $f[] = "/usr/bin/xapian-check"; $f[] = "/usr/bin/xapian-compact"; $f[] = "/usr/bin/xapian-inspect"; $f[] = "/usr/bin/xapian-progsrv"; $f[] = "/usr/bin/xapian-tcpsrv"; $f[] = "/usr/bin/copydatabase"; $f[] = "/usr/bin/delve"; $f[] = "/usr/bin/quest"; $f[] = "/usr/bin/simpleexpand"; $f[] = "/usr/bin/simpleindex"; $f[] = "/usr/bin/simplesearch"; $f[] = "/usr/bin/xapian-config"; $f[] = "/usr/include/xapian.h"; $f[] = "/usr/share/php5/xapian.php"; $f[] = "/usr/lib/php5/20090626+lfs/xapian.so"; $f[] = "/usr/lib/php5/20090626/xapian.so"; $f[] = "/usr/lib/php5/20090626+lfs/xapian.la"; $f[] = "/usr/lib/php5/20090626/xapian.la"; $f[] = "/usr/bin/xapian-check"; $f[] = "/usr/bin/xapian-compact"; $f[] = "/usr/bin/xapian-inspect"; $f[] = "/usr/bin/xapian-replicate"; $f[] = "/usr/bin/xapian-replicate-server"; $f[] = "/usr/bin/xapian-chert-update"; $f[] = "/usr/bin/xapian-progsrv"; $f[] = "/usr/bin/xapian-tcpsrv"; $f[] = "/usr/bin/dbi2omega "; $f[] = "/usr/bin/htdig2omega "; $f[] = "/usr/bin/mbox2omega"; $f[] = "/usr/bin/omindex"; $f[] = "/usr/bin/scriptindex"; $f[] = "/usr/bindbi2omega"; $f[] = "/usr/binhtdig2omega"; $f[] = "/usr/binmbox2omega"; while (list($num, $ligne) = each($f)) { if (!is_file($ligne)) { echo "{$ligne} no such file\n"; continue; } $dir = dirname($ligne); echo "Installing {$ligne} in /root/samba-builder{$dir}/\n"; if (!is_dir("/root/samba-builder{$dir}")) { @mkdir("/root/samba-builder{$dir}", 0755, true); } shell_exec("/bin/cp -fd {$ligne} /root/samba-builder{$dir}/"); } shell_exec("/bin/cp -rfd /usr/lib/samba/* /root/samba-builder/usr/lib/samba/"); shell_exec("/bin/cp -rfd /etc/ctdb/* /root/samba-builder/etc/ctdb/"); shell_exec("/bin/cp -rfd /usr/lib/xapian-omega/* /root/samba-builder/usr/lib/xapian-omega/"); shell_exec("/bin/cp -rfd /usr/share/omega/* /root/samba-builder/usr/share/omega/"); echo "Creating package done....\n"; if (is_dir("/root/3/samba-3.6.22")) { $SOURCESOURCE_DIRECTORY = "/root/3/samba-3.6.22"; } if (is_file("{$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_wins.so")) { echo "Copy {$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_wins.so\n"; @copy("{$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_wins.so", "/lib/libnss_wins.so"); } if (is_file("{$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_winbind.so")) { echo "Copy {$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_winbind.so\n"; @copy("{$SOURCESOURCE_DIRECTORY}/nsswitch/libnss_winbind.so", "/lib/libnss_winbind.so"); } if ($Architecture == 64) { $Architecture = "x64"; } if ($Architecture == 32) { $Architecture = "i386"; } @mkdir("/root/samba-builder/etc/init.d", 0755, true); if (is_file("{$SOURCESOURCE_DIRECTORY}/packaging/LSB/samba.sh")) { shell_exec("/bin/cp {$SOURCESOURCE_DIRECTORY}/packaging/LSB/samba.sh /root/samba-builder/etc/init.d/samba"); @chmod("/root/samba-builder/etc/init.d/samba", 0755); } else { echo "{$SOURCESOURCE_DIRECTORY}/packaging/LSB/samba.sh no such file"; } $version = SAMBA_VERSION(); echo "Building package Arch:{$Architecture} Version:{$version} {$DebianVersion}\n"; @chdir("/root/samba-builder"); if (is_file("/root/samba-builder/sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz")) { @unlink("/root/samba-builder/sambac-{$Architecture}-{$version}.tar.gz"); } echo "Compressing sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz\n"; shell_exec("{$tar} -czf sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz *"); echo "Compressing /root/samba-builder/sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz Done...\n"; if (is_file("/root/ftp-password")) { echo "Uploading /root/samba-builder/sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz Done...\n"; echo "/root/samba-builder/sambac-{$Architecture}{$DebianVersion}-{$version}.tar.gz is now ready to be uploaded\n"; if ($DebianVersion == null) { shell_exec("curl -T /root/samba-builder/sambac{$DebianVersion}-{$Architecture}-{$version}.tar.gz ftp://www.articatech.net/download/ --user " . @file_get_contents("/root/ftp-password")); if (is_file("/root/rebuild-artica")) { shell_exec("{$wget} \"" . @file_get_contents("/root/rebuild-artica") . "\" -O /tmp/rebuild.html"); } } } }
exit; } if (isset($_GET["wbinfomoinst"])) { wbinfo_checksecret(); exit; } if (isset($_GET["wbinfomoinsa"])) { wbinfo_authenticate(); exit; } if (isset($_GET["wbinfomoinsd"])) { wbinfo_domain_info(); exit; } if (isset($_GET["fullversion"])) { SAMBA_VERSION(); exit; } if (isset($_GET["build-homes"])) { build_homes(); exit; } if (isset($_GET["wbinfo-m-verb"])) { wbinfo_alldomains_verb(); exit; } if (isset($_GET["dsgetdcname"])) { dsgetdcname(); exit; } if (isset($_GET["dcinfo"])) {