|
|
| version 1.13, 2025/04/10 01:24:39 | version 1.14, 2025/04/13 04:22:43 |
|---|---|
| Line 24 | Line 24 |
| * along with FreeM. If not, see <https://www.gnu.org/licenses/>. | * along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
| * | * |
| * $Log$ | * $Log$ |
| * Revision 1.14 2025/04/13 04:22:43 snw | |
| * Fix snprintf calls | |
| * | |
| * Revision 1.13 2025/04/10 01:24:39 snw | * Revision 1.13 2025/04/10 01:24:39 snw |
| * Remove C++ style comments | * Remove C++ style comments |
| * | * |
| Line 531 next0: | Line 534 next0: |
| else if (tmp2[0] == '<') { /* call write output to %-array */ | else if (tmp2[0] == '<') { /* call write output to %-array */ |
| FILE *pipdes; | FILE *pipdes; |
| char key[STRLEN + 1 /*was 256 */ ]; | char key[STRLEN]; |
| char data[STRLEN + 1 /*was 256 */ ]; | char data[STRLEN]; |
| char data_kill[256]; | char data_kill[256]; |
| data_kill[255] = EOL; | data_kill[255] = EOL; |
| for (i = 0; i < STRLEN + 1; i++) vn[i] = EOL; | for (i = 0; i < STRLEN - 1; i++) vn[i] = EOL; |
| snprintf (key, 255, "^$JOB\202%d\202PIPE_GLVN\201", pid); | snprintf (key, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); |
| ssvn (get_sym, key, vn); | ssvn (get_sym, key, vn); |
| if (vn[0] == '^') { | if (vn[0] == '^') { |
| Line 556 next0: | Line 559 next0: |
| symtab (kill_sym, vn, data); | symtab (kill_sym, vn, data); |
| } | } |
| snprintf (key, 255, "^$JOB\202%d\202PIPE_GLVN\201", pid); | snprintf (key, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); |
| ssvn (get_sym, key, vn); | ssvn (get_sym, key, vn); |
| data[0] = '0'; | data[0] = '0'; |
| Line 585 next0: | Line 588 next0: |
| int glvn_len = 0; | int glvn_len = 0; |
| while (fgets (data, STRLEN, pipdes)) { | while (fgets (data, STRLEN, pipdes)) { |
| snprintf (key, 255, "^$JOB\202%d\202PIPE_GLVN\201", pid); | snprintf (key, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); |
| ssvn (get_sym, key, vn); | ssvn (get_sym, key, vn); |
| glvn_len = stlen (vn); | glvn_len = stlen (vn); |
| Line 646 next0: | Line 649 next0: |
| for (i = 0; i < STRLEN + 1; i++) vn[i] = EOL; | for (i = 0; i < STRLEN + 1; i++) vn[i] = EOL; |
| snprintf (key, 255, "^$JOB\202%d\202PIPE_GLVN\201", pid); | snprintf (key, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); |
| ssvn (get_sym, key, vn); | ssvn (get_sym, key, vn); |
| if (vn[0] == '^') { | if (vn[0] == '^') { |
| Line 675 next0: | Line 678 next0: |
| int glvn_len = 0; | int glvn_len = 0; |
| for (i = 1; i <= k; i++) { | for (i = 1; i <= k; i++) { |
| snprintf (key, 255, "^$JOB\202%d\202PIPE_GLVN\201", pid); | snprintf (key, STRLEN - 1, "^$JOB\202%d\202PIPE_GLVN\201", pid); |
| ssvn (get_sym, key, vn); | ssvn (get_sym, key, vn); |
| glvn_len = stlen (vn); | glvn_len = stlen (vn); |
| Line 3989 off3: | Line 3992 off3: |
| if (merr () > OK) goto err; | if (merr () > OK) goto err; |
| /* TODO: check this snprintf for proper sizing */ | |
| snprintf (&tmp3[1], 255, "%s\201", &constructor[1]); | snprintf (&tmp3[1], 255, "%s\201", &constructor[1]); |
| goto private; | goto private; |
| Line 7167 direct_mode: | Line 7171 direct_mode: |
| if (quiet_mode == FALSE) { | if (quiet_mode == FALSE) { |
| if (tp_level == 0) { | if (tp_level == 0) { |
| snprintf (fmrl_prompt, 255, "\r\n%s.%s> ", shm_env, nsname); | snprintf (fmrl_prompt, sizeof (fmrl_prompt) - 1, "\r\n%s.%s> ", shm_env, nsname); |
| } | } |
| else { | else { |
| snprintf (fmrl_prompt, 255, "\r\nTL%d:%s.%s> ", tp_level, shm_env, nsname); | snprintf (fmrl_prompt, sizeof (fmrl_prompt) - 1 , "\r\nTL%d:%s.%s> ", tp_level, shm_env, nsname); |
| } | } |
| } | } |
| set_io (UNIX); | set_io (UNIX); |
| Line 7195 direct_mode: | Line 7199 direct_mode: |
| if (fmrl_buf[0] == '?') { | if (fmrl_buf[0] == '?') { |
| char kb[20]; | char kb[20]; |
| char db[255]; | char db[STRLEN]; |
| snprintf (kb, 19, "%%SYS.HLP\201"); | snprintf (kb, sizeof (kb) - 1, "%%SYS.HLP\201"); |
| snprintf (db, 19, "\201"); | snprintf (db, STRLEN - 1, "\201"); |
| symtab (kill_sym, kb, db); | symtab (kill_sym, kb, db); |
| Line 7208 direct_mode: | Line 7212 direct_mode: |
| stcpy (code, "DO ^%ZHELP\201"); | stcpy (code, "DO ^%ZHELP\201"); |
| if (strlen (fmrl_buf) > 1) { | if (strlen (fmrl_buf) > 1) { |
| snprintf (db, 254, "%s\201", &fmrl_buf[1]); | snprintf (db, STRLEN - 1, "%s\201", &fmrl_buf[1]); |
| symtab (set_sym, kb, db); | symtab (set_sym, kb, db); |
| } | } |
| Line 7277 direct_mode: | Line 7281 direct_mode: |
| } | } |
| else if (isdigit(fmrl_buf[0]) || (fmrl_buf[0] == '(') || (fmrl_buf[0] == '-') || (fmrl_buf[0] == '\'') || (fmrl_buf[0] == '+') || (fmrl_buf[0] == '$') || (fmrl_buf[0] == '^')) { | else if (isdigit(fmrl_buf[0]) || (fmrl_buf[0] == '(') || (fmrl_buf[0] == '-') || (fmrl_buf[0] == '\'') || (fmrl_buf[0] == '+') || (fmrl_buf[0] == '$') || (fmrl_buf[0] == '^')) { |
| snprintf (code, 255, "W %s", fmrl_buf); | snprintf (code, STRLEN - 1, "W %s", fmrl_buf); |
| stcnv_c2m (code); | stcnv_c2m (code); |
| set_io (MUMPS); | set_io (MUMPS); |
| Line 7359 direct_mode: | Line 7363 direct_mode: |
| char fmrl_prompt[256]; | char fmrl_prompt[256]; |
| if (tp_level == 0) { | if (tp_level == 0) { |
| snprintf (fmrl_prompt, 256, "\r\n%s> \201", nsname); | snprintf (fmrl_prompt, sizeof (fmrl_prompt) - 1, "\r\n%s> \201", nsname); |
| } | } |
| else { | else { |
| snprintf (fmrl_prompt, 256, "\r\nTL%d:%s> \201", tp_level, nsname); | snprintf (fmrl_prompt, sizeof (fmrl_prompt) - 1, "\r\nTL%d:%s> \201", tp_level, nsname); |
| } | } |
| write_m (fmrl_prompt); | write_m (fmrl_prompt); |