|
| | | | W R A P M O U N T
| | | | |
wrapmount-0.1
--------------
---
Annoyed of single tasking handlers locking up your OS? Try 'wrapmount',
a single tasking handler wrapper/supervisor!
Warning, 'wrapmount' has only been tested with 'inet-handler'(TCP:) so far
(this is the reason this proggy exists btw)!
---
NOTES:
[*]
Requires 68020(no FPU)+, OS2.04(theoretically)+, 8+ kilos of free memory.
[*]
If you want to use 'TCP:' through 'wrapmount' permanently then put proper
line in your script just before where the normal 'TCP:' gets mounted
and 'waitback' assist it.
[*]
Wrapper can be terminated with 'CTRL + C' signal at any stage, but keep in
mind that it may be unable to stop real handler, thus memory leaks are
possible.
[*]
Wrapper has the ability to restart real handler if it was killed or died
unexpectedly. Note that binary object need not to exist at launch time.
[*]
Warning! Wrapper will only work properly with signal('PA_SIGNAL') based
message ports!
[*]
Using signal upon timeout may be a good idea unless you know that handler
will react to it at once. This way process who stuck at the dreaded request
who cannot be satisfied may be magically liberated by another request who
cannot be satisfied. The drawback however is that all clients may have to
pay for that...
---
HELP:
> wrapmount ?
HE=HANDLERNAME/A,HC=HANDLERCODE/A,HP=HANDLERPRI/N,
RT=REQTIMEOUT/N,ST=SIGTIMEOUT/K,DL=DISABLELOCK/S
HE=HANDLERNAME/A - AmigaDOS style device name(like 'DEV0:'). Colon is
not mandatory.
HC=HANDLERCODE/A - Handler binary object(like 'L:my-handler'). Warning
BCPL handlers are unsupported!
HP=HANDLERPRI/N - Priority(-128 to 127) of the real handler process.
0 by default.
RT=REQTIMEOUT/N - How long to wait for handler to be ready to process
the packet before failing. By default 'wrapmount'
will wait 3 seconds. Minimal value allowed here is
1 second.
ST=SIGTIMEOUT/K - Deliver this signal to the real handler process
upon timeout. Signal can be expressed in four most
common numeral systems. C signal is 0x00001000. Use
with great care!
DL=DISABLELOCK/S - Drop lock related packets completly if handler does
not make use of them anyway. This can smoothify
things up by timing out immediately. No signal will
be emited here!
---
USAGE:
; Port-wrap 'TCP:' device so it can block for upto
; 3 seconds in the worst case on new requests
run wrapmount TCP: L:inet-handler dl
waitback [wrapmount]
; Do this to check if 'TCP:' is a bad boy or not
run type TCP:127.0.0.127/1
TCP:
---
megacz
| |
| | | | |
|