summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-03-21 20:33:48 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-03-21 20:33:48 -0500
commit42072e938ee5c08c9582a56d75dbf2b41c946bc4 (patch)
treeebd8ecd92540bccda257e9817c8256f74d39ffb4 /src
parentfdef66d8f2e814f7dcd49cdf1e8199c61f3c6cb0 (diff)
downloadlibtdeldap-42072e938ee5c08c9582a56d75dbf2b41c946bc4.tar.gz
libtdeldap-42072e938ee5c08c9582a56d75dbf2b41c946bc4.zip
Set executable flag on cron scripts
Diffstat (limited to 'src')
-rw-r--r--src/libtdeldap.cpp26
-rw-r--r--src/libtdeldap.h2
2 files changed, 24 insertions, 4 deletions
diff --git a/src/libtdeldap.cpp b/src/libtdeldap.cpp
index 0176bbe..777f20d 100644
--- a/src/libtdeldap.cpp
+++ b/src/libtdeldap.cpp
@@ -2509,6 +2509,15 @@ int LDAPManager::writeClientCronFiles(TQString *errstr) {
stream << CRON_UPDATE_NSS_COMMAND << "\n";
file.close();
+
+ if (chmod(CRON_UPDATE_NSS_FILE, S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH) < 0) {
+ if (errstr) *errstr = TQString("Unable to change permissions of \"%1\"").arg(CRON_UPDATE_NSS_FILE);
+ return -1;
+ }
+ }
+ else {
+ if (errstr) *errstr = TQString("Unable to write file \"%1\"").arg(CRON_UPDATE_NSS_FILE);
+ return -1;
}
if (system(CRON_UPDATE_NSS_COMMAND) < 0) {
@@ -2519,7 +2528,7 @@ int LDAPManager::writeClientCronFiles(TQString *errstr) {
return 0;
}
-void LDAPManager::writePrimaryRealmCertificateUpdateCronFile() {
+int LDAPManager::writePrimaryRealmCertificateUpdateCronFile(TQString *errstr) {
TQFile file(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_FILE);
if (file.open(IO_WriteOnly)) {
TQTextStream stream( &file );
@@ -2531,12 +2540,23 @@ void LDAPManager::writePrimaryRealmCertificateUpdateCronFile() {
stream << CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_COMMAND << "\n";
file.close();
+
+ if (chmod(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_FILE, S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH) < 0) {
+ if (errstr) *errstr = TQString("Unable to change permissions of \"%1\"").arg(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_FILE);
+ return -1;
+ }
+ }
+ else {
+ if (errstr) *errstr = TQString("Unable to write file \"%1\"").arg(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_FILE);
+ return -1;
}
if (system(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_COMMAND) < 0) {
- printf("ERROR: Execution of \"%s\" failed!\n\r", CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_COMMAND);
- return;
+ if (errstr) *errstr = TQString("Execution of \"%s\" failed").arg(CRON_UPDATE_PRIMARY_REALM_CERTIFICATES_COMMAND);
+ return -1;
}
+
+ return 0;
}
LDAPRealmConfigList LDAPManager::readTDERealmList(KSimpleConfig* config, bool disableAllBonds) {
diff --git a/src/libtdeldap.h b/src/libtdeldap.h
index a6d47b4..820b803 100644
--- a/src/libtdeldap.h
+++ b/src/libtdeldap.h
@@ -426,7 +426,7 @@ class LDAPManager : public TQObject {
int getTDECertificate(TQString certificateName, TQString fileName, TQString *errstr=0);
int setPasswordForUser(LDAPUserInfo user, TQString *errstr);
- static void writePrimaryRealmCertificateUpdateCronFile();
+ static int writePrimaryRealmCertificateUpdateCronFile(TQString *errstr=0);
static TQString getMachineFQDN();
static int writeTDERealmList(LDAPRealmConfigList realms, KSimpleConfig* config, TQString *errstr=0);
static LDAPRealmConfigList readTDERealmList(KSimpleConfig* config, bool disableAllBonds=false);