Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ssmtp package segfaults #266

Closed
sjorge opened this issue Jun 1, 2015 · 3 comments
Closed

ssmtp package segfaults #266

sjorge opened this issue Jun 1, 2015 · 3 comments

Comments

@sjorge
Copy link

sjorge commented Jun 1, 2015

execve("/opt/local/sbin/ssmtp", 0xFFFFFD7FFFDFFBC8, 0xFFFFFD7FFFDFFBD8)  argc = 1
sysinfo(SI_MACHINE, "i86pc", 257)               = 6
mmap(0x00000000, 56, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF390000
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF380000
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF370000
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF360000
memcntl(0xFFFFFD7FFF398000, 96976, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF350000
memcntl(0x00400000, 14048, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
resolvepath("/usr/lib/amd64/ld.so.1", "/lib/amd64/ld.so.1", 1023) = 18
resolvepath("/opt/local/sbin/ssmtp", "/opt/local/sbin/ssmtp", 1023) = 21
stat("/opt/local/sbin/ssmtp", 0xFFFFFD7FFFDFF8A0) = 0
open("/var/ld/64/ld.config", O_RDONLY)          = 3
fstat(3, 0xFFFFFD7FFFDFF600)                    = 0
mmap(0x00000000, 160, PROT_READ, MAP_SHARED, 3, 0) = 0xFFFFFD7FFF340000
close(3)                                        = 0
stat("/opt/local/lib//libsocket.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/x86_64-sun-solaris2.11/lib/amd64/libsocket.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/amd64/libsocket.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib/libsocket.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/lib/64/libsocket.so.1", 0xFFFFFD7FFFDFEF90) = 0
resolvepath("/lib/64/libsocket.so.1", "/lib/amd64/libsocket.so.1", 1023) = 25
open("/lib/64/libsocket.so.1", O_RDONLY)        = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF350DB8, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF330000
memcntl(0xFFFFFD7FFEA50000, 31544, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/lib//libnsl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/x86_64-sun-solaris2.11/lib/amd64/libnsl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/amd64/libnsl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib/libnsl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/lib/64/libnsl.so.1", 0xFFFFFD7FFFDFEF90) = 0
resolvepath("/lib/64/libnsl.so.1", "/lib/amd64/libnsl.so.1", 1023) = 22
open("/lib/64/libnsl.so.1", O_RDONLY)           = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF330BC8, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF320000
memcntl(0xFFFFFD7FFED00000, 170816, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/lib//libssl.so.1.0.0", 0xFFFFFD7FFFDFEF90) = 0
resolvepath("/opt/local/lib//libssl.so.1.0.0", "/opt/local/lib/libssl.so.1.0.0", 1023) = 30
open("/opt/local/lib//libssl.so.1.0.0", O_RDONLY) = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF320A08, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF310000
memcntl(0xFFFFFD7FF98E0000, 142744, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/lib//libcrypto.so.1.0.0", 0xFFFFFD7FFFDFEF90) = 0
resolvepath("/opt/local/lib//libcrypto.so.1.0.0", "/opt/local/lib/libcrypto.so.1.0.0", 1023) = 33
open("/opt/local/lib//libcrypto.so.1.0.0", O_RDONLY) = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF310A20, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF300000
memcntl(0xFFFFFD7FF9630000, 740504, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/lib//libumem.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/x86_64-sun-solaris2.11/lib/amd64/libumem.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/amd64/libumem.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib/libumem.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/lib/64/libumem.so.1", 0xFFFFFD7FFFDFEF90) = 0
resolvepath("/lib/64/libumem.so.1", "/lib/amd64/libumem.so.1", 1023) = 23
open("/lib/64/libumem.so.1", O_RDONLY)          = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF300B28, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF2F0000
memcntl(0xFFFFFD7FFEBD0000, 423568, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/lib//libc.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/x86_64-sun-solaris2.11/lib/amd64/libc.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/amd64/libc.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib/libc.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/lib/64/libc.so.1", 0xFFFFFD7FFFDFEF90)   = 0
resolvepath("/lib/64/libc.so.1", "/lib/amd64/libc.so.1", 1023) = 20
open("/lib/64/libc.so.1", O_RDONLY)             = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF2F0AB0, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF140000
memcntl(0xFFFFFD7FFF150000, 465656, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0
stat("/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/libsocket.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/libnsl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib//libdl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/x86_64-sun-solaris2.11/lib/amd64/libdl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/libdl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/lib/libdl.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/lib/64/libdl.so.1", 0xFFFFFD7FFFDFEF90)  = 0
resolvepath("/lib/64/libdl.so.1", "/lib/amd64/libdl.so.1", 1023) = 21
open("/lib/64/libdl.so.1", O_RDONLY)            = 3
mmapobj(3, MMOBJ_INTERPRET, 0xFFFFFD7FFF300DF8, 0xFFFFFD7FFFDFEAEC, 0x00000000) = 0
close(3)                                        = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF130000
stat("/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/libumem.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
stat("/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.3/libc.so.1", 0xFFFFFD7FFFDFEF90) Err#2 ENOENT
mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFFFFFD7FFF120000
getcontext(0xFFFFFD7FFFDFF2F0)
getrlimit(RLIMIT_STACK, 0xFFFFFD7FFFDFF650)     = 0
getpid()                                        = 10660 [10659]
lwp_private(0, 0, 0xFFFFFD7FFF122A40)           = 0x00000000
setustack(0xFFFFFD7FFF122AE8)
lwp_cond_broadcast(0xFFFFFD7FFF1401A8)          = 0
sysconfig(_CONFIG_PAGESIZE)                     = 4096
lwp_cond_broadcast(0xFFFFFD7FFF2F01A8)          = 0
sigfillset(0xFFFFFD7FFF2E9500)                  = 0
lwp_cond_broadcast(0xFFFFFD7FFF3201A8)          = 0
lwp_cond_broadcast(0xFFFFFD7FFF3301A8)          = 0
lwp_cond_broadcast(0xFFFFFD7FFF3001A8)          = 0
lwp_cond_broadcast(0xFFFFFD7FFF3101A8)          = 0
lwp_cond_broadcast(0xFFFFFD7FFF3501A8)          = 0
lwp_cond_broadcast(0xFFFFFD7FFF1301A8)          = 0
sysi86(SI86FPSTART, 0xFFFFFD7FFFDFFB7C, 0x0000133F, 0x00001F80) = 0x00000001
schedctl()                                      = 0xFFFFFD7FFF114000
sigaction(SIGHUP, 0xFFFFFD7FFFDFFA70, 0xFFFFFD7FFFDFFB20) = 0
sigaction(SIGINT, 0xFFFFFD7FFFDFFA70, 0xFFFFFD7FFFDFFB20) = 0
sigaction(SIGTTIN, 0xFFFFFD7FFFDFFA70, 0xFFFFFD7FFFDFFB20) = 0
sigaction(SIGTTOU, 0xFFFFFD7FFFDFFA70, 0xFFFFFD7FFFDFFB20) = 0
sysconfig(_CONFIG_NPROC_ONLN)                   = 24
issetugid()                                     = 0
issetugid()                                     = 0
mmap(0x00010000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, 4294967295, 0) = 0xFFFFFD7FFF100000
brk(0x00432000)                                 = 0
brk(0x00442000)                                 = 0
brk(0x00452000)                                 = 0
brk(0x00462000)                                 = 0
brk(0x00472000)                                 = 0
brk(0x00482000)                                 = 0
brk(0x00492000)                                 = 0
brk(0x004A2000)                                 = 0
brk(0x004B2000)                                 = 0
mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, 4294967295, 0) = 0xFFFFFD7FFF0F0000
sysinfo(SI_HOSTNAME, "crust.acheron.be", 255)   = 17
    Incurred fault #6, FLTBOUNDS  %pc = 0x004065E5
      siginfo: SIGSEGV SEGV_MAPERR addr=0xFFFFFFFFFFDFFD98
    Received signal #11, SIGSEGV [default]
      siginfo: SIGSEGV SEGV_MAPERR addr=0xFFFFFFFFFFDFFD98
@drscream
Copy link

drscream commented Jun 2, 2015

> ::status
debugging core file of ssmtp (64-bit) from core-base-test-02.f.fruky.net
file: /zones/35ebd099-ce21-4114-98e3-99c756b6b846/root/opt/local/sbin/ssmtp
initial argv: ssmtp
threading model: native threads
status: process terminated by SIGSEGV (Segmentation Fault), addr=ffffffffffdffdf0
> ::fpregs
AMD64 (80486 chip with SSE)
cw     0x137f (IM|DM|ZM|OM|UM|PM|PC|IC|SIG53|SIG64|RTN|A)
sw     0x0000 (TOP=0t0) (0)
xcp sw 0x0000 (0)

fop    0x0
rip    0x0
rdp    0x0

%st0   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st1   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st2   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st3   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st4   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st5   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st6   0x0000.0000000000000000 = +0.0000000000000000e+00 empty
%st7   0x0000.0000000000000000 = +0.0000000000000000e+00 empty

mxcsr  0x1f80 (IM|DM|ZM|OM|UM|PM|RTN)
xcp    0x0000 (RTN)

%xmm0  0x0000000000000000000000000000ff00
%xmm1  0x37303133315f636f6c6c615f6d656d75
%xmm2  0x2e6f732e636f6c6c616d70616d62696c
%xmm3  0x0000000000000000000000000070616d
%xmm4  0x0000000000312e6f732e636f6c6c616d
%xmm5  0x00000000000000000000000000000000
%xmm6  0x00000000000000000000000000000000
%xmm7  0x00000000000000000000000000000000
> $C 
fffffd7fffdffc20 parse_options+0x35()
fffffd7fffdffc40 main+0x78()
fffffd7fffdffc50 _start+0x6c()

I think it's requires some pointer fixes. I also think it's already done by FreeBSD via the following patch: https://github.com/freebsd/freebsd-ports/blob/master/mail/ssmtp/files/patch-ssmtp.c

@sjorge
Copy link
Author

sjorge commented Jun 2, 2015

For those looking as alternative msmtp works reasonably well as a simple forwarder.

@mamash
Copy link

mamash commented Jun 20, 2016

I can't reproduce anymore and there was a pkgsrc commit that added libgen.h (that's also the basis of the FreeBSD patch), so I believe this is fixed (as of 2015Q4). Please re-open otherwise.

@mamash mamash closed this as completed Jun 20, 2016
jperkin pushed a commit that referenced this issue Jan 23, 2017
This upgrade fixes compatibility with new lxml.

Upstream changelog
==================
2.3.1

_This is a micro release and I have very little time on my hands right now sorry_

    Fix crash with no values when the print_values_position param is set (thanks @cristen)

2.3.0

    New call API: chart = Line(fill=True); chart.add('title', [1, 3, 12]); chart.render() can now be replaced with Line(fill=True)(1, 3, 12, title='title').render()
    Drop python 2.6 support

2.2.3

    Fix bar static value positioning (#315)
    Add stroke_opacity style (#321)
    Remove useless js in sparklines. (#312)

2.2.2

    Add classes option.
    Handle ellipsis in list type configs to auto-extend parent. (Viva python3)

2.2.0

    Support interruptions in line charts (thanks @piotrmaslanka #300)
    Fix confidence interval reactiveness (thanks @chartique #296)
    Add horizontal line charts (thanks @chartique #301)
    There is now a formatter config option to format values as specified. The formatter callable may or may not take chart, serie and index as argument. The default value formatting is now chart dependent and is value_formatter for most graph but could be a combination of value_formatter and x_value_formatter for dual charts.
    The human_readable option has been removed. Now you have to use the pygal.formatters.human_readable formatter (value_formatter=human_readable instead of human_readable=True)
    New chart type: SolidGauge (thanks @chartique #295)
    Fix range option for some Charts (#297 #298)
    Fix timezones for DateTimeLine for python 2 (#306, #302)
    Set default uri protocol to https (should fix a lot of "no tooltips" bugs).

2.1.1

    Import scipy as a last resort in stats.py (should workaround bugs like #294 if scipy is installed but not used)

2.1.0

    Bar print value positioning with print_values_position. Can be top, center or bottom (thanks @chartique #291) ci doc
    Confidence intervals (thanks @chartique #292) data doc

2.0.12

    Use custom xml_declaration avoiding conflict with processing instructions

2.0.11

    lxml 3.5 compatibility (#282)

2.0.10

    Fix transposable_node in case all attributes are not there. (thanks @yobuntu).

2.0.9

    Add dynamic_print_values to show print_values on legend hover. (#279)
    Fix unparse_color for python 3.5+ compatibility (thanks @felixonmars, @sjourdois)
    Process major labels as labels. (#263)
    Fix labels rotation > 180 (#257)
    Fix secondary axis
    Don't forget secondary series in table rendering (#260)
    Add defs config option to allow adding gradients and patterns.

2.0.8

    Fix value overwrite in map. (#275)

2.0.7

    Fixing to checks breaking rendering of DateTimeLine and TimeDeltaLine (#264) (thanks @mmrose)
    Fix render_in_browser. (#266) (#268) (thanks @waixwong)

2.0.6

    Avoid x label formatting when label is a string

2.0.5

    Fix x label formatting

2.0.4

    Fix map coloration

2.0.3

    Fix label adaptation. (#256)
    Fix wrong radar truncation. (#255)

2.0.2

    Fix view box differently to avoid getting a null height on huge numbers. (#254)
    Fix broken font_family default
    Fix non namespaced svg (without embed) javascript by adding uuid in config object. (config is in window.pygal now).

2.0.1

    Fix the missing title on x_labels with labels.
    Auto cast to str x labels in non dual charts (#178)
    Add print_labels option to print label too. (#197)
    Add value_label_font_family and value_label_font_size style options for print_labels.
    Default print_zeroes to True
    (Re)Add xlink in desc to show on tooltip
    Activate element on tooltip hovering. (#106)
    Fix radar axis behaviour (#247)
    Add tooltip support in metadata to add a title (#249).
    Take config class options in account too.

2.0.0

    Rework the ghost mechanism to come back to a more object oriented behavior, storing all state in a state object which is created on every render. (#161)
    Refactor maps
    Add world continents
    Add swiss cantons map (thanks @sergedroz)
    Add inverse_y_axis options to reverse graph (#24)
    Fix DateTimeLine time data loss (#193)
    Fix no data for graphs with only zeroes (#148)
    Support value formatter for pie graphs (#218) (thanks @never-eat-yellow-snow)
    Add new Box plot modes and outliers and set extremes as default (#226 #121 #149) (thanks @djezar)
    Add secondary_range option to set range for secondary values. (#203)
    Maps are now plugins, they are removed from pygal core and moved to packages (pygal_maps_world, pygal_maps_fr, pygal_maps_ch, ...) (#225)
    Dot now supports negative values
    Fix dot with log scale (#201)
    Fix y_labels behaviour for lines
    Fix x_labels and y_labels behaviour for xy like
    Improve gauge a bit
    Finally allow call chains on add
    Transform min_scale and max_scale as options
    mode option has been renamed to a less generic name: box_mode
    fix stack_from_top for stacked lines
    Add flake8 test to py.test in tox
    Remove stroke style in style and set it as a global / serie configuration.
    Fix None values in tables
    Fix timezones in DateTimeLine
    Rename in Style foreground_light as foreground_strong
    Rename in Style foreground_dark as foreground_subtle
    Add a render_data_uri method (#237)
    Move font_size config to style
    Add font_family for various elements in style
    Add googlefont:font support for style fonts
    Add tooltip_fancy_mode to revert to old tooltips
    Add auto print_value color + a configurable value_colors list in style
    Add guide_stroke_dasharray and guide_stroke_dasharray in style to customize guides (#242) (thanks @cbergmiller)
    Refactor label processing in a _compute_x_labels and _compute_y_labels method. Handle both string and numbers for all charts. Create a Dual base chart for dual axis charts. (#236)
    Better js integration in maps. Use the normal tooltip.
jperkin pushed a commit that referenced this issue Mar 20, 2017
## 2.0.7 (2017-03-19)

* Do not modify BasicObject during template compilation on ruby 2.0+ (#309, jeremyevans)

## 2.0.6 (2017-01-26)

* Add support for LiveScript (#286, @Announcement Jacob Francis Powers)
* Add support for Sigil (#302, winebarrel)
* Add support for Erubi (#308, jeremyevans)
* Add support for options in Liquid (#298, #299, laCour)
* Always sort locals by strings (#307, jeremyevans)

* Fix test warnings (#305, amatsuda)
* Fix indentation (#293, yui-knk)
* Use SVG badges in README (#294, vasinov)
* Fix typo and trailing space (#295, #296, karloescota)

## 2.0.5 (2016-06-02)

* Add support for reST using Pandoc (#284, mfenner)
* Make lazy loading thread-safe; remove warning (judofyr)

## 2.0.4 (2016-05-16)

* Fix regression in BuilderTemplate (#283, judofyr)

## 2.0.3 (2016-05-12)

* Add Pandoc support (#276, jmuheim)
* Add CommonMark support (#282, raphink)
* Add TypeScript support (#278, nghitran)
* Work with frozen string literal (#274, jeremyevans)
* Add MIME type for Babel (#273, SaitoWu)

## 2.0.2 (2016-01-06)

* Pass options to Redcarpet (#250, hughbien)
* Haml: Improve error message on frozen self (judofyr)
* Add basic support for Babel (judofyr)
* Add support for .litcoffee (#243, judofyr, mr-vinn)
* Document Tilt::Cache (#266, tommay)
* Sort local keys for better caching (#257, jeremyevans)
* Add more CSV options (#256, Juanmcuello)
* Add Prawn template (kematzy)
* Improve cache-miss performance in Tilt::Cache (#251, tommay)
* Add man page (#241, josephholsten)
* Support YAML/JSON data in bin/tilt (#241, josephholsten)

## 2.0.1 (2014-03-21)

* Fix Tilt::Mapping bug in Ruby 2.1.0 (9589652c569760298f2647f7a0f9ed4f85129f20)
* Fix `tilt --list` (#223, Achrome)
* Fix circular require (#221, amarshall)

## 2.0.0 (2013-11-30)

* Support Pathname in Template#new (#219, kabturek)
* Add Mapping#templates_for (judofyr)
* Support old-style #register (judofyr)
* Add Handlebars as external template engine (#204, judofyr, jimothyGator)
* Add org-ruby as external template engine (#207, judofyr, minad)
* Documentation typo (#208, elgalu)

## 2.0.0.beta1 (2013-07-16)

* Documentation typo (#202, chip)
* Use YARD for documentation (#189, judofyr)
* Add Slim as an external template engine (judofyr)
* Add Tilt.templates_for (#121, judofyr)
* Add Tilt.current_template (#151, judofyr)
* Avoid loading all files in tilt.rb (#160, #187, judofyr)
* Implement lazily required templates classes (#178, #187, judofyr)
* Move #allows_script and default_mime_type to metadata (#187, judofyr)
* Introduce Tilt::Mapping (#187, judofyr)
* Make template compilation thread-safe (#191, judofyr)
jperkin pushed a commit that referenced this issue Jun 21, 2017
o [Windows] Updated the bundled Npcap from 0.78 to 0.91, with several bugfixes
  for WiFi connectivity problems and stability issues. [Daniel Miller, Yang Luo]

o Integrated all of your service/version detection fingerprints submitted from
  September to March (855 of them). The signature count went up 2.9% to 11,418.
  We now detect 1193 protocols from apachemq, bro, and clickhouse to jmon,
  slmp, and zookeeper. Highlights: http://seclists.org/nmap-dev/2017/q2/140

o [NSE] Added 14 NSE scripts from 12 authors, bringing the total up to 566!
  They are all listed at https://nmap.org/nsedoc/, and the summaries are below:

o [Ncat] A series of changes and fixes based on feedback from the Red Hat community:

o [NSE][GH-266][GH-704][GH-238][GH-883] NSE libraries smb and msrpc now use
  fully qualified paths. SMB scripts now work against all modern versions
  of Microsoft Windows. [Paulino Calderon]

o [NSE] smb library's share_get_list now properly uses anonymous connections
  first before falling back authenticating as a known user.

o New service probes and matches for Apache HBase and Hadoop MapReduce.
  [Paulino Calderon]

o Extended Memcached service probe and added match for Apache ZooKeeper.
  [Paulino Calderon]

o [NSE] New script argument "vulns.short" will reduce vulns library script
  output to a single line containing the target name or IP, the vulnerability
  state, and the CVE ID or title of the vulnerability. [Daniel Miller]

o [NSE][GH-862] SNMP scripts will now take a community string provided like
  `--script-args creds.snmp=private`, which previously did not work because it
  was interpreted as a username. [Daniel Miller]

o [NSE] Resolved several issues in the default HTTP redirect rules:
    - [GH-826] A redirect is now cancelled if the original URL contains
      embedded credentials
    - [GH-829] A redirect test is now more careful in determining whether
      a redirect destination is related to the original host
    - [GH-830] A redirect is now more strict in avoiding possible redirect
      loops
  [nnposter]

o [NSE][GH-766] The HTTP Host header will now include the port unless it is
  the default one for a given scheme. [nnposter]

o [NSE] The HTTP response object has a new member, fragment, which contains
  a partially received body (if any) when the overall request fails to
  complete. [nnposter]

o [NSE][GH-866] NSE now allows cookies to have arbitrary attributes, which
  are silently ignored (in accordance with RFC 6265). Unrecognized attributes
  were previously causing HTTP requests with such cookies to fail. [nnposter]

o [NSE][GH-844] NSE now correctly parses a Set-Cookie header that has unquoted
  whitespace in the cookie value (which is allowed per RFC 6265). [nnposter]

o [NSE][GH-731] NSE is now able to process HTTP responses with a Set-Cookie
  header that has an extraneous trailing semicolon. [nnposter]

o [NSE][GH-708] TLS SNI now works correctly for NSE HTTP requests initiated
  with option any_af. As an added benefit, option any_af is now available for
  all connections via comm.lua, not just HTTP requests. [nnposter]

o [NSE][GH-781] There is a new common function, url.get_default_port(),
  to obtain the default port number for a given scheme. [nnposter]

o [NSE][GH-833] Function url.parse() now returns the port part as a number,
  not a string. [nnposter]

o No longer allow ICMP Time Exceeded messages to mark a host as down during
  host discovery. Running traceroute at the same time as Nmap was causing
  interference. [David Fifield]

o [NSE][GH-807] Fixed a JSON library issue that was causing long integers
  to be expressed in the scientific/exponent notation. [nnposter]

o [NSE] Fixed several potential hangs in NSE scripts that used
  receive_buf(pattern), which will not return if the service continues to send
  data that does not match pattern. A new function in match.lua, pattern_limit,
  is introduced to limit the number of bytes consumed while searching for the
  pattern. [Daniel Miller, Jacek Wielemborek]

o [Nsock] Handle any and all socket connect errors the same: raise as an Nsock
  error instead of fatal. This prevents Nmap and Ncat from quitting with
  "Strange error from connect:" [Daniel Miller]

o [NSE] Added several commands to redis-info to extract listening addresses,
  connected clients, active channels, and cluster nodes. [Vasiliy Kulikov]

o [NSE][GH-679][GH-681] Refreshed script http-robtex-reverse-ip, reflecting
  changes at the source site (www.robtex.com). [aDoN]

o [NSE][GH-620][GH-715] Added 8 new http-enum fingerprints for Hadoop
  infrastructure components. [Thomas Debize, Varunram Ganesh]

o [NSE][GH-629] Added two new fingerprints to http-default-accounts
  (APC Management Card, older NetScreen ScreenOS) [Steve Benson, nnposter]

o [NSE][GH-716] Fix for oracle-tns-version which was sending an invalid TNS
  probe due to a string escaping mixup. [Alexandr Savca]

o [NSE][GH-694] ike-version now outputs information about supported attributes
  and unknown vendor ids. Also, a new fingerprint for FortiGate VPNs was
  submitted by Alexis La Goutte. [Daniel Miller]

o [GH-700] Enabled support for TLS SNI on the Windows platform. [nnposter]

o [GH-649] New service probe and match lines for the JMON and RSE services of
  IBM Explorer for z/OS. [Soldier of Fortran]

o Removed a duplicate service probe for Memcached added in 2011 (the original
  probe was added in 2008) and reported as duplicate in 2013 by Pavel Kankovsky.

o New service probe and match line for NoMachine NX Server remote desktop.
  [Justin Cacak]

o [Zenmap] Fixed a recurring installation problem on OS X/macOS where Zenmap
  was installed to /Applications/Applications/Zenmap.app instead of
  /Applications/Zenmap.app.

o [Zenmap][GH-639] Zenmap will no longer crash when no suitable temporary
  directory is found. Patches contributed by [Varunram Ganesh] and [Sai Sundhar]

o [Zenmap][GH-626] Zenmap now properly handles the -v0 (no output) option,
  which was added in Nmap 7.10. Previously, this was treated the same as not
  specifying -v at all. [lymanZerga11]

o [GH-630] Updated or removed some OpenSSL library calls that were deprecated
  in OpenSSL 1.1. [eroen]

o [NSE] Script ssh-hostkey now recognizes and reports Ed25519 keys [nnposter]

o [NSE][GH-627] Fixed script hang in several brute scripts due to the "threads"
  script-arg not being converted to a number. Error message was
  "nselib/brute.lua:1188: attempt to compare number with string" [Arne Beer]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants