--- freem/src/ssvn_routine.c 2025/03/09 19:50:47 1.3 +++ freem/src/ssvn_routine.c 2025/03/22 18:43:54 1.4 @@ -1,5 +1,5 @@ /* - * $Id: ssvn_routine.c,v 1.3 2025/03/09 19:50:47 snw Exp $ + * $Id: ssvn_routine.c,v 1.4 2025/03/22 18:43:54 snw Exp $ * ^$ROUTINE ssvn * * @@ -24,6 +24,9 @@ * along with FreeM. If not, see . * * $Log: ssvn_routine.c,v $ + * Revision 1.4 2025/03/22 18:43:54 snw + * Make STRLEN 255 chars and add BIGSTR macro for larger buffers + * * Revision 1.3 2025/03/09 19:50:47 snw * Second phase of REUSE compliance and header reformat * @@ -53,18 +56,18 @@ void ssvn_routine_add_dir(char *rtndir) { DIR *dir; struct dirent *ent; - char filename[STRLEN]; - char rtnname[256]; + char filename[PATHLEN]; + char rtnname[PATHLEN]; char *rtnext; - char k_buf[512]; - char d_buf[512]; - char t_buf[512]; + char k_buf[STRLEN]; + char d_buf[STRLEN]; + char t_buf[STRLEN]; dir = opendir (rtndir); while ((ent = readdir (dir)) != NULL) { - strncpy (filename, ent->d_name, STRLEN - 1); + strncpy (filename, ent->d_name, PATHLEN); rtnext = ent->d_name + (strlen (ent->d_name) - 2); @@ -73,21 +76,21 @@ void ssvn_routine_add_dir(char *rtndir) strcpy (rtnname, ent->d_name); rtnname[strlen (ent->d_name) - 2] = '\0'; - snprintf (k_buf, 512 - 1, "^$ROUTINE\202%s\202CHARACTER\201", rtnname); - snprintf (d_buf, 512 - 1, "M\201"); + snprintf (k_buf, STRLEN, "^$ROUTINE\202%s\202CHARACTER\201", rtnname); + snprintf (d_buf, STRLEN, "M\201"); symtab_bltin (set_sym, k_buf, d_buf); - snprintf (k_buf, 512 - 1, "^$ROUTINE\202%s\202NAMESPACE\201", rtnname); + snprintf (k_buf, STRLEN, "^$ROUTINE\202%s\202NAMESPACE\201", rtnname); if (rtnname[0] == '%') { - snprintf (d_buf, 512 - 1, "SYSTEM\201"); + snprintf (d_buf, STRLEN, "SYSTEM\201"); } else { - snprintf (d_buf, 512 - 1, "%s\201", nsname); + snprintf (d_buf, STRLEN, "%s\201", nsname); } symtab_bltin (set_sym, k_buf, d_buf); - snprintf (k_buf, 512 - 1, "^$ROUTINE\202%s\202PATH\201", rtnname); + snprintf (k_buf, STRLEN, "^$ROUTINE\202%s\202PATH\201", rtnname); if (rtnname[0] == '%') { stcpy (t_buf, rou0plib); @@ -97,7 +100,7 @@ void ssvn_routine_add_dir(char *rtndir) } stcnv_m2c (t_buf); - snprintf (d_buf, 512 - 1, "%s/%s\201", t_buf, filename); + snprintf (d_buf, STRLEN, "%s/%s\201", t_buf, filename); symtab_bltin (set_sym, k_buf, d_buf);