rem: }
context: int ds_hash_ruri(struct sip_msg *msg, unsigned int *hash){	str hostport;	str* uri;			if(msg==NULL || hash == NULL)	{		LOG(L_ERR, "DISPATCHER:ds_hash_ruri: bad parameters\n");		return -1;	}	if (parse_sip_msg_uri(msg)<0){		LOG(L_ERR, "DISPATCHER: ds_hash_ruri: ERROR: bad request uri\n");		return -1;	}		uri=GET_RURI(msg);	hostport=*uri; /* we want only sip:user@host:port */	if (msg->parsed_uri.port.s){		hostport.len=(int)(msg->parsed_uri.port.s-uri->s)+						msg->parsed_uri.port.len;	}else if(msg->parsed_uri.host.s){		hostport.len=(int)(msg->parsed_uri.host.s-uri->s)+						msg->parsed_uri.host.len;	}else{ /* missing host! => error */		LOG(L_ERR, "DISPATCHER: ds_hash_uri: ERROR: bad uri <%.*s>\n",					uri->len, uri->s);		return -1;	}		*hash = ds_get_hash(&hostport, NULL);	return 0;}