/***************************************************************************/ /* Module: $Id: submit.c,v 1.1 1998/05/01 15:12:12 maf Exp $ /* Description: /* Author: maf /* Notes: /***************************************************************************/ /* $Log: submit.c,v $ Revision 1.1 1998/05/01 15:12:12 maf mail to remedy gateway PR: Reviewed by: Submitted by: Obtained from: */ #include #include #include #include #include #include #include #include #include "main.h" submit_request(control, msg, from, reply_to, subject, csum, entry_id) ARControlStruct *control; char *msg, *from, *reply_to, *subject, *csum, *entry_id; { int ret; char schema[AR_MAX_NAME_SIZE + 1]; ARStatusList ar_status; ARFieldValueList field_list; unsigned int item, item2; extern int debug, errno; int err, err2; ARFieldValueStruct fvalues[7]; bzero(&schema, sizeof schema); bzero(&ar_status, sizeof ar_status); bzero(&field_list, sizeof field_list); bzero(&fvalues, sizeof fvalues); fvalues[0].fieldId = 1427299010; /* Source */ fvalues[1].fieldId = 1427299020; /* Access Code */ fvalues[2].fieldId = 8; /* Short Description */ fvalues[3].fieldId = 1427299014; /* Source Address */ fvalues[4].fieldId = 1427299012; /* Reply-To Address */ fvalues[5].fieldId = 1427299001; /* Message Text */ fvalues[6].fieldId = 2; /* Submitter */ fvalues[0].value.dataType = AR_DATA_TYPE_CHAR; fvalues[1].value.dataType = AR_DATA_TYPE_CHAR; fvalues[2].value.dataType = AR_DATA_TYPE_CHAR; fvalues[3].value.dataType = AR_DATA_TYPE_CHAR; fvalues[4].value.dataType = AR_DATA_TYPE_CHAR; fvalues[5].value.dataType = AR_DATA_TYPE_CHAR; fvalues[6].value.dataType = AR_DATA_TYPE_CHAR; fvalues[0].value.u.charVal = "e-mail"; fvalues[1].value.u.charVal = csum; fvalues[2].value.u.charVal = subject; fvalues[3].value.u.charVal = from; fvalues[4].value.u.charVal = reply_to; fvalues[5].value.u.charVal = msg; fvalues[6].value.u.charVal = "daemon"; field_list.numItems = 7; field_list.fieldValueList = (ARFieldValueStruct*)&fvalues; strcpy(schema, "TSC Dispatch"); /* assume the worst */ err = 1; if ((ret = ARCreateEntry(control, schema, &field_list, entry_id, &ar_status)) != AR_RETURN_OK) { if (ret != AR_RETURN_BAD_STATUS) ar_print_status(&ar_status); if (ret > AR_RETURN_GOOD) { fprintf(stderr, "ARCreateEntry() failed.\n"); goto out_submit_request; } } /* free memory allocated to arStatus */ FreeARStatusList(&ar_status, (ARBoolean)FALSE); err = 0; out_submit_request: FreeARStatusList(&ar_status, (ARBoolean)FALSE); return err; }