玄箱/Squid

source

configure

> ./configure --prefix=/export/pkg/squid-2.5-14

make

> vi /usr/include/sys/types.h
     32 #ifdef  __USE_BSD
     33 typedef __u_char u_char;
     34 /*typedef __u_short u_short;*/  ←★この行をコメントアウト
     35 typedef __u_int u_int;
     36 typedef __u_long u_long;
> vi src/
    327 static void
    328 storeClientFileRead(store_client * sc)
    329 {
    330     store_off_t sot;       ←★この行を追加
    331     MemObject *mem = sc->entry->mem_obj;
    332     assert(sc->callback != NULL);
    333     assert(!sc->flags.disk_io_pending);
    334     sc->flags.disk_io_pending = 1;
    335     if (mem->swap_hdr_sz == 0) {
    336         storeRead(sc->swapin_sio,
    337             sc->copy_buf,
    338             sc->copy_size,
    339             0,
    340             storeClientReadHeader,
    341             sc);
    342     } else {
    343         if (sc->entry->swap_status == SWAPOUT_WRITING)
    344             assert(storeSwapOutObjectBytesOnDisk(mem) > sc->copy_offset);
    345         sot = sc->copy_offset + mem->swap_hdr_sz; ←★この行を追加
    346         storeRead(sc->swapin_sio,
    347             sc->copy_buf,
    348             sc->copy_size,
    349             sot;                 ←★この行を修正
    350             storeClientReadBody,
    351             sc);
    352     }
    353 }

install

setting



---
update at 2018/03/02 22:04:51

※注:当サイトは特定環境において確認できた事象のみを記述しています。他の環境での動作は一切保証しません。