Mercurial > pidgin.yaz
view libpurple/protocols/zephyr/ZFmtAuth.c @ 16039:ded8da3de5f8
This should get all the Win32 Makefiles in line with
the names Pidgin and Purple. I tried to separate PIDGIN
and PURPLE values as much as a could to make it easier to
divide them later if that's ever desired.
author | Kevin Stange <kevin@simguy.net> |
---|---|
date | Tue, 10 Apr 2007 06:19:29 +0000 |
parents | 5fe8042783c1 |
children | a8cc50c2279f |
line wrap: on
line source
/* This file is part of the Project Athena Zephyr Notification System. * It contains source for the ZFormatAuthenticNotice function. * * Created by: Robert French * Copyright (c) 1987,1988 by the Massachusetts Institute of Technology. * For copying and distribution information, see the file * "mit-copyright.h". */ #include "internal.h" #ifdef ZEPHYR_USES_KERBEROS Code_t ZFormatAuthenticNotice(notice, buffer, buffer_len, len, session) ZNotice_t *notice; register char *buffer; register int buffer_len; int *len; C_Block session; { ZNotice_t newnotice; char *ptr; int retval, hdrlen; newnotice = *notice; newnotice.z_auth = 1; newnotice.z_authent_len = 0; newnotice.z_ascii_authent = ""; if ((retval = Z_FormatRawHeader(&newnotice, buffer, buffer_len, &hdrlen, &ptr, NULL)) != ZERR_NONE) return (retval); #ifdef NOENCRYPTION newnotice.z_checksum = 0; #else newnotice.z_checksum = (ZChecksum_t)des_quad_cksum(buffer, NULL, ptr - buffer, 0, (C_Block*)session); #endif if ((retval = Z_FormatRawHeader(&newnotice, buffer, buffer_len, &hdrlen, NULL, NULL)) != ZERR_NONE) return (retval); ptr = buffer+hdrlen; if (newnotice.z_message_len+hdrlen > buffer_len) return (ZERR_PKTLEN); (void) memcpy(ptr, newnotice.z_message, newnotice.z_message_len); *len = hdrlen+newnotice.z_message_len; if (*len > Z_MAXPKTLEN) return (ZERR_PKTLEN); return (ZERR_NONE); } #endif