int supersedes(RoutingDirective *directive, char *luggage_id, char *departure) { if (directive == NULL) { return 0; } if (strcmp(directive->luggage_id, luggage_id) != 0) { return supersedes(directive->next_directive, luggage_id, departure); } if (strcmp(directive->departure, departure) == 0) { return 1; } return 0; }
int superseded(RoutingDirective *directive) { return supersedes(directive->next_directive, directive->luggage_id, directive->departure); }
void NewsArticle::assemble() { Headers::Base *h; QCString newHead = ""; //Message-ID if((h = messageID(false)) != 0) newHead += h->as7BitString() + "\n"; //Control if((h = control(false)) != 0) newHead += h->as7BitString() + "\n"; //Supersedes if((h = supersedes(false)) != 0) newHead += h->as7BitString() + "\n"; //From h = from(); // "From" is mandatory newHead += h->as7BitString() + "\n"; //Subject h = subject(); // "Subject" is mandatory newHead += h->as7BitString() + "\n"; //To if((h = to(false)) != 0) newHead += h->as7BitString() + "\n"; //Newsgroups if((h = newsgroups(false)) != 0) newHead += h->as7BitString() + "\n"; //Followup-To if((h = followUpTo(false)) != 0) newHead += h->as7BitString() + "\n"; //Reply-To if((h = replyTo(false)) != 0) newHead += h->as7BitString() + "\n"; //Mail-Copies-To if((h = mailCopiesTo(false)) != 0) newHead += h->as7BitString() + "\n"; //Date h = date(); // "Date" is mandatory newHead += h->as7BitString() + "\n"; //References if((h = references(false)) != 0) newHead += h->as7BitString() + "\n"; //Lines h = lines(); // "Lines" is mandatory newHead += h->as7BitString() + "\n"; //Organization if((h = organization(false)) != 0) newHead += h->as7BitString() + "\n"; //User-Agent if((h = userAgent(false)) != 0) newHead += h->as7BitString() + "\n"; //Mime-Version newHead += "MIME-Version: 1.0\n"; //Content-Type newHead += contentType()->as7BitString() + "\n"; //Content-Transfer-Encoding newHead += contentTransferEncoding()->as7BitString() + "\n"; //X-Headers int pos = h_ead.find("\nX-"); if(pos > -1) //we already have some x-headers => "recycle" them newHead += h_ead.mid(pos + 1, h_ead.length() - pos); else if(h_eaders && !h_eaders->isEmpty()) { for(h = h_eaders->first(); h; h = h_eaders->next()) { if(h->isXHeader() && (strncasecmp(h->type(), "X-KNode", 7) != 0)) newHead += h->as7BitString() + "\n"; } } h_ead = newHead; }