--- freem/src/ssvn_job.c 2025/04/11 23:27:04 1.8 +++ freem/src/ssvn_job.c 2025/04/13 04:22:43 1.9 @@ -1,5 +1,5 @@ /* - * $Id: ssvn_job.c,v 1.8 2025/04/11 23:27:04 snw Exp $ + * $Id: ssvn_job.c,v 1.9 2025/04/13 04:22:43 snw Exp $ * ^$JOB ssvn * * @@ -24,6 +24,9 @@ * along with FreeM. If not, see . * * $Log: ssvn_job.c,v $ + * Revision 1.9 2025/04/13 04:22:43 snw + * Fix snprintf calls + * * Revision 1.8 2025/04/11 23:27:04 snw * Fix overflow bugs in ssvn_job.c * @@ -142,7 +145,7 @@ void ssvn_job_update(void) ierr_sav = ierr; snprintf (k_buf, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); - snprintf (d_buf, 5, "%%\201"); + snprintf (d_buf, STRLEN - 1, "%%\201"); symtab_shm (set_sym, k_buf, d_buf); snprintf (k_buf, STRLEN - 1, "^$JOB\202%d\202ZCOMMANDS\201", pid); @@ -279,7 +282,7 @@ void ssvn_job_update(void) snprintf (k_buf, STRLEN - 1, "^$JOB\202%d\202$IO\201", pid); symtab_shm (set_sym, k_buf, d_buf); - snprintf (d_buf, STRLEN -1, "%s\201", gvndefault); + snprintf (d_buf, STRLEN - 1, "%s\201", gvndefault); snprintf (k_buf, STRLEN - 1, "^$JOB\202%d\202GVNDEFAULT\201", pid); symtab_shm (set_sym, k_buf, d_buf); @@ -339,7 +342,7 @@ void ssvn_job_update(void) default: snprintf (d_buf, STRLEN - 1, "IEEE754\201"); - snprintf (fp_conversion, 9, "%%.%df\201", DBL_DIG); + snprintf (fp_conversion, sizeof (fp_conversion) - 1, "%%.%df\201", DBL_DIG); zprecise = DBL_DIG; break; @@ -904,7 +907,7 @@ void ssvn_job(short action, char *key, c fp_mode = 1; symtab_shm (set_sym, kbuf, data); - snprintf (fp_conversion, 9, "%%.%df\201", DBL_DIG); + snprintf (fp_conversion, sizeof (fp_conversion) - 1, "%%.%df\201", DBL_DIG); zprecise = DBL_DIG; merr_clear ();