rem: str b; static unsigned int last_rr_msg;  if (_m->id==last_rr_msg) { LOG(L_ERR, "ERROR: record_route: double attempt to record-route\n"); return -1; }  b.s = build_RR(_m, &b.len, 0); if (!b.s) { LOG(L_ERR, "add_rr(): Error while building Record-Route line\n"); return -2; }  if (insert_RR(_m, &b) < 0) { LOG(L_ERR, "add_rr(): Error while inserting Record-Route line\n"); pkg_free(b.s); return -3; }  last_rr_msg=_m->id; return 1;
add: return do_RR(_m, 1);
context: int record_route(struct sip_msg* _m, char* _s1, char* _s2){	str b;	static unsigned int last_rr_msg;	if (_m->id==last_rr_msg) {			LOG(L_ERR, "ERROR: record_route: double attempt to record-route\n");			return -1;	}		b.s = build_RR(_m, &b.len, 0);		if (!b.s) {		LOG(L_ERR, "add_rr(): Error while building Record-Route line\n");		return -2;	}	if (insert_RR(_m, &b) < 0) {		LOG(L_ERR, "add_rr(): Error while inserting Record-Route line\n");		pkg_free(b.s);		return -3;	}	last_rr_msg=_m->id;		return 1;}