aboutsummaryrefslogtreecommitdiffstats
path: root/libsigsegv/ChangeLog.1
blob: e3a1d79c5ffe80fb43cb371ef1d1c443cec2871b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
2002-07-15  Bruno Haible  <bruno@clisp.org>

        * sigsegv.h.in (HAVE_STACK_OVERFLOW_RECOVERY): Define al-
so  on  FreeBSD.           (stackoverflow_context_t):  Define  as
'struct   sigcontext   *'   on   FreeBSD.            *  handler.c
(SIGSEGV_ALL_SIGNALS)  [FreeBSD]:  Add  SIGSEGV;  this   is   the
        signal    that    gets    sent    on    stack   overflow.
        (get_vma) [FreeBSD]:  New.           (reset_onstack_flag)
[FreeBSD]: New .

2002-05-07  Paolo Bonzini  <bonzini@gnu.org>

        * sigsegv.h.in [__hpux, hpux]: Define HAVE_SIGSEGV_RECOV-
ERY.          * handler.c (UNIX_HPUX) [__hpux, hpux]: New  macro.
        Define  the  hacks  to  access  CR21.           * test1.c
(mmap_zeromap): Return  the  address.           (handler):  Don't
hardcode  the correct fault address.          (main): Set page to
the result of mmap_zeromap.           *  test2.c  (mmap_zeromap):
Return the address.          (main): Set area1/area2/area3 to the
result of mmap_zeromap.

2002-05-06  Bruno Haible  <bruno@clisp.org>

        * test1.c: Include  <stdlib.h>,  for  exit().           *
test2.c: Likewise.          * test3.c: Likewise.

2002-04-28  Bruno Haible  <bruno@clisp.org>

        *     Makefile.devel    (ACLOCAL):    Remove    variable.
        (ACSELECT): Remove variable.          (OTHERMACROS):  Re-
