Interrupts on hp-ux 10.
Posted in 1997
Andrew the name of the signal handler has changed in V6, I encountered this one too. Unfortunately I cannot remember the new name. I solved the problem you are having for both V4 and V6 versions of 4GL by writing a C function to capture the address of the current signal handling routine at the start of a 4GL program. It was used for several projects and we never had any problems. You need to call sigaction (check the man pages) with a null action for SIGINT. This will give you the address of the current signal handler (_sig_int) for V4. You can then modify your timer routine to call the appropriate handler instead, and not be worried about the name. Skeleton code (not correct): static int (*sig_int_fn)(); int capture() { sig_int_fn = sigaction(SIGINT, NULL); } int setup_timer() { /* Replace _sig_int with sig_int_fn */ } I have not written the correct code since I do not have an HP or a copy of the exact code available. If you use this method, I think you will need to remove DEFER INTERUPT from the code (if you use it). Mark MarkDenham@aol.com (home) Denham.M@amstr.com (Work, American Stores) --------------------------( Forwarded letter 1 follows )--------------------- Date: Tuesday, 27 May 1997 2:57am From: yh10@dial.pipex.com (Lysander Systems) Subject: Interrupts on hp-ux 10. Date: Tue, 27 May 1997 16:29:41 GMT Reply-To: yh10@dial.pipex.com Organization: UUNet PIPEX server (post doesn't reflect views of UUNet PIPEX) Sender: informix-list-owner@rmy.emory.edu To: informix-list@rmy.emory.edu X-Informix-List-Id: <news.38387> We currently use a C function to ernable us to timeout of input statements. (To avoid long transactions). The function makes a call to an Informix interrupt handler called _sig_int() - Unfortunately under HP-UX 10.01 and Informix 4gl v6.xx this does not seem to exist does anyone know how to use the interrupt handling or have any other handy tips for timing out of input statements thanx (please email Andrew Marshman).