Question about loading ecap-adapter module on cygwin
Hi.
Recently, I want to run squid with eCAP feature on windows.
Firstly, I compiled eCAP-0.2.0 on cygwin. As a result, I some files as follow.
-------
DDD@DDD-PC /usr/local/lib
$ ls
libecap.a libecap.la pkgconfig
-------
There is only libecap.a. But I still squid-3.3.3-2 with --enable-ecap option successfuly on cygwin.
Then, I compile ecap_adapter_
-------
DDD@DDD-PC /usr/local/lib
$ ls
ecap_adapter_
ecap_adapter_
ecap_adapter_
pkgconfig
-------
Clearly, Squid can't load it. When I configure Squid to load it, I
just these error message.
-------
$ ./squid.exe -N -C -d1
2014/10/20 23:33:26| WARNING cache_mem is larger than total disk cache space!
2014/10/20 23:33:26| Starting Squid Cache version 3.3.3 for i686-pc-cygwin...
2014/10/20 23:33:26| Process ID 3200
2014/10/20 23:33:26| Process Roles: master worker
2014/10/20 23:33:26| With 3072 file descriptors available
2014/10/20 23:33:26| Initializing IP Cache...
2014/10/20 23:33:26| DNS Socket created at [::], FD 4
2014/10/20 23:33:26| DNS Socket created at 0.0.0.0, FD 5
2014/10/20 23:33:26| Adding nameserver 8.8.8.8 from squid.conf
2014/10/20 23:33:26| Logfile: opening log daemon:
2014/10/20 23:33:26| Logfile Daemon: opening log /var/log/
2014/10/20 23:33:26| WARNING: no_suid: setuid(0): (22) Invalid argument
2014/10/20 23:33:26| WARNING: no_suid: setuid(0): (22) Invalid argument
2014/10/20 23:33:27| Unlinkd pipe opened on FD 11
2014/10/20 23:33:27| Store logging disabled
2014/10/20 23:33:27| Swap maxSize 102400 + 262144 KB, estimated 28041 objects
2014/10/20 23:33:27| Target number of buckets: 1402
2014/10/20 23:33:27| Using 8192 Store buckets
2014/10/20 23:33:27| Max Mem size: 262144 KB
2014/10/20 23:33:27| Max Swap size: 102400 KB
2014/10/20 23:33:27| Rebuilding storage in /var/cache/squid (dirty log)
2014/10/20 23:33:27| Using Least Load store dir selection
2014/10/20 23:33:27| Set Current Directory to /var/cache/squid
2014/10/20 23:33:27| Loaded Icons.
2014/10/20 23:33:27| HTCP Disabled.
2014/10/20 23:33:27| Loading Squid module from
'/usr/local/
2014/10/20 23:33:27| FATAL: dying from an unhandled exception: %1 is
not a valid Win32 application.
terminate called after throwing an instance of 'TextException'
what(): %1 is not a valid Win32 application.
Aborted (core dumped)
-------
A .dll is necessary.
So, I recompiled it as .dll by writing compile and link command by myself.
-------
g++ -DHAVE_CONFIG_H -I../src -I/usr/
g++ -shared -o cygmodify.dll -Wl,--out-
-------
But, when I configure squid to load it, it does't work well.
Here are the message than squid output.
-------
HDM@HDM-PC /cygdrive/
$ ./squid.exe -N -C -d1
2014/10/22 19:29:30| WARNING cache_mem is larger than total disk cache space!
2014/10/22 19:29:30| Starting Squid Cache version 3.3.3 for i686-pc-cygwin...
2014/10/22 19:29:30| Process ID 2040
2014/10/22 19:29:30| Process Roles: master worker
2014/10/22 19:29:30| With 3072 file descriptors available
2014/10/22 19:29:30| Initializing IP Cache...
2014/10/22 19:29:30| DNS Socket created at [::], FD 4
2014/10/22 19:29:30| DNS Socket created at 0.0.0.0, FD 5
2014/10/22 19:29:30| Adding nameserver 8.8.8.8 from squid.conf
2014/10/22 19:29:30| Logfile: opening log daemon:
2014/10/22 19:29:30| Logfile Daemon: opening log /cygdrive/
2014/10/22 19:29:30| WARNING: no_suid: setuid(0): (22) Invalid argument
2014/10/22 19:29:30| WARNING: no_suid: setuid(0): (22) Invalid argument
2014/10/22 19:29:30| Unlinkd pipe opened on FD 11
2014/10/22 19:29:30| Store logging disabled
2014/10/22 19:29:30| Swap maxSize 102400 + 262144 KB, estimated 28041 objects
2014/10/22 19:29:30| Target number of buckets: 1402
2014/10/22 19:29:30| Using 8192 Store buckets
2014/10/22 19:29:30| Max Mem size: 262144 KB
2014/10/22 19:29:30| Max Swap size: 102400 KB
2014/10/22 19:29:30| Rebuilding storage in /usr/local/
2014/10/22 19:29:30| Using Least Load store dir selection
2014/10/22 19:29:30| Set Current Directory to /usr/local/
2014/10/22 19:29:30| Loaded Icons.
2014/10/22 19:29:30| HTCP Disabled.
2014/10/22 19:29:30| Loading Squid module from '/usr/local/
2014/10/22 19:29:30| Squid plugin modules loaded: 1
2014/10/22 19:29:30| Adaptation support is on
2014/10/22 19:29:30| WARNING: configured ecap_service was not loaded: ecap://
2014/10/22 19:29:30| Accepting HTTP Socket connections at local=[::]:3128 remote=[::] FD 14 flags=9
2014/10/22 19:29:30| Done reading /usr/local/
2014/10/22 19:29:30| Finished rebuilding storage from disk.
2014/10/22 19:29:30| 8 Entries scanned
2014/10/22 19:29:30| 0 Invalid entries.
2014/10/22 19:29:30| 0 With invalid flags.
2014/10/22 19:29:30| 8 Objects loaded.
2014/10/22 19:29:30| 0 Objects expired.
2014/10/22 19:29:30| 0 Objects cancelled.
2014/10/22 19:29:30| 0 Duplicate URLs purged.
2014/10/22 19:29:30| 0 Swapfile clashes avoided.
2014/10/22 19:29:30| Took 0.02 seconds (512.82 objects/sec).
2014/10/22 19:29:30| Beginning Validation Procedure
2014/10/22 19:29:30| Completed Validation Procedure
2014/10/22 19:29:30| Validated 8 Entries
2014/10/22 19:29:30| store_swap_size = 364.00 KB
2014/10/22 19:29:31| storeLateRelease: released 0 objects
-------
I’m confused about this warning. Does anybody give me some hints. Thanks.
HDM1991
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- eCAP Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Alex Rousskov
- Solved:
- Last query:
- Last reply:
This question was reopened
- by HDM1991