libadmin: read returns an ssize_t, not a size_t
[openafs.git] / src / libadmin / bos / afs_bosAdmin.c
index 820a4b3..cbcf1df 100644 (file)
@@ -9,79 +9,21 @@
 
 #include <afsconfig.h>
 #include <afs/param.h>
+#include <afs/stds.h>
 
-RCSID
-    ("$Header$");
+#include <roken.h>
 
-#include <stdio.h>
-#include <afs/stds.h>
-#include "afs_bosAdmin.h"
-#include "../adminutil/afs_AdminInternal.h"
+#include <rx/rx.h>
+#include <rx/rxstat.h>
 #include <afs/afs_AdminErrors.h>
 #include <afs/afs_utilAdmin.h>
 #include <afs/bosint.h>
 #include <afs/bnode.h>
 #include <afs/ktime.h>
 #include <afs/dirpath.h>
-#include <fcntl.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <stdlib.h>
-#ifdef AFS_NT40_ENV
-#include <io.h>
-#else
-#include <unistd.h>
-#endif
-
-#ifdef HAVE_STRING_H
-#include <string.h>
-#else
-#ifdef HAVE_STRINGS_H
-#include <strings.h>
-#endif
-#endif
-
-
 
-/*
- * Prototypes for functions that don't exist in any header files
- */
-
-extern int BOZO_AddCellHost();
-extern int BOZO_AddKey();
-extern int BOZO_AddSUser();
-extern int BOZO_CreateBnode();
-extern int BOZO_DeleteBnode();
-extern int BOZO_DeleteCellHost();
-extern int BOZO_DeleteKey();
-extern int BOZO_DeleteSUser();
-extern int BOZO_EnumerateInstance();
-extern int BOZO_Exec();
-extern int BOZO_GetCellHost();
-extern int BOZO_GetCellName();
-extern int BOZO_GetDates();
-extern int BOZO_GetInstanceInfo();
-extern int BOZO_GetInstanceParm();
-extern int BOZO_GetInstanceParm();
-extern int BOZO_GetRestartTime();
-extern int BOZO_GetStatus();
-extern int BOZO_ListSUsers();
-extern int BOZO_ListKeys();
-extern int BOZO_Prune();
-extern int BOZO_ReBozo();
-extern int BOZO_Restart();
-extern int BOZO_RestartAll();
-extern int BOZO_SetCellName();
-extern int BOZO_SetNoAuthFlag();
-extern int BOZO_SetRestartTime();
-extern int BOZO_SetStatus(struct rx_connection *, char *, afs_int32);
-extern int BOZO_SetTStatus(struct rx_connection *, char *, afs_int32);
-extern int BOZO_ShutdownAll();
-extern int BOZO_StartupAll();
-extern int BOZO_UnInstall();
-extern int BOZO_WaitAll();
-extern int StartBOZO_GetLog();
-extern int StartBOZO_Install();
+#include "afs_bosAdmin.h"
+#include "../adminutil/afs_AdminInternal.h"
 
 typedef struct bos_server {
     int begin_magic;
@@ -371,9 +313,9 @@ bos_ServerClose(const void *serverHandle, afs_status_p st)
 static char *processTypes[] = { "simple", "fs", "cron", 0 };
 
 int ADMINAPI
-bos_ProcessCreate(const void *serverHandle, const char *processName,
-                 bos_ProcessType_t processType, const char *process,
-                 const char *cronTime, const char *notifier, afs_status_p st)
+bos_ProcessCreate(const void *serverHandle, char *processName,
+                 bos_ProcessType_t processType, char *process,
+                 char *cronTime, char *notifier, afs_status_p st)
 {
     int rc = 0;
     afs_status_t tst = 0;
@@ -451,9 +393,9 @@ bos_ProcessCreate(const void *serverHandle, const char *processName,
  */
 
 int ADMINAPI
-bos_FSProcessCreate(const void *serverHandle, const char *processName,
-                   const char *fileserverPath, const char *volserverPath,
-                   const char *salvagerPath, const char *notifier,
+bos_FSProcessCreate(const void *serverHandle, char *processName,
+                   char *fileserverPath, char *volserverPath,
+                   char *salvagerPath, char *notifier,
                    afs_status_p st)
 {
     int rc = 0;
@@ -520,7 +462,7 @@ bos_FSProcessCreate(const void *serverHandle, const char *processName,
  */
 
 int ADMINAPI
-bos_ProcessDelete(const void *serverHandle, const char *processName,
+bos_ProcessDelete(const void *serverHandle, char *processName,
                  afs_status_p st)
 {
     int rc = 0;
@@ -576,7 +518,7 @@ bos_ProcessDelete(const void *serverHandle, const char *processName,
 
 int ADMINAPI
 bos_ProcessExecutionStateGet(const void *serverHandle,
-                            const char *processName,
+                            char *processName,
                             bos_ProcessExecutionState_p processStatusP,
                             char *auxiliaryProcessStatus, afs_status_p st)
 {
@@ -648,7 +590,7 @@ bos_ProcessExecutionStateGet(const void *serverHandle,
 static int
 SetExecutionState(const void *serverHandle, const char *processName,
                  const bos_ProcessExecutionState_t processStatus,
-                 int (*func) (struct rx_connection *, const char *,
+                 int (*func) (struct rx_connection *, char *,
                               afs_int32), afs_status_p st)
 {
     int rc = 0;
@@ -673,7 +615,7 @@ SetExecutionState(const void *serverHandle, const char *processName,
 
     state = (afs_int32) processStatus;
 
-    tst = func(b_handle->server, processName, state);
+    tst = func(b_handle->server, (char *)processName, state);
 
     if (tst == 0) {
        rc = 1;
@@ -710,7 +652,7 @@ SetExecutionState(const void *serverHandle, const char *processName,
 int ADMINAPI
 bos_ProcessExecutionStateSet(const void *serverHandle,
                             const char *processName,
-                            bos_ProcessExecutionState_t processStatus,
+                            const bos_ProcessExecutionState_t processStatus,
                             afs_status_p st)
 {
     return SetExecutionState(serverHandle, processName, processStatus,
@@ -740,7 +682,7 @@ bos_ProcessExecutionStateSet(const void *serverHandle,
 
 int ADMINAPI
 bos_ProcessExecutionStateSetTemporary(const void *serverHandle,
-                                     const char *processName,
+                                     char *processName,
                                      bos_ProcessExecutionState_t
                                      processStatus, afs_status_p st)
 {
@@ -988,7 +930,7 @@ bos_ProcessNameGetDone(const void *iterationId, afs_status_p st)
  */
 
 int ADMINAPI
-bos_ProcessInfoGet(const void *serverHandle, const char *processName,
+bos_ProcessInfoGet(const void *serverHandle, char *processName,
                   bos_ProcessType_p processTypeP,
                   bos_ProcessInfo_p processInfoP, afs_status_p st)
 {
@@ -1340,7 +1282,8 @@ bos_ProcessNotifierGet(const void *serverHandle, const char *processName,
        goto fail_bos_ProcessNotifierGet;
     }
 
-    tst = BOZO_GetInstanceParm(b_handle->server, processName, 999, &notifier);
+    tst = BOZO_GetInstanceParm(b_handle->server, (char *)processName,
+                              999, &notifier);
 
     if (tst == 0) {
        rc = 1;
@@ -1390,7 +1333,7 @@ bos_ProcessRestart(const void *serverHandle, const char *processName,
        goto fail_bos_ProcessRestart;
     }
 
-    tst = BOZO_Restart(b_handle->server, processName);
+    tst = BOZO_Restart(b_handle->server, (char *)processName);
 
     if (tst == 0) {
        rc = 1;
@@ -1670,7 +1613,7 @@ bos_AdminCreate(const void *serverHandle, const char *adminName,
        goto fail_bos_AdminCreate;
     }
 
-    tst = BOZO_AddSUser(b_handle->server, adminName);
+    tst = BOZO_AddSUser(b_handle->server, (char *)adminName);
 
     if (tst == 0) {
        rc = 1;
@@ -1720,7 +1663,7 @@ bos_AdminDelete(const void *serverHandle, const char *adminName,
        goto fail_bos_AdminDelete;
     }
 
-    tst = BOZO_DeleteSUser(b_handle->server, adminName);
+    tst = BOZO_DeleteSUser(b_handle->server, (char *)adminName);
 
     if (tst == 0) {
        rc = 1;
@@ -1989,7 +1932,7 @@ bos_KeyCreate(const void *serverHandle, int keyVersionNumber,
        goto fail_bos_KeyCreate;
     }
 
-    tst = BOZO_AddKey(b_handle->server_encrypt, keyVersionNumber, key);
+    tst = BOZO_AddKey(b_handle->server_encrypt, keyVersionNumber, kas_to_bozoptr(key));
 
     if (tst == 0) {
        rc = 1;
@@ -2068,7 +2011,7 @@ GetKeyRPC(void *rpc_specific, int slot, int *last_item,
 
     tst =
        BOZO_ListKeys(key->server, key->next++,
-                     &key->key[slot].keyVersionNumber, &key->key[slot].key,
+                     &key->key[slot].keyVersionNumber, kas_to_bozoptr(&key->key[slot].key),
                      &keyInfo);
 
 
@@ -2301,7 +2244,7 @@ bos_CellSet(const void *serverHandle, const char *cellName, afs_status_p st)
        goto fail_bos_CellSet;
     }
 
-    tst = BOZO_SetCellName(b_handle->server, cellName);
+    tst = BOZO_SetCellName(b_handle->server, (char *)cellName);
 
     if (tst == 0) {
        rc = 1;
@@ -2398,7 +2341,7 @@ bos_HostCreate(const void *serverHandle, const char *hostName,
        goto fail_bos_HostCreate;
     }
 
-    tst = BOZO_AddCellHost(b_handle->server, hostName);
+    tst = BOZO_AddCellHost(b_handle->server, (char *)hostName);
 
     if (tst == 0) {
        rc = 1;
@@ -2447,7 +2390,7 @@ bos_HostDelete(const void *serverHandle, const char *hostName,
        goto fail_bos_HostDelete;
     }
 
-    tst = BOZO_DeleteCellHost(b_handle->server, hostName);
+    tst = BOZO_DeleteCellHost(b_handle->server, (char *)hostName);
 
     if (tst == 0) {
        rc = 1;
@@ -2748,7 +2691,7 @@ bos_ExecutableCreate(const void *serverHandle, const char *sourceFile,
     tcall = rx_NewCall(b_handle->server);
 
     tst =
-       StartBOZO_Install(tcall, destFile, estat.st_size,
+       StartBOZO_Install(tcall, (char *)destFile, estat.st_size,
                          (afs_int32) estat.st_mode, estat.st_mtime);
 
     if (tst) {
@@ -2762,7 +2705,7 @@ bos_ExecutableCreate(const void *serverHandle, const char *sourceFile,
 
     while (1) {
        char tbuffer[512];
-       size_t len;
+       ssize_t len;
        len = read(fd, tbuffer, sizeof(tbuffer));
        if (len < 0) {
            tst = ADMBOSCANTREADSOURCEFILE;
@@ -2835,7 +2778,7 @@ bos_ExecutableRevert(const void *serverHandle, const char *execFile,
        goto fail_bos_ExecutableRevert;
     }
 
-    tst = BOZO_UnInstall(b_handle->server, execFile);
+    tst = BOZO_UnInstall(b_handle->server, (char *)execFile);
 
     if (tst == 0) {
        rc = 1;
@@ -2872,8 +2815,8 @@ bos_ExecutableRevert(const void *serverHandle, const char *execFile,
 
 int ADMINAPI
 bos_ExecutableTimestampGet(const void *serverHandle, const char *execFile,
-                          unsigned long *newTime, unsigned long *oldTime,
-                          unsigned long *bakTime, afs_status_p st)
+                          afs_int32 *newTime, afs_int32 *oldTime,
+                          afs_int32 *bakTime, afs_status_p st)
 {
     int rc = 0;
     afs_status_t tst = 0;
@@ -2904,7 +2847,7 @@ bos_ExecutableTimestampGet(const void *serverHandle, const char *execFile,
     }
 
     tst =
-       BOZO_GetDates(b_handle->server, execFile, newTime, bakTime, oldTime);
+       BOZO_GetDates(b_handle->server, (char *)execFile, newTime, bakTime, oldTime);
 
     if (tst == 0) {
        rc = 1;
@@ -3012,7 +2955,7 @@ bos_ExecutableRestartTimeSet(const void *serverHandle, bos_Restart_t type,
     afs_status_t tst = 0;
     bos_server_p b_handle = (bos_server_p) serverHandle;
     afs_int32 restartType = 0;
-    struct ktime restartTime;
+    struct bozo_netKTime restartTime;
 
     if (!isValidServerHandle(b_handle, &tst)) {
        goto fail_bos_ExecutableRestartTimeSet;
@@ -3098,7 +3041,7 @@ bos_ExecutableRestartTimeGet(const void *serverHandle, bos_Restart_t type,
     afs_status_t tst = 0;
     bos_server_p b_handle = (bos_server_p) serverHandle;
     afs_int32 restartType = 0;
-    struct ktime restartTime;
+    struct bozo_netKTime restartTime;
 
     if (!isValidServerHandle(b_handle, &tst)) {
        goto fail_bos_ExecutableRestartTimeGet;
@@ -3202,7 +3145,7 @@ bos_LogGet(const void *serverHandle, const char *log,
 
     tcall = rx_NewCall(b_handle->server);
     have_call = 1;
-    tst = StartBOZO_GetLog(tcall, log);
+    tst = StartBOZO_GetLog(tcall, (char *) log);
 
     if (tst != 0) {
        goto fail_bos_LogGet;
@@ -3343,7 +3286,7 @@ bos_CommandExecute(const void *serverHandle, const char *command,
        goto fail_bos_CommandExecute;
     }
 
-    tst = BOZO_Exec(b_handle->server, command);
+    tst = BOZO_Exec(b_handle->server, (char *) command);
 
     if (tst == 0) {
        rc = 1;