rem: if (linker) return get_hlink_payload( linker, struct trans, linker );
add: if (linker) { tr = get_hlink_payload( linker, struct trans, linker ); if (rmv_from_timer_list( &(tr->timeout), tr_timeout_timer )!=-1) atomic_dec( &(tr->ref_cnt) ); return tr; }
context: inline static struct trans* transaction_lookup(struct peer *p,							unsigned int endtoendID, unsigned int hopbyhopID){	struct h_link *linker;	str           s;	unsigned int  hash_code;	s.s = (char*)&endtoendID;	s.len = sizeof(endtoendID);	hash_code = hash( &s , p->trans_table->hash_size );	linker = cell_lookup_and_remove( p->trans_table, hash_code, hopbyhopID);	if (linker)		return get_hlink_payload( linker, struct trans, linker );	return 0;}