Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #24124

Re: signal() anomaly

From Nobody <nobody@nowhere.com>
Subject Re: signal() anomaly
Date 2012-08-02 12:52 +0100
Message-Id <pan.2012.08.02.11.52.20.104000@nowhere.com>
Newsgroups comp.lang.c
References <jv9e9e$bj3$1@speranza.aioe.org> <jv9l8p$1u2$1@blue-new.rahul.net> <jvbu80$pu5$1@speranza.aioe.org> <50198480.3040408@verizon.net> <jvc4kl$aus$1@speranza.aioe.org>
Organization Zen Internet

Show all headers | View raw


On Wed, 01 Aug 2012 20:47:17 +0000, hip cat wrote:

> I think Eric was right on the money asking about the return value. If the
> signal() call returns success, but the "ignore" is ignored, I say that's a
> bug in the C library. I think I'll file a bug report against glibc.

It's not a bug in glibc. You tell it to ignore SIGSEGV, it ignores
SIGSEGV. According to POSIX, ignoring a synchronous[1] SIGSEGV results in
undefined behaviour, which could mean anything, including raising SIGSEGV.

[1] One generated by an invalid memory access. A SIGSEGV generated by
kill(), sigqueue() or raise() *can* be ignored, hence it would be a bug if
glibc reported an error for signal(SIGSEGV, SIG_IGN).

Note that it *is* an error (§2.4.3) to set the action for SIGKILL or
SIGSTOP to SIG_IGN:

	The system shall not allow the action for the signals SIGKILL or SIGSTOP
	to be set to SIG_IGN.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

signal() anomaly hip cat <nospam@nospam.com> - 2012-07-31 20:13 +0000
  Re: signal() anomaly Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-07-31 16:35 -0400
    Re: signal() anomaly hip cat <nospam@nospam.com> - 2012-08-01 18:59 +0000
    Re: signal() anomaly Nick Bowler <nbowler@draconx.ca> - 2012-08-01 20:14 +0000
  Re: signal() anomaly falk@rahul.net (Edward A. Falk) - 2012-07-31 22:12 +0000
    Re: signal() anomaly hip cat <nospam@nospam.com> - 2012-08-01 18:58 +0000
      Re: signal() anomaly James Kuyper <jameskuyper@verizon.net> - 2012-08-01 15:33 -0400
        Re: signal() anomaly hip cat <nospam@nospam.com> - 2012-08-01 20:47 +0000
          Re: signal() anomaly Paul <nospam@needed.com> - 2012-08-01 17:34 -0400
            Re: signal() anomaly Johann Klammer <klammerj@NOSPAM.a1.net> - 2012-08-02 06:34 +0200
              Re: signal() anomaly Paul <nospam@needed.com> - 2012-08-02 07:10 -0400
          Re: signal() anomaly Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-08-01 18:07 -0400
            Re: signal() anomaly Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-08-02 00:15 +0100
              Re: signal() anomaly Nick Bowler <nbowler@draconx.ca> - 2012-08-02 00:05 +0000
                Re: signal() anomaly Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-08-02 02:47 +0100
          Re: signal() anomaly James Kuyper <jameskuyper@verizon.net> - 2012-08-01 18:13 -0400
          Re: signal() anomaly James Kuyper <jameskuyper@verizon.net> - 2012-08-01 18:14 -0400
          Re: signal() anomaly Nobody <nobody@nowhere.com> - 2012-08-02 12:52 +0100
      Re: signal() anomaly Angel <angel+news@spamcop.net> - 2012-08-01 19:41 +0000
      Re: signal() anomaly Kenneth Brody <kenbrody@spamcop.net> - 2012-08-01 16:16 -0400
      Re: signal() anomaly Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-08-01 16:33 -0400
      Re: signal() anomaly Ben Bacarisse <ben.usenet@bsb.me.uk> - 2012-08-02 00:22 +0100
      Re: signal() anomaly Stephen Sprunk <stephen@sprunk.org> - 2012-08-02 00:55 -0500
        Re: signal() anomaly Ike Naar <ike@sverige.freeshell.org> - 2012-08-02 07:01 +0000
      Re: signal() anomaly Öö Tiib <ootiib@hot.ee> - 2012-09-08 20:53 -0700
  Re: signal() anomaly Nobody <nobody@nowhere.com> - 2012-08-01 18:06 +0100
    Re: signal() anomaly Tim Rentsch <txr@alumni.caltech.edu> - 2012-09-07 13:44 -0700
  Re: signal() anomaly Kleuske <kleuske@nowhere.net> - 2012-08-02 20:52 +0000

csiph-web