Mercurial > pidgin
view libpurple/protocols/zephyr/ZSendNot.c @ 30255:502b9d2f2d7a
jabber: Don't crash on caps that include an empty <value/> in the Software Information extended info. Fixes #12292
(The part at fault is <field var='os_version'><value/></field>)
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Fri, 09 Jul 2010 22:49:17 +0000 |
parents | 97c40983e5f7 |
children | a8cc50c2279f |
line wrap: on
line source
/* This file is part of the Project Athena Zephyr Notification System. * It contains source for the ZSendNotice function. * * Created by: Robert French * * Copyright (c) 1987 by the Massachusetts Institute of Technology. * For copying and distribution information, see the file * "mit-copyright.h". */ #include "internal.h" Code_t ZSendNotice(notice, cert_routine) ZNotice_t *notice; Z_AuthProc cert_routine; { return(ZSrvSendNotice(notice, cert_routine, Z_XmitFragment)); } Code_t ZSrvSendNotice(notice, cert_routine, send_routine) ZNotice_t *notice; Z_AuthProc cert_routine; Code_t (*send_routine)(); { Code_t retval; ZNotice_t newnotice; char *buffer; int len; if ((retval = ZFormatNotice(notice, &buffer, &len, cert_routine)) != ZERR_NONE) return (retval); if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE) return (retval); retval = Z_SendFragmentedNotice(&newnotice, len, cert_routine, send_routine); free(buffer); return (retval); }