NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

bin/49464: mandoc can abort on certain (third-party old-style) man page inputs



>Number:         49464
>Category:       bin
>Synopsis:       mandoc can abort on certain (third-party old-style) man page inputs
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    bin-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 11 13:50:00 +0000 2014
>Originator:     Havard Eidnes
>Release:        NetBSD 6.1.4_PATCH
>Organization:
	UNINETT AS
>Environment:
System: NetBSD floke.uninett.no 6.1.4_PATCH NetBSD 6.1.4_PATCH (GENERIC) #1: Sun Jun 29 13:59:55 CEST 2014  he%floke.uninett.no@localhost:/usr/obj/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
	I'm packaging up zabbix 2.4.2 (so far in pkgsrc-wip, yet to be
	committed at this stage).  It has a man page, zabbix_agentd,
	where when it's installed, "man zabbix_agentd" yeilds an empty
	man page and an error message which says

floke: {17} man zabbix_agentd
man: Formatting manual page...
assertion "MAN_BLOCK == p->parent->type" failed: file "/usr/src/external/bsd/mdocml/lib/libmandoc/../../dist/man.c", line 212, function "man_node_append"
[1]   Abort trap              /usr/bin/mandoc ...
floke: {18} 

	Doing the more traditional

	% nroff -mandoc <manpage> | less -s

	gives a perfectly readable man page.

	I would therefore characterize this as "lack of robustness".

	Likewise, makemandb crashes if such a man page is installed.

>How-To-Repeat:
	Try to view this manpage, here compressed and uuencoded:

begin 644 zabbix_agentd.8.gz
M'XL(`,.TB%0``ZU636\C-PR]SZ\@?$H`>[)I>U@4:5"[\38&LK;A<8+]R"*0
M-1Q;B$::2!K'[J\OJ1DG=IQ%+[VL-Q1)/5*/CY/.K^%;?S`8?7GH_ST<SZ_@
M(W3./\#8KK%<H(-?/IR?=Y(TNX9Q__,P^4<L%FKS()9H0@[W/?@6#1`-D`LL
MK4FC>_9U/)EFHRQ)!W`8];VWJNY^T(^$^V)T(:TIU+)7*(V7]\6`#T(\4`'+
MWB-NHS7FO!IF?\U&T_EH,CY*FR@/HD4`A75`ORI8I\P2;`%KX92M/7AT:RJK
M$DZ4&-!Y1IO!I`K*&I^DHRET>K(+O5Z#ZQV(LTYRZQ'""D%H2F%$0';;\R(G
M4,8'%#E?SJXY%J+6`:S!-.DOO-4UA54BK,"O;*US6"#X"J4J%.9IBV3&2%QM
M@BJ1$05G=81D(^`&S10=%5R"R$MEE`].!+5&*&HC8U4@I+0NYTX$R]%-,,7&
MXI-TEL%OR:RY!7:WV%U+XFDZG]*_VBX?-*Y1/R@C'0J/W_^X",(M,5S^2$:M
M#<@-HEL71%&@#`1!:ZB<E>@]>E#4DQ@%]&K&AM?"Z;KA3Z[,\?C**_S?KASN
M]>)FE^VE&TWL83<N*I5?)M/F"E`YT9`3NJ,:+EH8$+857B;]`V#$CQ<HT0%.
M,%VF7=#TE&C0G?Y'ON[X!4,,%R8'4\?I?9.I^^OI:[&17Q7SJZ(A"40C_H%'
M8Y\-\.SYF`DW*J3PB08*A5S%`T!%C':PY)Q*[JA-_@ZA]IAW@=S;HO:.>2H#
M^L!$9%=?5Y5FLL-\A1X/\T3,.4T1^*>:#0LGY"/RJ6]0D#0<S/$,0^T,Q:R%
MKK')@D9JZW^2AZJK'!9J0^?/5%*<T]C"=F;=0<8NB0??Q[`66Q*;2I&K7)%)
M$H(TX291^?OJTJ1C:=+/8NMI^`:!YJ[+140!B;HIA8F4S#F&9A@;[EKOU4+O
M8+1EI<F(WZ8+N?*5%EL"0[F>K7NDMG9CT9QJ2;4*$Y`Y9>,Q%,Z6\=)6LULI
M)-"MD/)P/*_0P%.-;AM?"4A[3/S?GL#SA14#)7PL+\P-LU;.FI*=2K%E+<L5
MS:$CP]N7B3V)S_/[`:OS9-RP-KX%:3GQIQ2:NTDY7GB[%U$F8QYDHI%UH>$1
MM5KNU%0*)B._U6M!#;6I#8*E6&]C:SS3(SZ'C,I9VIP)^$B&*"Q[JR1&4\$'
MB1P^U<I132715U6:151K$J$7,J8LTFW#B`Z>^4E92$6M<^1XQ)NF"*&]I>R>
M%T<+T>Q7##X0'=]OCD_FN*'1_2PVJJQ+TC.SI+YRO%:E"G')O!,7VKB,H/!+
M$V5]LRK><:Z36^/5TL0)"[CD,3A4F,`*PU/_=J?3XIJSV5-;J6.QFZ^"DR'O
MU$$K3KQ/63UL':J:Y\1+I^)^VBW*%5^S0EUUDJMF,*A;1`8VO:9MG>_8F;C/
MK]%))DW2]F^J@Y>IX.3[@?3Y\6ET,\RX<$H#9[5W9]I*H<\PR+.#;Y&4/P5H
M-S4;GYUB-E*5@\^EYH.A=LTI?S?`":TI?B%B8+,0\CK23MJRXG/>T*<-FDXV
M'$+_)IO0Y]E@MC_#)Q]/N_LVVA:;[9'5H\EY11R9HRJ0.=[2OYU?3V:TLG"#
<"NZT(-E9X1HN!%G^;&*HW/(R^1=T<A-!2PH``!R9
`
end

>Fix:
	Sorry, don't know.



Home | Main Index | Thread Index | Old Index