switch (phase) {
case 0 : //looping forever email receiving processes
for (int i=0;i<iteration;i++) {
+ int attend;
+
if (pidlst[i]!=(pid_t)0) {
if (prc_checkprocess(pidlst[i])==true)
continue;
}
+ attend=(random()%10)+10;
switch (pidlst[i]=fork()) {
case -1 : //trouble trouble?
pidlst[i]=(pid_t)0;
break;
case 0 :
- (void) rec_getemail((random()%10)+10);
+ (void) rec_getemail(attend);
(void) exit(0); //email receiving task terminated
break;
default :
(void) sig_trapsignal(true,sig_alrm);
break;
case 3 : //doing main tash
- (void) task(5);
+ if (prc_locking(appname,true,5)==true) {
+ (void) task(5);
+ (void) prc_locking(appname,false,1);
+ }
break;
case 4 : //doing main tash
(void) prc_cleantitle();
//version definition
#define VERSION "0.1"
-#define RELEASE "12"
+#define RELEASE "13"
//Public variables
PUBLIC int debug=0; //debug level
if (appname!=(char *)0)
(void) free(appname);
appname=strdup(APPNAME);
- if (rootdir!=(char *)0) {
- (void) free(rootdir);
- status=-1; //Rootdir should be found as NULL
- }
- rootdir=strdup("");
(void) openlog(APPNAME,LOG_PID,LOG_DAEMON);
(void) rou_alert(0,"Starting: %s-%s",APPNAME,rou_getversion());
break;
(void) free(appname);
appname=(char *)0;
}
- if (rootdir!=(char *)0) {
- (void) free(rootdir);
- rootdir=(char *)0;
- }
break;
default :
(void) fprintf(stderr,"Calling %s with wrong mode='%d' (Bug?!):",