Annotation of ChivanetAimPidgin/oscarprpl/src/c/family_stats.c, revision 1.1
1.1 ! snw 1: /*
! 2: * Purple's oscar protocol plugin
! 3: * This file is the legal property of its developers.
! 4: * Please see the AUTHORS file distributed alongside this file.
! 5: *
! 6: * This library is free software; you can redistribute it and/or
! 7: * modify it under the terms of the GNU Lesser General Public
! 8: * License as published by the Free Software Foundation; either
! 9: * version 2 of the License, or (at your option) any later version.
! 10: *
! 11: * This library is distributed in the hope that it will be useful,
! 12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
! 13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
! 14: * Lesser General Public License for more details.
! 15: *
! 16: * You should have received a copy of the GNU Lesser General Public
! 17: * License along with this library; if not, write to the Free Software
! 18: * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
! 19: */
! 20:
! 21: /*
! 22: * Family 0x000b - Statistics.
! 23: *
! 24: */
! 25:
! 26: #include "oscar.h"
! 27:
! 28: static int
! 29: reportinterval(OscarData *od, FlapConnection *conn, aim_module_t *mod, FlapFrame *frame, aim_modsnac_t *snac, ByteStream *bs)
! 30: {
! 31: int ret = 0;
! 32: aim_rxcallback_t userfunc;
! 33: guint16 interval;
! 34:
! 35: interval = byte_stream_get16(bs);
! 36:
! 37: if ((userfunc = aim_callhandler(od, snac->family, snac->subtype)))
! 38: ret = userfunc(od, conn, frame, interval);
! 39:
! 40: return ret;
! 41: }
! 42:
! 43: static int
! 44: snachandler(OscarData *od, FlapConnection *conn, aim_module_t *mod, FlapFrame *frame, aim_modsnac_t *snac, ByteStream *bs)
! 45: {
! 46: if (snac->subtype == 0x0002)
! 47: return reportinterval(od, conn, mod, frame, snac, bs);
! 48:
! 49: return 0;
! 50: }
! 51:
! 52: int
! 53: stats_modfirst(OscarData *od, aim_module_t *mod)
! 54: {
! 55: mod->family = SNAC_FAMILY_STATS;
! 56: mod->version = 0x0001;
! 57: mod->toolid = 0x0104;
! 58: mod->toolversion = 0x0001;
! 59: mod->flags = 0;
! 60: strncpy(mod->name, "stats", sizeof(mod->name));
! 61: mod->snachandler = snachandler;
! 62:
! 63: return 0;
! 64: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>