// max # args on a configuration line
#define MAX_LINE_ARGS 64
+// crt-list parsing factor for LINESIZE and MAX_LINE_ARGS
+#define CRTLIST_FACTOR 32
+
// max # args on a stats socket
// This should cover at least 5 + twice the # of data_types
#define MAX_STATS_ARGS 64
int ssl_sock_load_cert_list_file(char *file, struct bind_conf *bind_conf, struct proxy *curproxy, char **err)
{
- char thisline[LINESIZE];
+ char thisline[LINESIZE*CRTLIST_FACTOR];
FILE *f;
struct stat buf;
int linenum = 0;
int arg;
int newarg;
char *end;
- char *args[MAX_LINE_ARGS + 1];
+ char *args[MAX_LINE_ARGS*CRTLIST_FACTOR + 1];
char *line = thisline;
linenum++;
*line = 0;
}
else if (newarg) {
- if (arg == MAX_LINE_ARGS) {
+ if (arg == MAX_LINE_ARGS*CRTLIST_FACTOR) {
memprintf(err, "too many args on line %d in file '%s'.",
linenum, file);
cfgerr = 1;