diff --git a/src/server/slavefuncs.c b/src/server/slavefuncs.c --- a/src/server/slavefuncs.c +++ b/src/server/slavefuncs.c @@ -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; + } + } +} +