--- param/loadparm.c.orig Fri Aug 25 13:40:09 2006 +++ param/loadparm.c Fri Aug 25 13:46:28 2006 @@ -3852,7 +3852,7 @@ BOOL dump_a_parameter(int snum, char *parm_name, FILE * f, BOOL isGlobal) { - service * pService = ServicePtrs[snum]; + service * pService = NULL; int i; BOOL result = False; parm_class p_class; @@ -3883,8 +3883,13 @@ if (isGlobal) { p_class = P_GLOBAL; flag = FLAG_GLOBAL; - } else + } else { + if (!VALID_SNUM(snum)) { + return False; + } + pService = ServicePtrs[snum]; p_class = P_LOCAL; + } for (i = 0; parm_table[i].label; i++) { if (strwicmp(parm_table[i].label, parm_name) == 0 &&