Masanobu Yasui authored on 2009/06/11 04:54:21
Showing 2 changed files
... ...
@@ -237,31 +237,6 @@ void do_send()
237 237
   }
238 238
 }
239 239
 
240
-void do_exechk(mcomm *c){
241
-  int    i;
242
-  mfile *m;
243
-  for(i=0;i<MAX_COMM;i++){
244
-    if(c[i].working){
245
-      if(c[i].isalive){
246
-        if(mtimeout(&(c[i].tv), (uint32_t)1000)){
247
-          cprintf(0, &(c[i]), "alive\n");
248
-          mtimeget(&(c[i].tv));
249
-        }
250
-      }
251
-      if((c[i].cpid == 0) && (c[i].fd[1] == -1)){
252
-        for(m=mftop[MFSEND];m;m=m->next){
253
-          if(m->comm == &c[i]){
254
-            break; /* working */
255
-          }
256
-        }
257
-        if(!m){
258
-          workend(&c[i]);
259
-        }
260
-      }
261
-    }
262
-  }
263
-}
264
-
265 240
 int do_accept(mcomm *c, fd_set *fds)
266 241
 {
267 242
   int i;
... ...
@@ -317,6 +292,31 @@ int do_comexe(mcomm *c, fd_set *fds){
317 317
   return(0);
318 318
 }
319 319
 
320
+void do_exechk(mcomm *c){
321
+  int    i;
322
+  mfile *m;
323
+  for(i=0;i<MAX_COMM;i++){
324
+    if(c[i].working){
325
+      if(c[i].isalive){
326
+        if(mtimeout(&(c[i].tv), (uint32_t)1000)){
327
+          cprintf(0, &(c[i]), "alive\n");
328
+          mtimeget(&(c[i].tv));
329
+        }
330
+      }
331
+      if((c[i].cpid == 0) && (c[i].fd[1] == -1)){
332
+        for(m=mftop[MFSEND];m;m=m->next){
333
+          if(m->comm == &c[i]){
334
+            break; /* working */
335
+          }
336
+        }
337
+        if(!m){
338
+          workend(&c[i]);
339
+        }
340
+      }
341
+    }
342
+  }
343
+}
344
+
320 345
 void mloop()
321 346
 {
322 347
   fd_set rfds;
... ...
@@ -242,7 +242,7 @@ int mexec_scan(mcomm *c, char *fn, mhost *h, int mode, gid_t gid)
242 242
     close(p[1]);
243 243
     c->cpid  = pid;
244 244
     c->fd[1] = p[0];
245
-    lprintf(9, "  %d: open\n", c->no);
245
+    lprintf(9, "%d$ (connect)\n", c->no);
246 246
     return(0);
247 247
   }else{
248 248
     /* child */
... ...
@@ -257,13 +257,13 @@ int mexec_scan(mcomm *c, char *fn, mhost *h, int mode, gid_t gid)
257 257
 int mexec_open(int l, mcomm *c, int n)
258 258
 {
259 259
   if(n){
260
-    lprintf(9, "  %d> %s\n", c->no, c->cmdline[n]);
260
+    lprintf(9, "%d$ %s\n", c->no, c->cmdline[n]);
261 261
     return(0);
262 262
   }
263 263
   if(c->logflag == 0){
264 264
     if(l <= moption.loglevel){
265 265
       lprintf(1, "======= separator =======\n");
266
-      lprintf(1, "%d: open\n", c->no);
266
+      lprintf(1, "%d> [connect]\n", c->no);
267 267
       c->logflag = 1;
268 268
     }
269 269
   }
... ...
@@ -281,12 +281,13 @@ int mexec_close(mcomm *c, int n)
281 281
   if(c->fd[n] != -1){
282 282
     close(c->fd[n]);
283 283
     if(n){
284
-      lprintf(9, "  %d: close\n", c->no);
284
+      lprintf(9, "%d$ (disconnect)\n", c->no);
285 285
     }else{
286 286
       if(c->logflag){
287 287
         lprintf(1, "-------------------------\n");
288
-        lprintf(1, "%d: close\n", c->no);
288
+        lprintf(1, "%d> [disconnect]\n", c->no);
289 289
       }
290
+      lprintf(5, "%s: socket=%d\n", __func__, c->no);
290 291
     }
291 292
   }
292 293
   c->fd[n]  = -1;
... ...
@@ -524,11 +525,12 @@ int mexec_send(mcomm *c, int n, int sync)
524 524
   /*----- chgrp -----*/
525 525
   if((m->dryrun == 0) && (gid != -1)){
526 526
     if(m->fs.st_gid != gid){
527
-      if(lchown(m->fn, -1, gid) == -1){
528
-        cprintf(0, c,   "error: can't chgrp (%s) [%d->%d] %s\n", strerror(errno),  m->fs.st_gid, gid, m->fn);
529
-        lprintf(0, "[error] %s: can't chgrp (%s) [%d->%d] %s\n", __func__, strerror(errno),  m->fs.st_gid, gid, m->fn);
530
-      }else{
527
+      if(!lchown(m->fn, -1, gid)){
531 528
         m->fs.st_gid = gid;
529
+      }else{
530
+        e = errno;
531
+        cprintf(0, c,   "error: can't chgrp (%s) [%d->%d] %s\n", strerror(e),  m->fs.st_gid, gid, m->fn);
532
+        lprintf(0, "[error] %s: can't chgrp (%s) [%d->%d] %s\n", __func__, strerror(e),  m->fs.st_gid, gid, m->fn);
532 533
       }
533 534
     }
534 535
   }