| 1 /* This file is part of the Project Athena Zephyr Notification System. |
|
| 2 * It contains source for the ZSendNotice function. |
|
| 3 * |
|
| 4 * Created by: Robert French |
|
| 5 * |
|
| 6 * Copyright (c) 1987 by the Massachusetts Institute of Technology. |
|
| 7 * For copying and distribution information, see the file |
|
| 8 * "mit-copyright.h". |
|
| 9 */ |
|
| 10 |
|
| 11 #include "internal.h" |
|
| 12 |
|
| 13 Code_t ZSendNotice(notice, cert_routine) |
|
| 14 ZNotice_t *notice; |
|
| 15 Z_AuthProc cert_routine; |
|
| 16 { |
|
| 17 return(ZSrvSendNotice(notice, cert_routine, Z_XmitFragment)); |
|
| 18 } |
|
| 19 |
|
| 20 Code_t ZSrvSendNotice(notice, cert_routine, send_routine) |
|
| 21 ZNotice_t *notice; |
|
| 22 Z_AuthProc cert_routine; |
|
| 23 Code_t (*send_routine)(); |
|
| 24 { |
|
| 25 Code_t retval; |
|
| 26 ZNotice_t newnotice; |
|
| 27 char *buffer; |
|
| 28 int len; |
|
| 29 |
|
| 30 if ((retval = ZFormatNotice(notice, &buffer, &len, |
|
| 31 cert_routine)) != ZERR_NONE) |
|
| 32 return (retval); |
|
| 33 |
|
| 34 if ((retval = ZParseNotice(buffer, len, &newnotice)) != ZERR_NONE) |
|
| 35 return (retval); |
|
| 36 |
|
| 37 retval = Z_SendFragmentedNotice(&newnotice, len, cert_routine, |
|
| 38 send_routine); |
|
| 39 |
|
| 40 free(buffer); |
|
| 41 |
|
| 42 return (retval); |
|
| 43 } |
|