Mercurial > pidgin
view src/protocols/zephyr/ZSendNot.c @ 9740:2bb5e2cd64bd
[gaim-migrate @ 10605]
" A few days back, someone on #gaim was wondering how to
block IM's from IRC, which isn't supported by gaim, as
this isn't supported at a protocol level. I decided to
implement gaim's privacy options (permit lists, deny
lists, block all users, and permit people on buddy
list) at a local level for IRC and
Zephyr. Jabber, SILC, and Trepia don't seem to support
deny or permit lists in Gaim, but I don't use the
latter two protocols and wasn't sure about how to
implemnt in in Jabber.
When implementing it, I noticed that changes in privacy
settings didn't automatically cause blist.xml to get
scheduled
for writing (even on exit). To fix this, I needed to
make schedule_blist_save in blist.c non-static and call
it from serv_set_permit_deny() in server.c, and
gaim_privacy_{permit,deny}_{add,remove} in privacy.c ." --Arun A Tharuvai
committer: Tailor Script <tailor@pidgin.im>
| author | Luke Schierer <lschiere@pidgin.im> |
|---|---|
| date | Wed, 11 Aug 2004 23:52:48 +0000 |
| parents | 43d6c08d7e96 |
| children | 64895571248f |
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 * * $Source$ * $Author: chipx86 $ * * Copyright (c) 1987 by the Massachusetts Institute of Technology. * For copying and distribution information, see the file * "mit-copyright.h". */ /* $Header$ */ #ifndef lint static char rcsid_ZSendNotice_c[] = "$Header$"; #endif #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); }
