1
--- tiff-4.0.2.orig/contrib/dbs/xtiff/xtiff.c
2
+++ tiff-4.0.2/contrib/dbs/xtiff/xtiff.c
3
@@ -512,9 +512,9 @@ SetNameLabel()
7
- sprintf(buffer, "%s - page %d", fileName, tfDirectory);
8
+ snprintf(buffer, sizeof(buffer), "%s - page %d", fileName, tfDirectory);
10
- strcpy(buffer, fileName);
11
+ snprintf(buffer, sizeof(buffer), "%s", fileName);
12
XtSetArg(args[0], XtNlabel, buffer);
13
XtSetValues(labelWidget, args, 1);
15
--- tiff-4.0.2.orig/libtiff/tif_dirinfo.c
16
+++ tiff-4.0.2/libtiff/tif_dirinfo.c
17
@@ -661,7 +661,7 @@ _TIFFCreateAnonField(TIFF *tif, uint32 t
18
* note that this name is a special sign to TIFFClose() and
19
* _TIFFSetupFields() to free the field
21
- sprintf(fld->field_name, "Tag %d", (int) tag);
22
+ snprintf(fld->field_name, 32, "Tag %d", (int) tag);
26
--- tiff-4.0.2.orig/libtiff/tif_codec.c
27
+++ tiff-4.0.2/libtiff/tif_codec.c
28
@@ -108,7 +108,8 @@ _notConfigured(TIFF* tif)
29
const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
30
char compression_code[20];
32
- sprintf( compression_code, "%d", tif->tif_dir.td_compression );
33
+ snprintf(compression_code, sizeof(compression_code), "%d",
34
+ tif->tif_dir.td_compression );
35
TIFFErrorExt(tif->tif_clientdata, tif->tif_name,
36
"%s compression support is not configured",
37
c ? c->name : compression_code );
38
--- tiff-4.0.2.orig/tools/tiffdither.c
39
+++ tiff-4.0.2/tools/tiffdither.c
40
@@ -260,7 +260,7 @@ main(int argc, char* argv[])
41
TIFFSetField(out, TIFFTAG_FILLORDER, fillorder);
43
CopyField(TIFFTAG_FILLORDER, shortv);
44
- sprintf(thing, "Dithered B&W version of %s", argv[optind]);
45
+ snprintf(thing, sizeof(thing), "Dithered B&W version of %s", argv[optind]);
46
TIFFSetField(out, TIFFTAG_IMAGEDESCRIPTION, thing);
47
CopyField(TIFFTAG_PHOTOMETRIC, shortv);
48
CopyField(TIFFTAG_ORIENTATION, shortv);
49
--- tiff-4.0.2.orig/tools/rgb2ycbcr.c
50
+++ tiff-4.0.2/tools/rgb2ycbcr.c
51
@@ -332,7 +332,8 @@ tiffcvt(TIFF* in, TIFF* out)
52
TIFFSetField(out, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG);
54
char *cp = strrchr(TIFFFileName(in), '/');
55
- sprintf(buf, "YCbCr conversion of %s", cp ? cp+1 : TIFFFileName(in));
56
+ snprintf(buf, sizeof(buf), "YCbCr conversion of %s",
57
+ cp ? cp+1 : TIFFFileName(in));
58
TIFFSetField(out, TIFFTAG_IMAGEDESCRIPTION, buf);
60
TIFFSetField(out, TIFFTAG_SOFTWARE, TIFFGetVersion());
61
--- tiff-4.0.2.orig/tools/tiff2pdf.c
62
+++ tiff-4.0.2/tools/tiff2pdf.c
63
@@ -3629,7 +3629,9 @@ tsize_t t2p_write_pdf_header(T2P* t2p, T
67
- buflen=sprintf(buffer, "%%PDF-%u.%u ", t2p->pdf_majorversion&0xff, t2p->pdf_minorversion&0xff);
68
+ buflen = snprintf(buffer, sizeof(buffer), "%%PDF-%u.%u ",
69
+ t2p->pdf_majorversion&0xff,
70
+ t2p->pdf_minorversion&0xff);
71
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
72
written += t2pWriteFile(output, (tdata_t)"\n%\342\343\317\323\n", 7);
74
@@ -3643,10 +3645,10 @@ tsize_t t2p_write_pdf_header(T2P* t2p, T
75
tsize_t t2p_write_pdf_obj_start(uint32 number, TIFF* output){
82
- buflen=sprintf(buffer, "%lu", (unsigned long)number);
83
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)number);
84
written += t2pWriteFile(output, (tdata_t) buffer, buflen );
85
written += t2pWriteFile(output, (tdata_t) " 0 obj\n", 7);
87
@@ -3685,13 +3687,13 @@ tsize_t t2p_write_pdf_name(unsigned char
88
written += t2pWriteFile(output, (tdata_t) "/", 1);
89
for (i=0;i<namelen;i++){
90
if ( ((unsigned char)name[i]) < 0x21){
91
- sprintf(buffer, "#%.2X", name[i]);
92
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
93
buffer[sizeof(buffer) - 1] = '\0';
94
written += t2pWriteFile(output, (tdata_t) buffer, 3);
97
if ( ((unsigned char)name[i]) > 0x7E){
98
- sprintf(buffer, "#%.2X", name[i]);
99
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
100
buffer[sizeof(buffer) - 1] = '\0';
101
written += t2pWriteFile(output, (tdata_t) buffer, 3);
103
@@ -3699,57 +3701,57 @@ tsize_t t2p_write_pdf_name(unsigned char
107
- sprintf(buffer, "#%.2X", name[i]);
108
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
109
buffer[sizeof(buffer) - 1] = '\0';
110
written += t2pWriteFile(output, (tdata_t) buffer, 3);
113
- sprintf(buffer, "#%.2X", name[i]);
114
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
115
buffer[sizeof(buffer) - 1] = '\0';
116
written += t2pWriteFile(output, (tdata_t) buffer, 3);
119
- sprintf(buffer, "#%.2X", name[i]);
120
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
121
buffer[sizeof(buffer) - 1] = '\0';
122
written += t2pWriteFile(output, (tdata_t) buffer, 3);
125
- sprintf(buffer, "#%.2X", name[i]);
126
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
127
buffer[sizeof(buffer) - 1] = '\0';
128
written += t2pWriteFile(output, (tdata_t) buffer, 3);
131
- sprintf(buffer, "#%.2X", name[i]);
132
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
133
buffer[sizeof(buffer) - 1] = '\0';
134
written += t2pWriteFile(output, (tdata_t) buffer, 3);
137
- sprintf(buffer, "#%.2X", name[i]);
138
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
139
buffer[sizeof(buffer) - 1] = '\0';
140
written += t2pWriteFile(output, (tdata_t) buffer, 3);
143
- sprintf(buffer, "#%.2X", name[i]);
144
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
145
buffer[sizeof(buffer) - 1] = '\0';
146
written += t2pWriteFile(output, (tdata_t) buffer, 3);
149
- sprintf(buffer, "#%.2X", name[i]);
150
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
151
buffer[sizeof(buffer) - 1] = '\0';
152
written += t2pWriteFile(output, (tdata_t) buffer, 3);
155
- sprintf(buffer, "#%.2X", name[i]);
156
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
157
buffer[sizeof(buffer) - 1] = '\0';
158
written += t2pWriteFile(output, (tdata_t) buffer, 3);
161
- sprintf(buffer, "#%.2X", name[i]);
162
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
163
buffer[sizeof(buffer) - 1] = '\0';
164
written += t2pWriteFile(output, (tdata_t) buffer, 3);
167
- sprintf(buffer, "#%.2X", name[i]);
168
+ snprintf(buffer, sizeof(buffer), "#%.2X", name[i]);
169
buffer[sizeof(buffer) - 1] = '\0';
170
written += t2pWriteFile(output, (tdata_t) buffer, 3);
172
@@ -3864,14 +3866,14 @@ tsize_t t2p_write_pdf_stream_end(TIFF* o
173
tsize_t t2p_write_pdf_stream_dict(tsize_t len, uint32 number, TIFF* output){
180
written += t2pWriteFile(output, (tdata_t) "/Length ", 8);
182
written += t2p_write_pdf_stream_length(len, output);
184
- buflen=sprintf(buffer, "%lu", (unsigned long)number);
185
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)number);
186
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
187
written += t2pWriteFile(output, (tdata_t) " 0 R \n", 6);
189
@@ -3912,10 +3914,10 @@ tsize_t t2p_write_pdf_stream_dict_end(TI
190
tsize_t t2p_write_pdf_stream_length(tsize_t len, TIFF* output){
197
- buflen=sprintf(buffer, "%lu", (unsigned long)len);
198
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)len);
199
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
200
written += t2pWriteFile(output, (tdata_t) "\n", 1);
202
@@ -3929,7 +3931,7 @@ tsize_t t2p_write_pdf_stream_length(tsiz
203
tsize_t t2p_write_pdf_catalog(T2P* t2p, TIFF* output)
210
written += t2pWriteFile(output,
211
@@ -3968,7 +3970,6 @@ tsize_t t2p_write_pdf_info(T2P* t2p, TIF
212
written += t2p_write_pdf_string(t2p->pdf_datetime, output);
214
written += t2pWriteFile(output, (tdata_t) "\n/Producer ", 11);
215
- _TIFFmemset((tdata_t)buffer, 0x00, sizeof(buffer));
216
snprintf(buffer, sizeof(buffer), "libtiff / tiff2pdf - %d", TIFFLIB_VERSION);
217
written += t2p_write_pdf_string(buffer, output);
218
written += t2pWriteFile(output, (tdata_t) "\n", 1);
219
@@ -4109,7 +4110,7 @@ tsize_t t2p_write_pdf_pages(T2P* t2p, TI
228
@@ -4117,7 +4118,7 @@ tsize_t t2p_write_pdf_pages(T2P* t2p, TI
229
(tdata_t) "<< \n/Type /Pages \n/Kids [ ", 26);
230
page = t2p->pdf_pages+1;
231
for (i=0;i<t2p->tiff_pagecount;i++){
232
- buflen=sprintf(buffer, "%d", page);
233
+ buflen=snprintf(buffer, sizeof(buffer), "%d", page);
234
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
235
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
236
if ( ((i+1)%8)==0 ) {
237
@@ -4132,8 +4133,7 @@ tsize_t t2p_write_pdf_pages(T2P* t2p, TI
240
written += t2pWriteFile(output, (tdata_t) "] \n/Count ", 10);
241
- _TIFFmemset(buffer, 0x00, 16);
242
- buflen=sprintf(buffer, "%d", t2p->tiff_pagecount);
243
+ buflen=snprintf(buffer, sizeof(buffer), "%d", t2p->tiff_pagecount);
244
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
245
written += t2pWriteFile(output, (tdata_t) " \n>> \n", 6);
247
@@ -4148,28 +4148,28 @@ tsize_t t2p_write_pdf_page(uint32 object
255
written += t2pWriteFile(output, (tdata_t) "<<\n/Type /Page \n/Parent ", 24);
256
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_pages);
257
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_pages);
258
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
259
written += t2pWriteFile(output, (tdata_t) " 0 R \n", 6);
260
written += t2pWriteFile(output, (tdata_t) "/MediaBox [", 11);
261
- buflen=sprintf(buffer, "%.4f",t2p->pdf_mediabox.x1);
262
+ buflen=snprintf(buffer, sizeof(buffer), "%.4f",t2p->pdf_mediabox.x1);
263
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
264
written += t2pWriteFile(output, (tdata_t) " ", 1);
265
- buflen=sprintf(buffer, "%.4f",t2p->pdf_mediabox.y1);
266
+ buflen=snprintf(buffer, sizeof(buffer), "%.4f",t2p->pdf_mediabox.y1);
267
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
268
written += t2pWriteFile(output, (tdata_t) " ", 1);
269
- buflen=sprintf(buffer, "%.4f",t2p->pdf_mediabox.x2);
270
+ buflen=snprintf(buffer, sizeof(buffer), "%.4f",t2p->pdf_mediabox.x2);
271
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
272
written += t2pWriteFile(output, (tdata_t) " ", 1);
273
- buflen=sprintf(buffer, "%.4f",t2p->pdf_mediabox.y2);
274
+ buflen=snprintf(buffer, sizeof(buffer), "%.4f",t2p->pdf_mediabox.y2);
275
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
276
written += t2pWriteFile(output, (tdata_t) "] \n", 3);
277
written += t2pWriteFile(output, (tdata_t) "/Contents ", 10);
278
- buflen=sprintf(buffer, "%lu", (unsigned long)(object + 1));
279
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)(object + 1));
280
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
281
written += t2pWriteFile(output, (tdata_t) " 0 R \n", 6);
282
written += t2pWriteFile(output, (tdata_t) "/Resources << \n", 15);
283
@@ -4177,15 +4177,13 @@ tsize_t t2p_write_pdf_page(uint32 object
284
written += t2pWriteFile(output, (tdata_t) "/XObject <<\n", 12);
285
for(i=0;i<t2p->tiff_tiles[t2p->pdf_page].tiles_tilecount;i++){
286
written += t2pWriteFile(output, (tdata_t) "/Im", 3);
287
- buflen = sprintf(buffer, "%u", t2p->pdf_page+1);
288
+ buflen = snprintf(buffer, sizeof(buffer), "%u", t2p->pdf_page+1);
289
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
290
written += t2pWriteFile(output, (tdata_t) "_", 1);
291
- buflen = sprintf(buffer, "%u", i+1);
292
+ buflen = snprintf(buffer, sizeof(buffer), "%u", i+1);
293
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
294
written += t2pWriteFile(output, (tdata_t) " ", 1);
298
+ buflen = snprintf(buffer, sizeof(buffer), "%lu",
299
(unsigned long)(object+3+(2*i)+t2p->tiff_pages[t2p->pdf_page].page_extra));
300
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
301
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
302
@@ -4197,12 +4195,10 @@ tsize_t t2p_write_pdf_page(uint32 object
304
written += t2pWriteFile(output, (tdata_t) "/XObject <<\n", 12);
305
written += t2pWriteFile(output, (tdata_t) "/Im", 3);
306
- buflen = sprintf(buffer, "%u", t2p->pdf_page+1);
307
+ buflen = snprintf(buffer, sizeof(buffer), "%u", t2p->pdf_page+1);
308
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
309
written += t2pWriteFile(output, (tdata_t) " ", 1);
313
+ buflen = snprintf(buffer, sizeof(buffer), "%lu",
314
(unsigned long)(object+3+(2*i)+t2p->tiff_pages[t2p->pdf_page].page_extra));
315
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
316
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
317
@@ -4211,9 +4207,7 @@ tsize_t t2p_write_pdf_page(uint32 object
318
if(t2p->tiff_transferfunctioncount != 0) {
319
written += t2pWriteFile(output, (tdata_t) "/ExtGState <<", 13);
320
t2pWriteFile(output, (tdata_t) "/GS1 ", 5);
324
+ buflen = snprintf(buffer, sizeof(buffer), "%lu",
325
(unsigned long)(object + 3));
326
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
327
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
328
@@ -4586,7 +4580,7 @@ tsize_t t2p_write_pdf_page_content_strea
329
if(t2p->tiff_tiles[t2p->pdf_page].tiles_tilecount>0){
330
for(i=0;i<t2p->tiff_tiles[t2p->pdf_page].tiles_tilecount; i++){
331
box=t2p->tiff_tiles[t2p->pdf_page].tiles_tiles[i].tile_box;
332
- buflen=sprintf(buffer,
333
+ buflen=snprintf(buffer, sizeof(buffer),
334
"q %s %.4f %.4f %.4f %.4f %.4f %.4f cm /Im%d_%ld Do Q\n",
335
t2p->tiff_transferfunctioncount?"/GS1 gs ":"",
337
@@ -4601,7 +4595,7 @@ tsize_t t2p_write_pdf_page_content_strea
340
box=t2p->pdf_imagebox;
341
- buflen=sprintf(buffer,
342
+ buflen=snprintf(buffer, sizeof(buffer),
343
"q %s %.4f %.4f %.4f %.4f %.4f %.4f cm /Im%d Do Q\n",
344
t2p->tiff_transferfunctioncount?"/GS1 gs ":"",
346
@@ -4626,59 +4620,48 @@ tsize_t t2p_write_pdf_xobject_stream_dic
354
written += t2p_write_pdf_stream_dict(0, t2p->pdf_xrefcount+1, output);
355
written += t2pWriteFile(output,
356
(tdata_t) "/Type /XObject \n/Subtype /Image \n/Name /Im",
358
- buflen=sprintf(buffer, "%u", t2p->pdf_page+1);
359
+ buflen=snprintf(buffer, sizeof(buffer), "%u", t2p->pdf_page+1);
360
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
362
written += t2pWriteFile(output, (tdata_t) "_", 1);
363
- buflen=sprintf(buffer, "%lu", (unsigned long)tile);
364
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)tile);
365
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
367
written += t2pWriteFile(output, (tdata_t) "\n/Width ", 8);
368
- _TIFFmemset((tdata_t)buffer, 0x00, 16);
370
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->tiff_width);
371
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->tiff_width);
373
if(t2p_tile_is_right_edge(t2p->tiff_tiles[t2p->pdf_page], tile-1)!=0){
377
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
378
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_edgetilewidth);
383
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
384
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_tilewidth);
387
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
388
written += t2pWriteFile(output, (tdata_t) "\n/Height ", 9);
389
- _TIFFmemset((tdata_t)buffer, 0x00, 16);
391
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->tiff_length);
392
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->tiff_length);
394
if(t2p_tile_is_bottom_edge(t2p->tiff_tiles[t2p->pdf_page], tile-1)!=0){
398
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
399
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_edgetilelength);
404
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
405
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_tilelength);
408
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
409
written += t2pWriteFile(output, (tdata_t) "\n/BitsPerComponent ", 19);
410
- _TIFFmemset((tdata_t)buffer, 0x00, 16);
411
- buflen=sprintf(buffer, "%u", t2p->tiff_bitspersample);
412
+ buflen=snprintf(buffer, sizeof(buffer), "%u", t2p->tiff_bitspersample);
413
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
414
written += t2pWriteFile(output, (tdata_t) "\n/ColorSpace ", 13);
415
written += t2p_write_pdf_xobject_cs(t2p, output);
416
@@ -4722,11 +4705,10 @@ tsize_t t2p_write_pdf_xobject_cs(T2P* t2
417
t2p->pdf_colorspace ^= T2P_CS_PALETTE;
418
written += t2p_write_pdf_xobject_cs(t2p, output);
419
t2p->pdf_colorspace |= T2P_CS_PALETTE;
420
- buflen=sprintf(buffer, "%u", (0x0001 << t2p->tiff_bitspersample)-1 );
421
+ buflen=snprintf(buffer, sizeof(buffer), "%u", (0x0001 << t2p->tiff_bitspersample)-1 );
422
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
423
written += t2pWriteFile(output, (tdata_t) " ", 1);
424
- _TIFFmemset(buffer, 0x00, 16);
425
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_palettecs );
426
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_palettecs );
427
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
428
written += t2pWriteFile(output, (tdata_t) " 0 R ]\n", 7);
430
@@ -4760,10 +4742,10 @@ tsize_t t2p_write_pdf_xobject_cs(T2P* t2
434
- buflen=sprintf(buffer, "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
435
+ buflen=snprintf(buffer, sizeof(buffer), "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
436
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
437
written += t2pWriteFile(output, (tdata_t) "/Range ", 7);
438
- buflen=sprintf(buffer, "[%d %d %d %d] \n",
439
+ buflen=snprintf(buffer, sizeof(buffer), "[%d %d %d %d] \n",
440
t2p->pdf_labrange[0],
441
t2p->pdf_labrange[1],
442
t2p->pdf_labrange[2],
443
@@ -4779,26 +4761,26 @@ tsize_t t2p_write_pdf_xobject_cs(T2P* t2
444
tsize_t t2p_write_pdf_transfer(T2P* t2p, TIFF* output){
451
written += t2pWriteFile(output, (tdata_t) "<< /Type /ExtGState \n/TR ", 25);
452
if(t2p->tiff_transferfunctioncount == 1){
453
- buflen=sprintf(buffer, "%lu",
454
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
455
(unsigned long)(t2p->pdf_xrefcount + 1));
456
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
457
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
459
written += t2pWriteFile(output, (tdata_t) "[ ", 2);
460
- buflen=sprintf(buffer, "%lu",
461
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
462
(unsigned long)(t2p->pdf_xrefcount + 1));
463
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
464
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
465
- buflen=sprintf(buffer, "%lu",
466
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
467
(unsigned long)(t2p->pdf_xrefcount + 2));
468
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
469
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
470
- buflen=sprintf(buffer, "%lu",
471
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
472
(unsigned long)(t2p->pdf_xrefcount + 3));
473
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
474
written += t2pWriteFile(output, (tdata_t) " 0 R ", 5);
475
@@ -4820,7 +4802,7 @@ tsize_t t2p_write_pdf_transfer_dict(T2P*
476
written += t2pWriteFile(output, (tdata_t) "/FunctionType 0 \n", 17);
477
written += t2pWriteFile(output, (tdata_t) "/Domain [0.0 1.0] \n", 19);
478
written += t2pWriteFile(output, (tdata_t) "/Range [0.0 1.0] \n", 18);
479
- buflen=sprintf(buffer, "/Size [%u] \n", (1<<t2p->tiff_bitspersample));
480
+ buflen=snprintf(buffer, sizeof(buffer), "/Size [%u] \n", (1<<t2p->tiff_bitspersample));
481
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
482
written += t2pWriteFile(output, (tdata_t) "/BitsPerSample 16 \n", 19);
483
written += t2p_write_pdf_stream_dict(((tsize_t)1)<<(t2p->tiff_bitspersample+1), 0, output);
484
@@ -4847,7 +4829,7 @@ tsize_t t2p_write_pdf_transfer_stream(T2
485
tsize_t t2p_write_pdf_xobject_calcs(T2P* t2p, TIFF* output){
493
@@ -4915,16 +4897,16 @@ tsize_t t2p_write_pdf_xobject_calcs(T2P*
494
written += t2pWriteFile(output, (tdata_t) "<< \n", 4);
495
if(t2p->pdf_colorspace & T2P_CS_CALGRAY){
496
written += t2pWriteFile(output, (tdata_t) "/WhitePoint ", 12);
497
- buflen=sprintf(buffer, "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
498
+ buflen=snprintf(buffer, sizeof(buffer), "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
499
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
500
written += t2pWriteFile(output, (tdata_t) "/Gamma 2.2 \n", 12);
502
if(t2p->pdf_colorspace & T2P_CS_CALRGB){
503
written += t2pWriteFile(output, (tdata_t) "/WhitePoint ", 12);
504
- buflen=sprintf(buffer, "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
505
+ buflen=snprintf(buffer, sizeof(buffer), "[%.4f %.4f %.4f] \n", X_W, Y_W, Z_W);
506
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
507
written += t2pWriteFile(output, (tdata_t) "/Matrix ", 8);
508
- buflen=sprintf(buffer, "[%.4f %.4f %.4f %.4f %.4f %.4f %.4f %.4f %.4f] \n",
509
+ buflen=snprintf(buffer, sizeof(buffer), "[%.4f %.4f %.4f %.4f %.4f %.4f %.4f %.4f %.4f] \n",
513
@@ -4943,11 +4925,11 @@ tsize_t t2p_write_pdf_xobject_calcs(T2P*
514
tsize_t t2p_write_pdf_xobject_icccs(T2P* t2p, TIFF* output){
521
written += t2pWriteFile(output, (tdata_t) "[/ICCBased ", 11);
522
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_icccs);
523
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_icccs);
524
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
525
written += t2pWriteFile(output, (tdata_t) " 0 R] \n", 7);
527
@@ -4957,11 +4939,11 @@ tsize_t t2p_write_pdf_xobject_icccs(T2P*
528
tsize_t t2p_write_pdf_xobject_icccs_dict(T2P* t2p, TIFF* output){
535
written += t2pWriteFile(output, (tdata_t) "/N ", 3);
536
- buflen=sprintf(buffer, "%u \n", t2p->tiff_samplesperpixel);
537
+ buflen=snprintf(buffer, sizeof(buffer), "%u \n", t2p->tiff_samplesperpixel);
538
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
539
written += t2pWriteFile(output, (tdata_t) "/Alternate ", 11);
540
t2p->pdf_colorspace ^= T2P_CS_ICCBASED;
541
@@ -5026,7 +5008,7 @@ tsize_t t2p_write_pdf_xobject_decode(T2P
542
tsize_t t2p_write_pdf_xobject_stream_filter(ttile_t tile, T2P* t2p, TIFF* output){
549
if(t2p->pdf_compression==T2P_COMPRESS_NONE){
550
@@ -5041,41 +5023,33 @@ tsize_t t2p_write_pdf_xobject_stream_fil
551
written += t2pWriteFile(output, (tdata_t) "<< /K -1 ", 9);
553
written += t2pWriteFile(output, (tdata_t) "/Columns ", 9);
554
- buflen=sprintf(buffer, "%lu",
555
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
556
(unsigned long)t2p->tiff_width);
557
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
558
written += t2pWriteFile(output, (tdata_t) " /Rows ", 7);
559
- buflen=sprintf(buffer, "%lu",
560
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
561
(unsigned long)t2p->tiff_length);
562
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
564
if(t2p_tile_is_right_edge(t2p->tiff_tiles[t2p->pdf_page], tile-1)==0){
565
written += t2pWriteFile(output, (tdata_t) "/Columns ", 9);
569
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
570
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_tilewidth);
571
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
573
written += t2pWriteFile(output, (tdata_t) "/Columns ", 9);
577
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
578
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_edgetilewidth);
579
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
581
if(t2p_tile_is_bottom_edge(t2p->tiff_tiles[t2p->pdf_page], tile-1)==0){
582
written += t2pWriteFile(output, (tdata_t) " /Rows ", 7);
586
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
587
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_tilelength);
588
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
590
written += t2pWriteFile(output, (tdata_t) " /Rows ", 7);
594
+ buflen=snprintf(buffer, sizeof(buffer), "%lu",
595
(unsigned long)t2p->tiff_tiles[t2p->pdf_page].tiles_edgetilelength);
596
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
598
@@ -5102,21 +5076,17 @@ tsize_t t2p_write_pdf_xobject_stream_fil
599
if(t2p->pdf_compressionquality%100){
600
written += t2pWriteFile(output, (tdata_t) "/DecodeParms ", 13);
601
written += t2pWriteFile(output, (tdata_t) "<< /Predictor ", 14);
602
- _TIFFmemset(buffer, 0x00, 16);
603
- buflen=sprintf(buffer, "%u", t2p->pdf_compressionquality%100);
604
+ buflen=snprintf(buffer, sizeof(buffer), "%u", t2p->pdf_compressionquality%100);
605
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
606
written += t2pWriteFile(output, (tdata_t) " /Columns ", 10);
607
- _TIFFmemset(buffer, 0x00, 16);
608
- buflen = sprintf(buffer, "%lu",
609
+ buflen = snprintf(buffer, sizeof(buffer), "%lu",
610
(unsigned long)t2p->tiff_width);
611
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
612
written += t2pWriteFile(output, (tdata_t) " /Colors ", 9);
613
- _TIFFmemset(buffer, 0x00, 16);
614
- buflen=sprintf(buffer, "%u", t2p->tiff_samplesperpixel);
615
+ buflen=snprintf(buffer, sizeof(buffer), "%u", t2p->tiff_samplesperpixel);
616
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
617
written += t2pWriteFile(output, (tdata_t) " /BitsPerComponent ", 19);
618
- _TIFFmemset(buffer, 0x00, 16);
619
- buflen=sprintf(buffer, "%u", t2p->tiff_bitspersample);
620
+ buflen=snprintf(buffer, sizeof(buffer), "%u", t2p->tiff_bitspersample);
621
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
622
written += t2pWriteFile(output, (tdata_t) ">>\n", 3);
624
@@ -5136,16 +5106,16 @@ tsize_t t2p_write_pdf_xobject_stream_fil
625
tsize_t t2p_write_pdf_xreftable(T2P* t2p, TIFF* output){
633
written += t2pWriteFile(output, (tdata_t) "xref\n0 ", 7);
634
- buflen=sprintf(buffer, "%lu", (unsigned long)(t2p->pdf_xrefcount + 1));
635
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)(t2p->pdf_xrefcount + 1));
636
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
637
written += t2pWriteFile(output, (tdata_t) " \n0000000000 65535 f \n", 22);
638
for (i=0;i<t2p->pdf_xrefcount;i++){
639
- sprintf(buffer, "%.10lu 00000 n \n",
640
+ snprintf(buffer, sizeof(buffer), "%.10lu 00000 n \n",
641
(unsigned long)t2p->pdf_xrefoffsets[i]);
642
written += t2pWriteFile(output, (tdata_t) buffer, 20);
644
@@ -5169,17 +5139,14 @@ tsize_t t2p_write_pdf_trailer(T2P* t2p,
645
snprintf(t2p->pdf_fileid + i, 9, "%.8X", rand());
647
written += t2pWriteFile(output, (tdata_t) "trailer\n<<\n/Size ", 17);
648
- buflen = sprintf(buffer, "%lu", (unsigned long)(t2p->pdf_xrefcount+1));
649
+ buflen = snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)(t2p->pdf_xrefcount+1));
650
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
651
- _TIFFmemset(buffer, 0x00, 32);
652
written += t2pWriteFile(output, (tdata_t) "\n/Root ", 7);
653
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_catalog);
654
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_catalog);
655
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
656
- _TIFFmemset(buffer, 0x00, 32);
657
written += t2pWriteFile(output, (tdata_t) " 0 R \n/Info ", 12);
658
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_info);
659
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_info);
660
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
661
- _TIFFmemset(buffer, 0x00, 32);
662
written += t2pWriteFile(output, (tdata_t) " 0 R \n/ID[<", 11);
663
written += t2pWriteFile(output, (tdata_t) t2p->pdf_fileid,
664
sizeof(t2p->pdf_fileid) - 1);
665
@@ -5187,9 +5154,8 @@ tsize_t t2p_write_pdf_trailer(T2P* t2p,
666
written += t2pWriteFile(output, (tdata_t) t2p->pdf_fileid,
667
sizeof(t2p->pdf_fileid) - 1);
668
written += t2pWriteFile(output, (tdata_t) ">]\n>>\nstartxref\n", 16);
669
- buflen=sprintf(buffer, "%lu", (unsigned long)t2p->pdf_startxref);
670
+ buflen=snprintf(buffer, sizeof(buffer), "%lu", (unsigned long)t2p->pdf_startxref);
671
written += t2pWriteFile(output, (tdata_t) buffer, buflen);
672
- _TIFFmemset(buffer, 0x00, 32);
673
written += t2pWriteFile(output, (tdata_t) "\n%%EOF\n", 7);
676
--- tiff-4.0.2.orig/tools/tiff2ps.c
677
+++ tiff-4.0.2/tools/tiff2ps.c
678
@@ -1781,8 +1781,8 @@ PS_Lvl2ImageDict(FILE* fd, TIFF* tif, ui
679
imageOp = "imagemask";
681
(void)strcpy(im_x, "0");
682
- (void)sprintf(im_y, "%lu", (long) h);
683
- (void)sprintf(im_h, "%lu", (long) h);
684
+ (void)snprintf(im_y, sizeof(im_y), "%lu", (long) h);
685
+ (void)snprintf(im_h, sizeof(im_h), "%lu", (long) h);
688
if (TIFFIsTiled(tif)) {
689
@@ -1803,7 +1803,7 @@ PS_Lvl2ImageDict(FILE* fd, TIFF* tif, ui
691
if (tile_height < h) {
692
fputs("/im_y 0 def\n", fd);
693
- (void)sprintf(im_y, "%lu im_y sub", (unsigned long) h);
694
+ (void)snprintf(im_y, sizeof(im_y), "%lu im_y sub", (unsigned long) h);
697
repeat_count = tf_numberstrips;
698
@@ -1815,7 +1815,7 @@ PS_Lvl2ImageDict(FILE* fd, TIFF* tif, ui
699
fprintf(fd, "/im_h %lu def\n",
700
(unsigned long) tile_height);
701
(void)strcpy(im_h, "im_h");
702
- (void)sprintf(im_y, "%lu im_y sub", (unsigned long) h);
703
+ (void)snprintf(im_y, sizeof(im_y), "%lu im_y sub", (unsigned long) h);
707
--- tiff-4.0.2.orig/tools/tiffcrop.c
708
+++ tiff-4.0.2/tools/tiffcrop.c
709
@@ -2077,7 +2077,7 @@ update_output_file (TIFF **tiffout, char
713
- sprintf (filenum, "-%03d%s", findex, export_ext);
714
+ snprintf(filenum, sizeof(filenum), "-%03d%s", findex, export_ext);
716
strncat (exportname, filenum, 15);
718
@@ -2230,8 +2230,8 @@ main(int argc, char* argv[])
720
/* dump.infilename is guaranteed to be NUL termimated and have 20 bytes
721
fewer than PATH_MAX */
722
- memset (temp_filename, '\0', PATH_MAX + 1);
723
- sprintf (temp_filename, "%s-read-%03d.%s", dump.infilename, dump_images,
724
+ snprintf(temp_filename, sizeof(temp_filename), "%s-read-%03d.%s",
725
+ dump.infilename, dump_images,
726
(dump.format == DUMP_TEXT) ? "txt" : "raw");
727
if ((dump.infile = fopen(temp_filename, dump.mode)) == NULL)
729
@@ -2249,8 +2249,8 @@ main(int argc, char* argv[])
731
/* dump.outfilename is guaranteed to be NUL termimated and have 20 bytes
732
fewer than PATH_MAX */
733
- memset (temp_filename, '\0', PATH_MAX + 1);
734
- sprintf (temp_filename, "%s-write-%03d.%s", dump.outfilename, dump_images,
735
+ snprintf(temp_filename, sizeof(temp_filename), "%s-write-%03d.%s",
736
+ dump.outfilename, dump_images,
737
(dump.format == DUMP_TEXT) ? "txt" : "raw");
738
if ((dump.outfile = fopen(temp_filename, dump.mode)) == NULL)
740
--- tiff-4.0.2.orig/tools/tiff2bw.c
741
+++ tiff-4.0.2/tools/tiff2bw.c
742
@@ -205,7 +205,7 @@ main(int argc, char* argv[])
745
TIFFSetField(out, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_MINISBLACK);
746
- sprintf(thing, "B&W version of %s", argv[optind]);
747
+ snprintf(thing, sizeof(thing), "B&W version of %s", argv[optind]);
748
TIFFSetField(out, TIFFTAG_IMAGEDESCRIPTION, thing);
749
TIFFSetField(out, TIFFTAG_SOFTWARE, "tiff2bw");
750
outbuf = (unsigned char *)_TIFFmalloc(TIFFScanlineSize(out));