src/ssl_sock.c
static int srv_parse_crt(char **args, int *cur_arg, struct proxy *px, struct server *newsrv, char **err)
{
	if (!*args[*cur_arg + 1]) {
		if (err)
			memprintf(err, "'%s' : missing certificate file path", args[*cur_arg]);
		return ERR_ALERT | ERR_FATAL;
	}

	if ((*args[*cur_arg + 1] != '/') && global.crt_base)
		memprintf(&newsrv->ssl_ctx.client_crt, "%s/%s", global.ca_base, args[*cur_arg + 1]);
	else
		memprintf(&newsrv->ssl_ctx.client_crt, "%s", args[*cur_arg + 1]);

	return 0;
}
/* parse the "crt" server keyword */
parse the "crt" server keyword
parse the " crt " server keyword
static int srv_parse_crt(char **args, int *cur_arg, struct proxy *px, struct server *newsrv, char **err)
{
	if (!*args[*cur_arg + 1]) {
		if (err)
			memprintf(err, "'%s' : missing certificate file path", args[*cur_arg]);
		return ERR_ALERT | ERR_FATAL;
	}
	if ((*args[*cur_arg + 1] != '/') && global.crt_base)
		memprintf(&newsrv->ssl_ctx.client_crt, "%s/%s", global.ca_base, args[*cur_arg + 1]);
	else
		memprintf(&newsrv->ssl_ctx.client_crt, "%s", args[*cur_arg + 1]);
	return 0;
}
static int srv_parse_crt ( char * * args , int * cur_arg , struct proxy * px , struct server * newsrv , char * * err ) { if ( ! * args [ * cur_arg + 1 ] ) { if ( err ) memprintf ( err , " " , args [ * cur_arg ] ) ; return ERR_ALERT | ERR_FATAL ; } if ( ( * args [ * cur_arg + 1 ] != ' ' ) && global . crt_base ) memprintf ( & newsrv -> ssl_ctx . client_crt , " " , global . ca_base , args [ * cur_arg + 1 ] ) ; else memprintf ( & newsrv -> ssl_ctx . client_crt , " " , args [ * cur_arg + 1 ] ) ; return 0 ; }
parse the "crt" server keyword
parse the " crt " server keyword