- sprintf(buf, "MSG0 %ld|1", msgnum);
- serv_puts(buf);
- serv_getln(buf, sizeof buf);
- if (buf[0] != '1') {
- convenience_page("770000", _("Error"), &buf[4]);
- return;
- }
- while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
- if (!strncasecmp(buf, "from=", 5)) {
- safestrncpy(whatuser, &buf[5], sizeof whatuser);
- }
- else if (!strncasecmp(buf, "node=", 5)) {
- strcat(whatuser, " @ ");
- strcat(whatuser, &buf[5]);
- }
- }
- Buf = NewStrBuf();
- serv_printf(buf, "DLAT %ld|%s", msgnum, partnum);
- StrBuf_ServGetln(Buf);
- if (GetServerStatus(Buf, NULL) != 6) {
- convenience_page("770000", "Error", &(ChrPtr(Buf)[4]));
+
+ Msg = (message_summary *) malloc(sizeof(message_summary));
+ memset(Msg, 0, sizeof(message_summary));
+ Msg->msgnum = msgnum;
+ VCMime = load_vcard(Msg);
+ if (VCMime == NULL) {
+ convenience_page("770000", _("Error"), "");///TODO: important message
+ DestroyMessageSummary(Msg);