NULL /* Z */
};
+void CtdlMsgSetCM_Fields(struct CtdlMessage *Msg, const char which, const char *buf, long length)
+{
+ if (Msg->cm_fields[which] != NULL)
+ free (Msg->cm_fields[which]);
+ Msg->cm_fields[which] = malloc(length + 1);
+ memcpy(Msg->cm_fields[which], buf, length);
+ Msg->cm_fields[which][length] = '\0';
+}
+
/*
* This function is self explanatory.
* (What can I say, I'm in a weird mood today...)
if (NewMsg->cm_fields[i] == NULL)
return 0;
memcpy(NewMsg->cm_fields[i], OrgMsg->cm_fields[i], len);
+ NewMsg->cm_fields[i][len] = '\0';
return 1;
}
if (is_valid_message(OrgMsg) == 0)
return NULL;
- NewMsg = (struct CtdlMessage *)malloc(sizeof(struct CtdlMessage *));
+ NewMsg = (struct CtdlMessage *)malloc(sizeof(struct CtdlMessage));
if (NewMsg == NULL)
return NULL;
- memcpy(NewMsg, OrgMsg, sizeof(struct CtdlMessage *));
+ memcpy(NewMsg, OrgMsg, sizeof(struct CtdlMessage));
- memset(NewMsg->cm_fields, 0, sizeof(NewMsg->cm_fields));
+ memset(&NewMsg->cm_fields, 0, sizeof(char*) * 256);
for (i = 0; i < 256; ++i)
{
*/
void quickie_message(const char *from,
const char *fromaddr,
- char *to,
+ const char *to,
char *room,
const char *text,
int format_type,
void flood_protect_quickie_message(const char *from,
const char *fromaddr,
- char *to,
+ const char *to,
char *room,
const char *text,
int format_type,