Masanobu Yasui authored on 2008/12/09 02:56:06
Showing 1 changed files
... ...
@@ -305,18 +305,53 @@ static void msend_req_send_stat(int s, mfile *m)
305 305
   lprintf(9,"%s: STAT %s\n", __func__, m->fn);
306 306
   if(m->dryrun){
307 307
     if(ack_check(m, MAKUO_RECVSTATE_UPDATE) != 1){
308
-      cprintf(5, m->comm, "(%s)\r\n", m->fn);
309
-    }else{
310
-      cprintf(0, m->comm, "[%s]\r\n", m->fn);
311 308
       if(!m->sendto){
312 309
         for(t=members;t;t=t->next){
313
-          r = get_hoststate(t, m);
310
+          if(r = get_hoststate(t, m)){
311
+            if(*r == MAKUO_RECVSTATE_UPDATE)
312
+              cprintf(3, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
313
+            if(*r == MAKUO_RECVSTATE_SKIP)
314
+              cprintf(3, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
315
+            if(*r == MAKUO_RECVSTATE_READONLY)
316
+              cprintf(3, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
317
+          }
318
+        }
319
+      }else{
320
+        t = member_get(&(m->addr.sin_addr));
321
+        if(r = get_hoststate(t, m)){
314 322
           if(*r == MAKUO_RECVSTATE_UPDATE)
315
-            cprintf(1, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
323
+            cprintf(3, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
316 324
           if(*r == MAKUO_RECVSTATE_SKIP)
317
-            cprintf(2, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
325
+            cprintf(3, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
318 326
           if(*r == MAKUO_RECVSTATE_READONLY)
319
-            cprintf(2, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
327
+            cprintf(3, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
328
+        }
329
+      }
330
+    }else{
331
+      if(m->comm){
332
+        if(m->comm->loglevel == 0){
333
+          cprintf(0, m->comm, "[%s]\r\n", m->fn);
334
+        }else{
335
+          if(!m->sendto){
336
+            for(t=members;t;t=t->next){
337
+              r = get_hoststate(t, m);
338
+              if(*r == MAKUO_RECVSTATE_UPDATE)
339
+                cprintf(1, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
340
+              if(*r == MAKUO_RECVSTATE_SKIP)
341
+                cprintf(2, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
342
+              if(*r == MAKUO_RECVSTATE_READONLY)
343
+                cprintf(2, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
344
+            }
345
+          }else{
346
+            t = member_get(&(m->addr.sin_addr));
347
+            r = get_hoststate(t, m);
348
+            if(*r == MAKUO_RECVSTATE_UPDATE)
349
+              cprintf(1, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
350
+            if(*r == MAKUO_RECVSTATE_SKIP)
351
+              cprintf(2, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
352
+            if(*r == MAKUO_RECVSTATE_READONLY)
353
+              cprintf(2, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
354
+          }
320 355
         }
321 356
       }
322 357
     }
... ...
@@ -325,21 +360,58 @@ static void msend_req_send_stat(int s, mfile *m)
325 325
     m->mdata.head.nstate = MAKUO_SENDSTATE_CLOSE;
326 326
   }else{
327 327
     if(ack_check(m, MAKUO_RECVSTATE_UPDATE) != 1){
328
-      cprintf(5, m->comm, "(%s)\r\n", m->fn);
329
-      m->initstate = 1;
330
-      m->mdata.head.nstate = MAKUO_SENDSTATE_CLOSE;
331
-    }else{
332
-      lprintf(1, "%s: update %s\n", __func__, m->fn);
333
-      cprintf(1, m->comm, "[%s]\r\n", m->fn);
334 328
       if(!m->sendto){
335 329
         for(t=members;t;t=t->next){
336
-          r = get_hoststate(t, m);
330
+          if(r = get_hoststate(t, m)){
331
+            if(*r == MAKUO_RECVSTATE_UPDATE)
332
+              cprintf(3, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
333
+            if(*r == MAKUO_RECVSTATE_SKIP)
334
+              cprintf(3, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
335
+            if(*r == MAKUO_RECVSTATE_READONLY)
336
+              cprintf(3, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
337
+          }
338
+        }
339
+      }else{
340
+        t = member_get(&(m->addr.sin_addr));
341
+        if(r = get_hoststate(t, m)){
337 342
           if(*r == MAKUO_RECVSTATE_UPDATE)
338
-            cprintf(2, m->comm, "update %s:%s\r\n", t->hostname, m->fn);
343
+            cprintf(3, m->comm, "(dryrun) update %s:%s\r\n", t->hostname, m->fn);
339 344
           if(*r == MAKUO_RECVSTATE_SKIP)
340
-            cprintf(3, m->comm, "skip   %s:%s\r\n", t->hostname, m->fn);
345
+            cprintf(3, m->comm, "(dryrun) skip   %s:%s\r\n", t->hostname, m->fn);
341 346
           if(*r == MAKUO_RECVSTATE_READONLY)
342
-            cprintf(3, m->comm, "skipro %s:%s\r\n", t->hostname, m->fn);
347
+            cprintf(3, m->comm, "(dryrun) skipro %s:%s\r\n", t->hostname, m->fn);
348
+        }
349
+      }
350
+      m->initstate = 1;
351
+      m->mdata.head.nstate = MAKUO_SENDSTATE_CLOSE;
352
+    }else{
353
+      lprintf(1, "%s: update %s\n", __func__, m->fn);
354
+      if(m->comm){
355
+        if(m->comm->loglevel == 0){
356
+          cprintf(0, m->comm, "[%s]\r\n", m->fn);
357
+        }else{
358
+          if(!m->sendto){
359
+            for(t=members;t;t=t->next){
360
+              if(r = get_hoststate(t, m)){
361
+                if(*r == MAKUO_RECVSTATE_UPDATE)
362
+                  cprintf(1, m->comm, "update %s:%s\r\n", t->hostname, m->fn);
363
+                if(*r == MAKUO_RECVSTATE_SKIP)
364
+                  cprintf(2, m->comm, "skip   %s:%s\r\n", t->hostname, m->fn);
365
+                if(*r == MAKUO_RECVSTATE_READONLY)
366
+                  cprintf(2, m->comm, "skipro %s:%s\r\n", t->hostname, m->fn);
367
+              }
368
+            }
369
+          }else{
370
+            t = member_get(&(m->addr.sin_addr));
371
+            if(r = get_hoststate(t, m)){
372
+              if(*r == MAKUO_RECVSTATE_UPDATE)
373
+                cprintf(1, m->comm, "update %s:%s\r\n", t->hostname, m->fn);
374
+              if(*r == MAKUO_RECVSTATE_SKIP)
375
+                cprintf(2, m->comm, "skip   %s:%s\r\n", t->hostname, m->fn);
376
+              if(*r == MAKUO_RECVSTATE_READONLY)
377
+                cprintf(2, m->comm, "skipro %s:%s\r\n", t->hostname, m->fn);
378
+            }
379
+          }
343 380
         }
344 381
       }
345 382
       m->initstate = 1;