diff --git a/src/server/slavefuncs.c b/src/server/slavefuncs.c --- a/src/server/slavefuncs.c +++ b/src/server/slavefuncs.c @@ -477,16 +477,17 @@ int unpackJob(char *outdir, char *pathto } -void prepareJobPaths(int jobnum, int framenum, char *outputExt, char *datadir, char **urltoTar,char **pathtoTar,char **pathtoJobfile,char **urltoOutput,char **pathtoOutput) +void prepareJobPaths(int jobnum, int framenum, char *outputExt, char *datadir, char **urltoTar,char **pathtoTar,char **pathtoJob, char **pathtoJobfile,char **urltoOutput,char **pathtoOutput) { // Variable Preparation char *jobdatapath; _distren_asprintf(&jobdatapath, "job%d", jobnum); - _distren_asprintf(urltoTar, "http://data.distren.org/job%d/job%d.tar.gz", jobnum); // Prepares URL to download from - _distren_asprintf(pathtoTar, "%s/stor/jobdata/job%d.tar.gz", datadir, jobnum); // Prepares destination to save to + _distren_asprintf(urltoTar, "http://data.distren.org/job%d/job%d.tar.gz", jobnum, jobnum); // Prepares URL to download from + _distren_asprintf(pathtoTar, "%s/%s/job%d.tar.gz", datadir, jobdatapath, jobnum); // Prepares destination to save to + _distren_asprintf(pathtoJob, "%s/%s/", datadir, jobdatapath); _distren_asprintf(pathtoJobfile, "%s/%s/job.blend", datadir, jobdatapath ); // Prepares the path to the jobfile _distren_asprintf(urltoOutput, "http://distren.org/slaveUpload.php"); // Prepares the URL where output is posted - _distren_asprintf(pathtoOutput, "%s/job%d/output/job%d-frame%d.%s", datadir, jobnum, jobnum, framenum, outputExt ); + _distren_asprintf(pathtoOutput, "%s/%s/output/job%d-frame%d.%s", datadir, jobdatapath, jobnum, framenum, outputExt ); free(jobdatapath); } @@ -643,6 +644,8 @@ struct _web_memorystruct _web_getrequest /* we're done with libcurl, so clean it up */ curl_global_cleanup(); + if(!strncmp(chunk.memory, "ERROR", 5)) + fprintf(stderr, "Web request returned error!\n"); return chunk; // 0 is OK, 1 is 404 or other error } @@ -659,8 +662,14 @@ void _web_finishframe(int slavekey, char } void _web_startframe(int slavekey, char *slavepass, int jobnum, int framenum){ + char *url; + _distren_asprintf(&url,"http://dev.distren.org/slave/act.php?mode=startframe&slavekey=%d&slavepass=%s&jobnum=%d&framenum=%d", slavekey, slavepass, jobnum, framenum); + struct _web_memorystruct data = _web_getrequest(url); + free(url); - + fprintf(stderr,"Got data: %s\n", data.memory); + if(data.memory) + free(data.memory); } int _web_getwork(int slavekey, char *slavepass, int *jobnum, int *framenum){