typedef struct ManualRetransmitNode ManualRetransmitNode;
struct ManualRetransmitNode {
- ManualRetransmitNode *back, *next;
+ struct { ManualRetransmitNode *back, *next; } others;
char *name;
int lname;
RetransmitUrgentNode rn;
mrn &&
!(mrn->lname == lmrname &&
!memcmp(mrn->name, mrname, lmrname));
- mrn= mrn->next);
+ mrn= mrn->others.next);
if (mrn) {
retransmit_urgent_cancel(&mrn->rn);
} else {
mrn->name= mmalloc(lmrname);
memcpy(mrn->name, mrname, lmrname);
mrn->lname= lmrname;
+ DLIST2_APPEND(mrns,mrn,others);
}
}
if (!retrans) {
return badcmd(ps,"nmra must have slot to cancel or data to send");
}
+ DLIST2_REMOVE(mrns,mrn,others);
free(mrn->name);
free(mrn);
return 0;
const CmdInfo toplevel_cmds[]= {
{ "!pic", cmd_pic, CIXF_ANYSTA|CIXF_FORCE },
- { "!nmra", cmd_nmra, },
+ { "!nmra", cmd_nmra, CIXF_ANYSTA },
{ "noop", cmd_noop, CIXF_ANYSTA },
{ "movpos", cmd_movpos },
//{ "autopoint", cmd_autopoint },