path: root/NEWS
authorSergey Poznyakoff <>2007-04-18 07:33:39 (GMT)
committer Sergey Poznyakoff <>2007-04-18 07:33:39 (GMT)
commit71d23052e4bbb16978a2c38e151d2cbf71320e9d (patch) (side-by-side diff)
tree2022ce3e3ed8b5438ac2b9e0fcd97c88691806a0 /NEWS
parent9a1ddf916e38a3ed89d8d306997efe008a3b95b6 (diff)
Implement stack traces
git-svn-id: file:///svnroot/mailfromd/trunk@1363 7a8a7f39-df28-0410-adc6-e0d955640f24
Diffstat (limited to 'NEWS') (more/less context) (ignore whitespace changes)
1 files changed, 26 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 3d9c342..6e68fc6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-Mailfromd NEWS -- history of user-visible changes. 2007-04-16
+Mailfromd NEWS -- history of user-visible changes. 2007-04-18
Copyright (C) 2005, 2006, 2007 Sergey Poznyakoff
See the end of file for copying conditions.
@@ -82,6 +82,31 @@ to the logs, notifying of the new stack size, e.g.:
You can use these messages to adjust your stack size configuration
+* Runtime stack traces
+New command line option --stack-trace enables dumping stack traces
+on runtime errors. This might help localize the source of the error.
+The trace looks like:
+mailfromd: RUNTIME ERROR near ../mflib/ invalid CIDR (boo%)
+mailfromd: Stack trace:
+mailfromd: 0077: match_cidr
+mailfromd: 0096: bar
+mailfromd: 0110: foo
+mailfromd: Stack trace finishes
+mailfromd: Execution of the configuration program was not finished
+Each trace line describes one stack frame, the lines appear in the
+order of most recently called to least recently called. Each frame
+consists of:
+1. Value of program counter at the time of its execution
+2. Source code location, if available
+3. Name of the function called
+The same output can be obtained by calling function stack_trace()
+in your filter program.
* connect handler
Connect handler is implemented.

Return to:

Send suggestions and report system problems to the System administrator.