if ((de = (domain_entry *)dp) == NULL)
if (de == NULL)
PUBLIC BOOL HTConfirmCookie ARGS4(	void *, 	dp,	CONST char *,	server,	CONST char *,	name,	CONST char *,	value){    domain_entry *de;    int ch, namelen, valuelen, space_free;    if ((de = (domain_entry *)dp) == NULL)	return FALSE;#ifdef ENHANCED_COOKIES    /*	If the user has specified a list of domains to allow or deny    **	from the config file, then they'll already have de->bv set to    **	ACCEPT_ALWAYS or REJECT_ALWAYS so we can relax and let the    **	default cookie handling code cope with this fine.  I hope.    */#endif    /*    **	If the user has specified a constant action, don't prompt at all.    */    if (de->bv == ACCEPT_ALWAYS || de->bv == FROM_FILE)	return TRUE;    if (de->bv == REJECT_ALWAYS)	return FALSE;    if (dump_output_immediately) {	/*	**  Non-interactive, can't respond.  Use the LYSetCookies value	*   based on its compilation or configuration setting, or on the	**  command line toggle. - FM	*/	return LYSetCookies;    }    /*    **	Estimate how much of the cookie we can show.    */    if (de != NULL) {	if (de->bv == ACCEPT_ALWAYS)	    return TRUE;	if (de->bv == REJECT_ALWAYS)	    return FALSE;    }    space_free = (((LYcols - 1)	       - strlen(ADVANCED_COOKIE_CONFIRMATION))	       - strlen(server));    if (space_free < 0)	space_free = 0;    namelen = strlen(name);    valuelen = strlen(value);    if ((namelen + valuelen) > space_free) {	/*	**  Argh... there isn't enough space on our single line for	**  the whole cookie.  Reduce them both by a percentage.	**  This should be smarter.	*/        int percentage;  /* no float */        percentage = (100 * space_free) / (namelen + valuelen);        namelen = (percentage * namelen) / 100;        valuelen = (percentage * valuelen) / 100;    }    if(!LYAcceptAllCookies) {	char *message = 0;	HTSprintf(&message, ADVANCED_COOKIE_CONFIRMATION,		 server, namelen, name, valuelen, value);	_statusline(message);	FREE(message);    }    while (1) {	if(!LYAcceptAllCookies) {	    ch = LYgetch();	} else {	    ch = 'A';	}#ifdef VMS	if (HadVMSInterrupt) {	    HadVMSInterrupt = FALSE;	    ch = 'N';	}#endif /* VMS */	switch(TOUPPER(ch)) {	    case 'A':		/*		**  Set to accept all cookies for this domain.		*/		de->bv = ACCEPT_ALWAYS;		HTUserMsg2(ALWAYS_ALLOWING_COOKIES, de->domain);		return TRUE;	    case 'N':	    case 7:	/* Ctrl-G */	    case 3:	/* Ctrl-C */		/*		**  Reject the cookie.		*/		HTUserMsg(REJECTING_COOKIE);		return FALSE;	    case 'V':		/*		**  Set to reject all cookies from this domain.		*/		de->bv = REJECT_ALWAYS;		HTUserMsg2(NEVER_ALLOWING_COOKIES, de->domain);		return FALSE;	    case 'Y':		/*		**  Accept the cookie.		*/		HTInfoMsg(ALLOWING_COOKIE);		return TRUE;	    default:		continue;	}    }}