move  variable.           (m4/*.m4):  New  rules.          (auto-
conf/aclocal.m4): Construct using aclocal instead of acselect.

2001-08-25  Bruno Haible  <haible@clisp.cons.org>

        Upgrade to autoconf-2.52.           *  autoconf/autoconf:
Upgrade  to  autoconf-2.52.          * autoconf/acgeneral.m4: Re-
move  file.           *  autoconf/acspecific.m4:   Remove   file.
        *  autoconf/autoconf.m4f:  New  file, from autoconf-2.52.
        *     autoconf/aclocal.m4:     Require     autoconf-2.52.
        (CL_CANONICAL_HOST):  Call AC_CANONICAL_HOST. Don't cache
the result,         AC_CANONICAL_HOST does it itself. Add  $SHELL
in   front   of           $ac_config_guess   and  $ac_config_sub.
        (CL_SIGACTION_REINSTALL): Include <string.h>, for  memset
declaration.           *  Makefile.devel (AUTOCONF_FILES): Remove
acgeneral.m4,    acspecific.m4.             Add     autoconf.m4f.
        (configure):  Use  autoconf options -A, -l instead of -m.
        * config.h.in: Don't define HAVE_MEMSET.           (MPRO-
TECT_CONST,  SETRLIMIT_CONST):  Use  #undef, not #define, to work
        around an autoconf bug.

2001-08-05  Bruno Haible  <haible@clisp.cons.org>

        *  autoconf/acgeneral.m4   (AC_MSG_RESULTPROTO):   Remove
macro.           (AC_LANG_EXTERN): Move to aclocal.m4.          *
autoconf/aclocal.m4 (AC_LANG_EXTERN): Moved  here  from  acgener-
al.m4.           (CL_PROTO):  Use AC_MSG_RESULT directly, instead
of AC_MSG_RESULTPROTO.          (CL_SILENT): No need  to  pushdef
AC_MSG_RESULTPROTO.

2001-06-08  Bruno Haible  <haible@clisp.cons.org>

        * autoconf/ltmain.sh: Upgrade to libtool-1.4.
        * autoconf/ltconfig: Remove file.

2001-06-08  Bruno Haible  <haible@clisp.cons.org>

        *    autoconf/config.guess:   Update   to   GNU   version
2001-05-11.
        * autoconf/config.sub: Likewise.

2001-05-09  Bruno Haible  <haible@clisp.cons.org>

        * sigsegv.h.in: Recognize __arm__  as  CPU  indicator  on
Linux.
        * handler.c: Likewise.

2001-03-19  Bruno Haible  <haible@clisp.cons.org>

        * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Always define
          ac_config_guess and ac_config_sub. Then ignore requests
for
          AC_CONFIG_AUX_DIR_DEFAULT or AC_CANONICAL_HOST.

2001-03-19  Bruno Haible  <haible@clisp.cons.org>

        * ltconfig, ltmain.sh: Upgrade to libtool-1.3.5.

2001-02-20  Bruno Haible  <haible@clisp.cons.org>

        * Makefile.in (libdir, includedir): Use the autoconf  de-
termined value,
          in order to respect the configure arguments.
          (mandir): Remove unused variable.
        * Makefile.msvc (mandir): LIkewise.

        *  Makefile.in (install, installdirs, uninstall): Support
DESTDIR.

2000-12-08  Bruno Haible  <haible@clisp.cons.org>

        * Makefile.in (exec_prefix): Use configure's  --exec-pre-
fix argument.

2000-11-15  Bruno Haible  <haible@clisp.cons.org>

        * Makefile.msvc: Add support for MFLAGS and DEBUG parame-
ters.

2000-11-12  Bruno Haible  <haible@clisp.cons.org>

        * autoconf/config.guess, autoconf/config.sub: Upgrade  to
newest
          version from GNU CVS.

2000-11-08  Bruno Haible  <haible@clisp.cons.org>

        *  aclocal.m4  (CL_SIGNAL_UNBLOCK): Enable 'volatile' for
gotsig,
          wasblocked.
          (CL_SIGNAL_BLOCK_OTHERS): Enable 'volatile' for gotsig,
          somewereblocked.
          (CL_SIGACTION_UNBLOCK): Enable 'volatile'  for  gotsig,
wasblocked.

2000-09-29  Bruno Haible  <haible@clisp.cons.org>

        *  autoconf/aclocal.m4  (CL_CANONICAL_HOST):  Fix  bug in
2000-05-23
          change.

2000-05-29  Bruno Haible  <haible@clisp.cons.org>

        * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
        Reported    by    Thomas    Klausner    <wiz@danbala.ifo-
er.tuwien.ac.at>.

2000-05-25  Bruno Haible  <haible@clisp.cons.org>

        * Makefile.msvc: Use 'copy' and 'ren' instead of 'cp' and
'mv'.

2000-05-23  Bruno Haible  <haible@clisp.cons.org>

        *  autoconf/aclocal.m4   (CL_CANONICAL_HOST):   Determine
host_cpu,
          host_vendor,  host_os  correctly if $host has more than
two hyphens.

2000-04-02  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        Allow building on filesystems lacking symlinks  and  hard
links.
        *     Makefile.devel    (autoconf/aclocal.m4):    Replace
AC_PROG_LN_S with
          CL_PROG_LN_S.
        * configure.in: Add CL_PROG_LN_S.
        * src/Makefile.in (LN): Remove.

1999-06-18  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * handler.c (user_handler): Define also on WIN32.

1999-06-16  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * sigsegv.h.in  (stackoverflow_context_t):  More  precise
definition on
          Solaris, Irix, OSF/1.

1999-05-30  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * Makefile.in (install-lib): New target.

1999-05-29  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * Makefile.in (install): Make sure the directories $(pre-
fix) and
          $(exec_prefix) exist.

1999-05-16  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        Libtoolify.
        * autoconf/ltconfig, autoconf/ltmain.sh: New files,  from
libtool-1.2.
        * Makefile.devel (OTHERMACROS): New macro.
          (autoconf/aclocal.m4):  Add  the contents of $(OTHERMA-
CROS).
        *    configure.in:     Call     CL_CANONICAL_HOST     and
AM_PROG_LIBTOOL.
        * Makefile.in (LIBTOOL, LIBTOOL_COMPILE, LIBTOOL_LINK,
           LIBTOOL_INSTALL, LIBTOOL_UNINSTALL): New macros.
          (top_builddir): New macro.
          (OBJECTS): Change .o to .lo.
          (all): Change .a to .la.
          (handler.lo):     Renamed     from    handler.o.    Use
$(LIBTOOL_COMPILE).
          (dispatcher.lo):   Renamed   from   dispatcher.o.   Use
$(LIBTOOL_COMPILE).
          (libsigsegv.la):   Renamed   from   libsigsegv.a.   Use
$(LIBTOOL_LINK).
          (install): Use $(LIBTOOL_INSTALL). Copy ./sigsegv.h not
          $(srcdir)/sigsegv.h.
          (uninstall): Use $(LIBTOOL_UNINSTALL).
          (test1,  test2,  test3):  Change   .a   to   .la.   Use
$(LIBTOOL_LINK).
          (clean): Also remove *.lo *.la .libs _libs.
          (distclean): Also remove libtool.

1999-05-16  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        For Linux 2.0.x with glibc2.0.
        *  aclocal.m4  (CL_SIGALTSTACK):  Define HAVE_SIGALTSTACK
only if the
          sigaction flags macro SA_ONSTACK is also defined.

1999-05-15  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        For DEC OSF/1 3.2.
        * sigsegv.h.in  (HAVE_STACK_OVERFLOW_RECOVERY):  Undefine
if test3
          doesn't work.
        * Makefile.in (SEDPREPARE0, SEDCOMMAND3): New macros.
          (sigsegv.h): Also try running test3.

1999-05-09  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        *  sigsegv.h.in  (HAVE_STACK_OVERFLOW_RECOVERY): Also de-
fine on Solaris,
          Irix, OSF/1.
        * handler.c: Use symbolic UNIX_* macros for various  Unix
brands.
          (SIGSEGV_FAULT_HANDLER_ARGLIST,   SIGSEGV_ALL_SIGNALS):
Define also
          when HAVE_SIGSEGV_RECOVERY is not defined. Add  support
for
          Linux/m68k, Linux/mips, Linux/alpha, Linux/arm.
          (SIGSEGV_FAULT_CONTEXT,    SIGSEGV_FAULT_STACKPOINTER):
New macros.
          (get_vma) [UNIX_LINUX]:  No  need  to  initialize  prev
twice.
          (reset_onstack_flag) [UNIX_LINUX]: New function.
          (get_vma,  reset_onstack_flag)  [UNIX_SUNOS, UNIX_IRIX,
UNIX_OSF]: New
          functions.
          (sigsegv_leave_handler): If  SIGACTION_NEED_UNBLOCK  is
defined,
          unblock the signal itself. Call reset_onstack_flag.
          (stackoverflow_deinstall_handler):  Print  something if
sigaltstack
          fails.
        * aclocal.m4 (CL_SIGNAL_UNBLOCK, CL_SIGNAL_BLOCK_OTHERS,
           CL_SIGACTION_UNBLOCK):  Perform  the  test  if  either
POSIX or BSD
          signal mask primitives are available. Otherwise,
          SIGACTION_NEED_UNBLOCK would not be defined on Solaris.

1999-05-07  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * test3.c (main): Make more verbose.

        Avoid a "make check" failure with "cc" on DEC OSF/1 4.0.
        * test2.c (barrier): New function.
          (main): Call it at the right moment.

        *  Makefile.in (SEDPREPARE1, SEDCOMMAND2): Don't use # as
literal.
          Only GNU  make  understands  1999-05-02   Bruno  Haible
<bruno@linuix.math.u-bordeaux.fr>

        Support  for  catching  stack  overflow  on  Unix,  using
sigaltstack().
        * aclocal.m4 (CL_SIGALTSTACK): New macro.
        * configure.in: Add CL_SIGALTSTACK and CL_RLIMIT.
        * config.h.in: Add HAVE_SIGALTSTACK, HAVE_SETRLIMIT,
          RLIMIT_RESOURCE_T, SETRLIMIT_CONST.
        * Makefile.in  (SEDPREPARE1,  SEDCOMMAND1,  SEDCOMMAND2):
New macros.
          (sigsegv.h): Use them. Depend on config.h.
        * sigsegv.h.in: Test __linux__ instead of linux.
          Conditionally  define  HAVE_STACK_OVERFLOW_RECOVERY for
Linux.
          (sigsegv_handler_t): Add `serious' argument.
          (stackoverflow_context_t): New type.
          (stackoverflow_handler_t,    stackoverflow_install_han-
dler,
           stackoverflow_deinstall_handler): Declare uncondition-
ally.
          (stackoverflow_handler_t): Add `scp' argument.
          (stackoverflow_install_handler): Change return type  to
`int'.
        * handler.c: Test __linux__ instead of linux.
          Move Win32 section to the end.
          On Unix, install SIGSEGV handler if HAVE_SIGSEGV_RECOV-
ERY or
          HAVE_STACK_OVERFLOW_RECOVERY.
          (vma_struct): New type.
          (get_vma): New function.
          (SIGSEGV_FAULT_CONTEXT,    SIGSEGV_FAULT_STACKPOINTER):
New macros.
          (stack_top): New variable.
          (remember_stack_top): New function.
          (stk_user_handler,       stk_extra_stack,       stk_ex-
tra_stack_size): New
          variables.
          (no_user_handler): Remove, use NULL instead.
          (sigsegv_handler): Extend to  support  HAVE_STACK_OVER-
FLOW_RECOVERY.
          (install_for):  Add  SA_ONSTACK  to  sigaction flags if
needed.
          (sigsegv_deinstall_handler): Deinstall handlers only if
          not needed for stk_user_handler.
          (stackoverflow_install_handler,     stackoverflow_dein-
stall_handler):
          New functions.
          (stack_overflow_handler) [WIN32]: Add context argument.
          (main_exception_filter): Pass context argument.
        * test1.c (handler): Add `serious' argument.
        * test2.c (handler): Likewise.
        *  test3.c  (stackoverflow_handler):  Add `scp' argument.
Use
          sigsegv_leave_handler  instead  of  complicated  #ifdef
spaghetti.
          (main):  Call  setrlimit,  to  make  sure the recursion
doesn't kill the
          machine. If stackoverflow_install_handler  returns  -1,
bypass the
          test, because it would crash.

1999-03-15  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * configure.in: Add CL_CC_GCC.
        * Makefile.in: Use "-x none" option where appropriate.
        *  dispatcher.c:  In  C++  mode,  don't define a function
named `delete'.

1999-02-08  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * sigsegv/sigsegv.h.in: Renamed from sigsegv/sigsegv.h.
          Added "#undef HAVE_SIGSEGV_RECOVERY", commented out.
        * Makefile.in  (sigsegv.h):  Try  compiling  and  running
test1. If it
          fails, like on Solaris 2.5 and 2.5.1, uncomment "#undef
          HAVE_SIGSEGV_RECOVERY".
        * Makefile.msvc: Update.

1999-01-29  Bruno Haible  <bruno@linuix.math.u-bordeaux.fr>

        * sigsegv.h [linux && sparc]: Disable HAVE_SIGSEGV_RECOV-
ERY. It does
          not work any more.