Re: [BUG] Smsbox crash with empty messages

Aarno Syvänen <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization Wiral Ltd
Message-ID <[email protected]>
Bruno David Rodrigues wrote:
> 
> ----- Original Message -----
> From: "Stipe Tolj" <[email protected]>
> To: "Bruno David Rodrigues" <[email protected]>
> Cc: <[email protected]>
> Sent: Monday, March 04, 2002 12:49 PM
> Subject: Re: [BUG] Smsbox crash with empty messages
> 
> > Bruno David Rodrigues wrote:
> > >
> > > smsbox panics on smsbox line 1180 because of a empty text field (NULL):
> > >
> > > http://www.kannel.3glab.org/cgi-bin/viewcvs.cgi/gateway/gw/smsbox.c?
> > > annotate=1.174#1180
> > >
> > > In patch 1.164 at 2002/01/25:
> > >  udh == NULL ? ( text == NULL ? "" : octstr_get_cstr(text) ) : "<< UDH
> >>");
> > >
> > >  udh == NULL ? ( text == NULL ? "" : octstr_get_cstr(text) ) :
> > >                 octstr_get_cstr(text));
> > >
> > > Why ?!
> > > I'm reverting this line
> >
> > octstr_get_cstr() requires an non-NULL octstr pointer.
> >
> > So if text == NULL then octstr_get_cstr() throws the assertion error
> > and panics the smsbox.
> >
> > BTW, in the second statement you are not garanteeing that call to
> > octstr_get_cstr() does not have text == NULL, it's only handled in the
> > case udh == NULL.
> 
> :P
> 
> I asked why did syvanen changed the code like that !
> 
> I know what octstr_get_cstr does ;), that's why I've looked everywhere for
> lines using it and tried to be careful and inserted the (text == NULL ? "" :
> octstr_get_cstr(text)) back when I added the possibility of empty messages
> to smsbox.
> 
> And it this particular line, we've talked about that, in general, when you
> have
> a udh, the text probably is binary (there weren't EMS back then), so it
> was not necessary to print the text when exists a udh. I guess syvanen
> thought in printing the text even if there is a udh.

Actually syvanen did not think *anything* :(( You should *not* commit
any-
thing like that. And I think that we should add empty message tests to
all
test scripts. Make check is supposed to catch errors like this.

aarno
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.