annotate tests/sigpipe.c @ 1330:4542b72c005e
[xemacs-hg @ 2003-03-01 07:25:26 by ben]
build patch
Makefile.in.in: Move src deletions to src/Makefile.in.in.
dump-paths.el, dumped-lisp.el: Delete. Combine stuff into setup-paths.el.
find-paths.el: Removed.
Make this file contain generic routines only. Move stuff to
compute Emacs roots to setup-paths.el.
startup.el: Removed.
Move these variables into setup-paths.el.
setup-paths.el, startup.el: Removed.
Combine all high-level code for computing the paths into
setup-paths.el. Create new function startup-find-load-path to
encapsulate all logic for computing `load-path'. Eliminate
invocation-directory and invocation-name parameters since
there is no point (false generality) -- the code references
other globals, which cannot be specified. Eliminate some code
duplicated between setup-paths.el and startup.el. Clean up
the debug-paths code and output load-path in addition.
Add logic to paths-emacs-root-p to support separated source
and build trees.
loadup.el, make-docfile.el, update-elc-2.el, update-elc.el: Rewrite to allow for separated source and build trees, as may occur
in MS Windows.
NOTE TO BUILD HACKERS:
loadup.el, make-docfile.el, update-elc.el and update-elc-2.el made two
assumptions that are no longer correct:
(1) The source and build trees are in the same place.
(2) They can make assumptions about where `.' is.
These files now compute the locations of the source and build
roots at the top of the file. *ALL* constant file names or path
snippets must now be made absolute using expand-file-name and one
of these roots.
dumped-lisp.el, packages.el: Removed.
Remove some unused lists of Lisp files. packages-hardcoded-lisp
(empty, in any case) moved to dumped-lisp.el.
startup.el: When a compiled init file is out-of-date wrt the uncompiled
version, load the uncompiled version and issue a nasty warning.
update-elc-2.el: Force touching of auto-autoloads files when REBUILD_AUTOLOADS
was set.
update-elc.el: Fix code that checks whether dumping is necessary to check against
xemacs.dmp, not xemacs.exe, when Unix and pdump.
lwlib-Xm.c: Fix compile warning.
README, config.inc.samp, xemacs.mak: -- Major reorganization and cleanup.
-- Add support for separated build tree and source tree.
-- Delete all support for X Windows building, since it's
totally bit-rotten and will never be fixed up. Instruct
people to use Cygwin if they want such support.
make-build-dir: New script to create a skeleton build tree for use with
separated build and source tree compilation.
m/acorn.h, m/alliant-2800.h, m/alliant.h, m/altos.h, m/amdahl.h, m/arm.h, m/att3b.h, m/aviion.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h, m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/ews4800r.h, m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h, m/intel386.h, m/iris4d.h, m/iris5d.h, m/iris6d.h, m/irist.h, m/m68k.h, m/masscomp.h, m/mg1.h, m/mips-nec.h, m/mips-siemens.h, m/mips.h, m/nh3000.h, m/nh4000.h, m/ns32000.h, m/plexus.h, m/powerpc.h, m/sequent-ptx.h, m/sequent.h, m/sgi-challenge.h, m/stride.h, m/tad68k.h, m/targon31.h, m/tekxd88.h, m/template.h, m/tower32.h, m/tower32v3.h, m/ustation.h, m/wicat.h, m/xps100.h, data.c, doc.c, editfns.c, emacs.c, lrecord.h, ntheap.c, process-unix.c, sysdep.c, unexec.c: Delete all support for bit-rotten CANNOT_DUMP. Just use pdump.
Makefile.in.in: Lots o' cleanup. Use names like LISP, SRC instead of
lispdir, srcdir, for consistency with xemacs.mak and the
conventions in the rest of the file. Eliminate use of ${...}
in favor of $(...), to make it easier to move code between
this file and xemacs.mak. Fix dependency handling wrt
NEEDTODUMP to eliminate problems some people (e.g. Vin) have
been seeing with non-GNU makes. Write a long section about
the subtle but oh-so-important differences in dependency
processing between nmake, make, and GNU make. Add
unicode-encapsulate target, from xemacs.mak.
chartab.c, lrecord.h: Fix crash due to attempt to free objects across dump/undump.
author |
ben |
date |
Sat, 01 Mar 2003 07:25:56 +0000 |
parents |
3f6adebda25c |
children |
679041362cd4 |
rev |
line source |
1231
|
1 /* code is all from loser.c and loser.el by Mly
|
|
2
|
|
3 Copyright (C) 2002 Richard Mlynarik <mly@pobox.com>
|
|
4
|
|
5 This is part of XEmacs
|
|
6
|
|
7 Compile this file. Run it in the background giving it a command line
|
|
8 argument PORT which is a positive integer 1024 < PORT < 32768 (avoid the
|
|
9 numbers assigned in /etc/services).
|
|
10
|
|
11 Then start up a fresh (you're going to crash) XEmacs. Execute the following
|
|
12
|
|
13 (defun lose (port)
|
|
14 (interactive "nUrk: ")
|
|
15 (require 'comint)
|
|
16 (while t
|
|
17 (condition-case e
|
|
18 (let* ((name "*lose*")
|
|
19 (b (get-buffer-create name)))
|
|
20 (switch-to-buffer b)
|
|
21 (comint-mode)
|
|
22 (comint-exec b name (cons "127.0.0.1" port) nil '())
|
|
23 (process-send-string (get-buffer-process b) "\377\373\001")
|
|
24 (process-send-string (get-buffer-process b) "\377\373\001"))
|
|
25 (error (message "URK: %s" e)) (sit-for 1))))
|
|
26
|
|
27 Then M-x lose RET PORT RET and you lose big (in XEmacs 21.1, anyway).
|
|
28 Note: the error messages are proper functioning. What should eventually
|
|
29 happen after a number of SIGPIPEs is that you get a SIGSEGV and life is
|
|
30 bad and XEmacs is dead.
|
|
31 */
|
|
32
|
|
33 #include <arpa/inet.h>
|
|
34
|
|
35 int
|
|
36 main (int argc, char **argv)
|
|
37 {
|
|
38 struct sockaddr_in junk;
|
|
39 int s;
|
|
40
|
|
41 memset (&junk, 0, sizeof (junk));
|
|
42
|
|
43 junk.sin_family = AF_INET;
|
|
44 junk.sin_addr.s_addr = htonl (INADDR_ANY); /* un*x sucks */
|
|
45 junk.sin_port = htons (atoi (argv[1])); /* un*x blows */
|
|
46
|
|
47 s = socket (PF_INET, SOCK_STREAM, 0);
|
|
48
|
|
49 bind (s, (struct sockaddr *)&junk, sizeof (junk));
|
|
50
|
|
51 listen (s, 1);
|
|
52
|
|
53 for (;;)
|
|
54 {
|
|
55 int loser = accept (s, NULL, 0);
|
|
56 close (loser);
|
|
57 }
|
|
58 }
|
|
59
|