rem: if (get_dest_user( msg, &user)==-1)
add: if (get_dest_user( msg, &user, 0)==-1)
context: static inline int do_script_action(struct sip_msg *msg, int action){	str  body = {0,0};	str  user = {0,0};	str  bin  = {0,0};	str  log  = {0,0};	char foo;	/* content-length (if present) */	if ( (!msg->content_length && parse_headers(msg,HDR_CONTENTLENGTH,0)==-1)	|| !msg->content_length) {		LOG(L_ERR,"ERROR:cpl-c:do_script_action: no Content-Length "			"hdr found!\n");		goto error;	}	body.len = get_content_length( msg );	/* get the user name */	if (get_dest_user( msg, &user)==-1)		goto error;	/* make the user zero terminated -  it's safe - it'a an incomming request,	 * so I'm the only process working with it (no sync problems) and user	 * points inside the message and all the time it's something after it (no	 * buffer overflow)*/	foo = user.s[user.len];	user.s[user.len] = 0;	/* we have the script and the user */	switch (action) {		case STORE_SCRIPT :			/* check the len -> it must not be 0 */			if (body.len==0) {				LOG(L_ERR,"ERROR:cpl-c:do_script_action: 0 content-len found "					"for store\n");				goto error_1;			}			/* get the message's body */			body.s = get_body( msg );			if (body.s==0) {				LOG(L_ERR,"ERROR:cpl-c:do_script_action: cannot extract "					"body from msg!\n");				goto error_1;			}			/* now compile the script and place it into database */			/* get the binary coding for the XML file */			if ( encodeCPL( &body, &bin, &log)!=1) {				cpl_err = &bad_cpl;				goto error_1;			}			/* write both the XML and binary formats into database */			if (write_to_db( db_hdl, user.s, &body, &bin)!=1) {				cpl_err = &intern_err;				goto error_1;			}			break;		case REMOVE_SCRIPT:			/* check the len -> it must be 0 */			if (body.len!=0) {				LOG(L_ERR,"ERROR:cpl-c:do_script_action: non-0 content-len "					"found for remove\n");				goto error_1;			}			/* remove the script for the user */			if (rmv_from_db( db_hdl, user.s)!=1) {				cpl_err = &intern_err;				goto error_1;			}			break;	}	if (log.s) pkg_free( log.s );	user.s[user.len] = foo;	return 0;error_1:	if (log.s) pkg_free( log.s );	user.s[user.len] = foo;error:	return -1;}