rem: dpr.s = malloc( dpr.len );
add: dpr.s = shm_malloc( dpr.len );
context: int send_dpr( struct peer *dst_peer, unsigned int disc_cause){	char *ptr;	str dpr;	dpr.len = peer_table->std_req.len + peer_table->dpr_avp.len;	dpr.s = malloc( dpr.len );	if (!dpr.s) {		LOG(L_ERR,"ERROR:send_dpr: no more free memory\n");		goto error;	}	ptr = dpr.s;	/* standar answer part */	memcpy( ptr, peer_table->std_req.s, peer_table->std_req.len );	((unsigned int*)ptr)[0] |= htonl( dpr.len );	((unsigned int*)ptr)[1] |= DP_MSG_CODE;	ptr += peer_table->std_req.len;	/* disconnect cause avp */	memcpy( ptr, peer_table->dpr_avp.s, peer_table->dpr_avp.len );	((unsigned int*)ptr)[ AVP_HDR_SIZE>>2 ] |= htonl( disc_cause );	/* send the buffer */	return send_aaa_request( &dpr, 0, dst_peer);error:	return -1;}