Esempio n. 1
0
CcnbMsg CcnLAC_read(CcnLAC self) {
	if (!CcnLAC_ready(self)) return NULL;
	struct ccn_charbuf* cbuf = CcnbOR_read(self->ccnbor);
	if (cbuf == NULL) return NULL;
	CcnbMsg msg = CcnbMsg_fromEncap(cbuf);
	if (CcnbMsg_verifyIntegrity(msg)) return msg;
	else {
		self->error = true;
		return NULL;
	}
}
Esempio n. 2
0
NdnlpPkt Link_read(Link self) {
	if (self->lmd != NULL) {
		SockAddr addr = SockAddr_clone(self->addr);
		NdnlpPkt pkt = LMD_read(self->lmd, addr);
		SockAddr_dtor(addr);
		return pkt;
	} else {
		struct ccn_charbuf* cbuf = CcnbOR_read(self->ccnbor);
		if (cbuf == NULL) return NULL;
		return (NdnlpPkt)cbuf;
	}
}