Changeset - 9638840eaba2
[Not reviewed]
default
0 3 0
Ethan Zonca (ethanzonca) - 16 years ago 2010-02-23 00:52:01
e@ethanzonca.com
Added slave test function, slavefunc updates
3 files changed with 69 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/server/slave.c
Show inline comments
 
@@ -63,7 +63,7 @@ int main(int argc, char *argv[])
 

	
 
  char curopt;
 

	
 
  while(((char)-1) != (curopt = getopt(argc, argv, "u:h")))
 
  while(((char)-1) != (curopt = getopt(argc, argv, "u:th")))
 
     {
 
       if(curopt == ':')
 
         {
 
@@ -77,9 +77,14 @@ int main(int argc, char *argv[])
 
         }
 
       else if(curopt == 'h')
 
         {
 
           fprintf(stderr, "Usage: distrenslave [option] \nStarts a distren slave\n\t-u\tset username (run after fresh install)\n\t-h\tshow this help\n");
 
           fprintf(stderr, "Usage: distrenslave [option] \nStarts a distren slave\n\t-u\tset username (run after fresh install)\n\t-t\tEnter test mode\n\t-h\tshow this help\n");
 
           return 2;
 
         }
 
       else if(curopt == 't')
 
         {
 
           slaveTest();
 
           return 0;
 
         }
 
       else if(curopt == 'u')
 
         username = strdup(optarg);
 
         fprintf(stderr, "Putting username \"%s\" in distrenslave.conf\n", username);
src/server/slavefuncs.c
Show inline comments
 
@@ -352,7 +352,7 @@ int downloadTar(char *url, char *destina
 
      // Download the Tar
 
      if( curlget(url, destinationPath) == 0){
 
        fprintf(stderr, "Job data retrieved successfully\n");
 
        free(url);
 
        // free(url); @FIXME: causes doublefree! Curl must free the url?
 
        return 0;
 
      }
 
      else {
 
@@ -479,3 +479,63 @@ int checkUsername(char *username){
 
         return 1;
 
       }
 
}
 

	
 
void slaveTest(){
 
  int command;
 
  int test = 1;
 
  int jobnum = 0;
 
  fprintf(stderr,"Hello!\n");
 
  char tmpString1[100] = "";
 
  char tmpString2[100] = "";
 

	
 
  while(test == 1)
 
   {
 
     fprintf(stderr, "Welcome to DistRenSlave Alpha Interactive Test Mode\n\n");
 
     fprintf(stderr, "\t1 \tTest posting (uploading) data\n");
 
     fprintf(stderr, "\t2 \tTest getting frame from server\n");
 
     fprintf(stderr, "\t3 \tTest data downloading\n");
 
     fprintf(stderr, "\t4 \tTest archive decompression\n");
 
     fprintf(stderr, "\t5 \tQuit\n");
 

	
 
     scanf("%d", &command);
 

	
 
     switch(command)
 
     {
 
     case 1:
 
       fprintf(stderr,"Path to file to upload: ");
 
       scanf("%99s", tmpString1);
 
       fprintf(stderr,"URL to upload to: ");
 
       scanf("%99s", tmpString2);
 
       uploadOutput(tmpString1, tmpString2);
 
       break;
 
     case 2:
 
       fprintf(stderr,"Remotio not implemented yet!\n");
 
       break;
 
     case 3:
 
       fprintf(stderr,"URL to file: ");
 
       scanf("%s", tmpString1);
 
       fprintf(stderr,"Local save path (including filename): ");
 
       scanf("%s", tmpString2);
 
       if(downloadTar(tmpString1, tmpString2))
 
         fprintf(stderr,"Error downloading!\n");
 
       else
 
         fprintf(stderr,"Success!\n");
 
       break;
 
     case 4:
 
       fprintf(stderr,"Jobnum to decompress: ");
 
       scanf("%d", jobnum);
 
       fprintf(stderr,"Path to compressed data: ");
 
       scanf("%d", tmpString2);
 
       unpackJob(tmpString1, jobnum);
 

	
 
       break;
 
     case 5:
 
       test = 0;
 
       break;
 
     default:
 
       fprintf(stderr, "Invalid input, please try again.\n");
 
       break;
 
     }
 
   }
 
}
 

	
src/server/slavefuncs.h
Show inline comments
 
@@ -51,5 +51,6 @@ int uploadOutput(char *pathtoOutput, cha
 
int unpackJob(char *pathtoTar, int jobnum);
 
void prepareJobPaths(int jobnum,char *datadir, char **urltoTar,char **pathtoTar,char **pathtoJobfile,char **urltoOutput,char **pathtoXml);
 
int checkUsername(char *username);
 
void slaveTest();
 

	
 
#endif
0 comments (0 inline, 0 general)