blob: a173ea5ad7959f539afa904def46692894d4585e [file] [log] [blame]
# Copyright 2024 The PDFium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# The set of path prefixes that should be checked for unsafe buffer usage (see
# -Wunsafe-buffer-usage in Clang).
#
# ***
# Paths should be written as relative to the root of the source tree with
# unix-style path separators. Directory prefixes should end with `/`, such
# as `base/`.
# ***
#
# Files in this set are known to not use pointer arithmetic/subscripting, and
# make use of constructs like base::span or containers like std::vector instead.
#
# See `docs/unsafe_buffers.md`.
# These directories are excluded because they come from outside PDFium and
# we don't have control over their contents.
-base/
-public/
-samples/
-skia/
-testing/
-third_party
-tools/
-v8/
# TODO(tsepez): remove all files in this section.
-core/fdrm/fx_crypt.cpp
-core/fdrm/fx_crypt_aes.cpp
-core/fdrm/fx_crypt_sha.cpp
-core/fdrm/fx_crypt_unittest.cpp
-core/fpdfapi/cmaps/fpdf_cmaps.cpp
-core/fpdfapi/font/cfx_cttgsubtable.cpp
-core/fpdfapi/font/cpdf_cidfont.cpp
-core/fpdfapi/font/cpdf_cmap.cpp
-core/fpdfapi/font/cpdf_cmapparser.cpp
-core/fpdfapi/font/cpdf_cmapparser_unittest.cpp
-core/fpdfapi/font/cpdf_font.cpp
-core/fpdfapi/font/cpdf_fontencoding.cpp
-core/fpdfapi/font/cpdf_fontencoding.h
-core/fpdfapi/font/cpdf_simplefont.cpp
-core/fpdfapi/font/cpdf_truetypefont.cpp
-core/fpdfapi/font/cpdf_type1font.cpp
-core/fpdfapi/page/cpdf_colorspace.cpp
-core/fpdfapi/page/cpdf_colorspace_unittest.cpp
-core/fpdfapi/page/cpdf_devicecs.cpp
-core/fpdfapi/page/cpdf_dib.cpp
-core/fpdfapi/page/cpdf_docpagedata.cpp
-core/fpdfapi/page/cpdf_image.cpp
-core/fpdfapi/page/cpdf_indexedcs.cpp
-core/fpdfapi/page/cpdf_meshstream.cpp
-core/fpdfapi/page/cpdf_pageobjectholder_unittest.cpp
-core/fpdfapi/page/cpdf_psengine.cpp
-core/fpdfapi/page/cpdf_psengine_unittest.cpp
-core/fpdfapi/page/cpdf_sampledfunc.cpp
-core/fpdfapi/page/cpdf_streamcontentparser.cpp
-core/fpdfapi/page/cpdf_streamparser.cpp
-core/fpdfapi/page/cpdf_textobject.cpp
-core/fpdfapi/page/cpdf_transferfuncdib.cpp
-core/fpdfapi/parser/cpdf_array_unittest.cpp
-core/fpdfapi/parser/cpdf_crypto_handler.cpp
-core/fpdfapi/parser/cpdf_object_unittest.cpp
-core/fpdfapi/parser/cpdf_parser.cpp
-core/fpdfapi/parser/cpdf_parser_unittest.cpp
-core/fpdfapi/parser/cpdf_security_handler.cpp
-core/fpdfapi/parser/cpdf_simple_parser_unittest.cpp
-core/fpdfapi/parser/cpdf_stream_acc.cpp
-core/fpdfapi/parser/cpdf_syntax_parser_unittest.cpp
-core/fpdfapi/parser/fpdf_parser_decode.cpp
-core/fpdfapi/parser/fpdf_parser_decode_unittest.cpp
-core/fpdfapi/render/charposlist.cpp
-core/fpdfapi/render/cpdf_docrenderdata.cpp
-core/fpdfapi/render/cpdf_docrenderdata_unittest.cpp
-core/fpdfapi/render/cpdf_imagerenderer.cpp
-core/fpdfapi/render/cpdf_rendershading.cpp
-core/fpdfapi/render/cpdf_renderstatus.cpp
-core/fpdfapi/render/cpdf_type3cache.cpp
-core/fpdfdoc/cpdf_aaction.cpp
-core/fpdfdoc/cpdf_action.cpp
-core/fpdfdoc/cpdf_defaultappearance_unittest.cpp
-core/fpdfdoc/cpdf_filespec.cpp
-core/fpdfdoc/cpdf_filespec_unittest.cpp
-core/fpdfdoc/cpdf_formcontrol.cpp
-core/fpdfdoc/cpdf_pagelabel.cpp
-core/fpdfdoc/cpvt_section.cpp
-core/fpdfdoc/cpvt_variabletext.cpp
-core/fpdftext/cpdf_linkextract_unittest.cpp
-core/fpdftext/cpdf_textpage.cpp
-core/fpdftext/cpdf_textpagefind.cpp
-core/fxcodec/basic/a85_unittest.cpp
-core/fxcodec/basic/rle_unittest.cpp
-core/fxcodec/bmp/cfx_bmpdecompressor.cpp
-core/fxcodec/fax/faxmodule.cpp
-core/fxcodec/flate/flatemodule.cpp
-core/fxcodec/flate/flatemodule_unittest.cpp
-core/fxcodec/fx_codec.cpp
-core/fxcodec/gif/cfx_gifcontext.cpp
-core/fxcodec/gif/cfx_gifcontext_unittest.cpp
-core/fxcodec/gif/lzw_decompressor.cpp
-core/fxcodec/gif/lzw_decompressor_unittest.cpp
-core/fxcodec/jbig2/JBig2_ArithDecoder.cpp
-core/fxcodec/jbig2/JBig2_ArithIntDecoder.cpp
-core/fxcodec/jbig2/JBig2_Context.cpp
-core/fxcodec/jbig2/JBig2_GrdProc.cpp
-core/fxcodec/jbig2/JBig2_GrrdProc.cpp
-core/fxcodec/jbig2/JBig2_HtrdProc.cpp
-core/fxcodec/jbig2/JBig2_HuffmanTable.cpp
-core/fxcodec/jbig2/JBig2_Image.cpp
-core/fxcodec/jbig2/JBig2_Image.h
-core/fxcodec/jbig2/JBig2_Image_unittest.cpp
-core/fxcodec/jbig2/JBig2_PddProc.cpp
-core/fxcodec/jbig2/JBig2_SddProc.cpp
-core/fxcodec/jbig2/JBig2_TrdProc.cpp
-core/fxcodec/jbig2/jbig2_decoder.cpp
-core/fxcodec/jpeg/jpeg_progressive_decoder.cpp
-core/fxcodec/jpeg/jpegmodule.cpp
-core/fxcodec/jpx/cjpx_decoder.cpp
-core/fxcodec/jpx/jpx_decode_utils.cpp
-core/fxcodec/jpx/jpx_unittest.cpp
-core/fxcodec/progressive_decoder.cpp
-core/fxcodec/progressive_decoder.h
-core/fxcodec/tiff/tiff_decoder.cpp
-core/fxge/agg/fx_agg_driver.cpp
-core/fxge/android/cfpf_skiafontmgr.cpp
-core/fxge/apple/fx_apple_impl.cpp
-core/fxge/apple/fx_apple_platform.cpp
-core/fxge/apple/fx_apple_platform.h
-core/fxge/apple/fx_quartz_device.cpp
-core/fxge/apple/fx_quartz_device.h
-core/fxge/cfx_cliprgn.cpp
-core/fxge/cfx_face.cpp
-core/fxge/cfx_folderfontinfo.cpp
-core/fxge/cfx_font.cpp
-core/fxge/cfx_fontmapper.cpp
-core/fxge/cfx_fontmgr.cpp
-core/fxge/cfx_glyphcache.cpp
-core/fxge/cfx_path.cpp
-core/fxge/cfx_renderdevice.cpp
-core/fxge/dib/blend.cpp
-core/fxge/dib/cfx_bitmapcomposer.cpp
-core/fxge/dib/cfx_cmyk_to_srgb.cpp
-core/fxge/dib/cfx_dibbase.cpp
-core/fxge/dib/cfx_dibitmap.cpp
-core/fxge/dib/cfx_dibitmap_unittest.cpp
-core/fxge/dib/cfx_imagetransformer.cpp
-core/fxge/dib/cfx_scanlinecompositor.cpp
-core/fxge/dib/cstretchengine.cpp
-core/fxge/dib/cstretchengine.h
-core/fxge/freetype/fx_freetype.cpp
-core/fxge/linux/fx_linux_impl.cpp
-core/fxge/skia/cfx_dibbase_skia.cpp
-core/fxge/skia/fx_skia_device.cpp
-core/fxge/win32/cfx_psrenderer.cpp
-core/fxge/win32/cgdi_device_driver.cpp
-core/fxge/win32/cgdi_plus_ext.cpp
-core/fxge/win32/cps_printer_driver.cpp
-core/fxge/win32/cpsoutput.cpp
-core/fxge/win32/ctext_only_printer_driver.cpp
-core/fxge/win32/cwin32_platform.cpp
-fpdfsdk/cpdfsdk_appstream.cpp
-fpdfsdk/fpdf_annot.cpp
-fpdfsdk/fpdf_annot_embeddertest.cpp
-fpdfsdk/fpdf_attachment.cpp
-fpdfsdk/fpdf_dataavail_embeddertest.cpp
-fpdfsdk/fpdf_doc.cpp
-fpdfsdk/fpdf_doc_embeddertest.cpp
-fpdfsdk/fpdf_editimg.cpp
-fpdfsdk/fpdf_editpage.cpp
-fpdfsdk/fpdf_editpage_embeddertest.cpp
-fpdfsdk/fpdf_edittext.cpp
-fpdfsdk/fpdf_formfill_embeddertest.cpp
-fpdfsdk/fpdf_ppo.cpp
-fpdfsdk/fpdf_ppo_embeddertest.cpp
-fpdfsdk/fpdf_save_embeddertest.cpp
-fpdfsdk/fpdf_signature.cpp
-fpdfsdk/fpdf_structtree_embeddertest.cpp
-fpdfsdk/fpdf_sysfontinfo_embeddertest.cpp
-fpdfsdk/fpdf_text_embeddertest.cpp
-fpdfsdk/fpdf_view.cpp
-fpdfsdk/fpdf_view_embeddertest.cpp
-fxbarcode/oned/BC_OneDimWriter.cpp
-fxbarcode/oned/BC_OnedCodaBarWriter.cpp
-fxbarcode/oned/BC_OnedCodaBarWriter_unittest.cpp
-fxbarcode/oned/BC_OnedCode128Writer.cpp
-fxbarcode/oned/BC_OnedCode128Writer_unittest.cpp
-fxbarcode/oned/BC_OnedCode39Writer.cpp
-fxbarcode/oned/BC_OnedCode39Writer_unittest.cpp
-fxbarcode/oned/BC_OnedEAN13Writer.cpp
-fxbarcode/oned/BC_OnedEAN13Writer_unittest.cpp
-fxbarcode/oned/BC_OnedEAN8Writer.cpp
-fxbarcode/oned/BC_OnedEAN8Writer_unittest.cpp
-fxbarcode/oned/BC_OnedUPCAWriter_unittest.cpp
-fxbarcode/pdf417/BC_PDF417.cpp
-fxbarcode/pdf417/BC_PDF417ErrorCorrection.cpp
-fxbarcode/pdf417/BC_PDF417HighLevelEncoder.cpp
-fxbarcode/pdf417/BC_PDF417HighLevelEncoder_unittest.cpp
-fxbarcode/pdf417/BC_PDF417Writer_unittest.cpp
-fxbarcode/qrcode/BC_QRCodeWriter_unittest.cpp
-fxbarcode/qrcode/BC_QRCoderEncoder.cpp
-fxbarcode/qrcode/BC_QRCoderMatrixUtil.cpp
-fxbarcode/qrcode/BC_QRCoderVersion.cpp
-fxjs/cfx_globaldata.cpp
-fxjs/xfa/cfxjse_formcalc_context.cpp
-xfa/fde/cfde_texteditengine.cpp
-xfa/fde/cfde_textout.cpp
-xfa/fde/cfde_wordbreak_data.cpp
-xfa/fgas/crt/cfgas_decimal.cpp
-xfa/fgas/crt/cfgas_stringformatter.cpp
-xfa/fgas/crt/cfgas_stringformatter_unittest.cpp
-xfa/fgas/font/cfgas_defaultfontmanager.cpp
-xfa/fgas/font/cfgas_fontmgr.cpp
-xfa/fgas/font/cfgas_fontmgr.h
-xfa/fgas/font/cfgas_pdffontmgr.cpp
-xfa/fgas/graphics/cfgas_gegraphics.cpp
-xfa/fgas/graphics/cfgas_geshading.cpp
-xfa/fgas/graphics/cfgas_geshading.h
-xfa/fgas/layout/cfgas_char.cpp
-xfa/fgas/layout/cfgas_rtfbreak.cpp
-xfa/fgas/layout/cfgas_txtbreak.cpp
-xfa/fgas/layout/fgas_arabic.cpp
-xfa/fgas/layout/fgas_linebreak.cpp
-xfa/fwl/cfwl_monthcalendar.cpp
-xfa/fwl/theme/cfwl_checkboxtp.cpp
-xfa/fwl/theme/cfwl_pushbuttontp.cpp
-xfa/fwl/theme/cfwl_widgettp.cpp
-xfa/fxfa/cxfa_ffdocview.cpp
-xfa/fxfa/cxfa_ffwidgethandler.cpp
-xfa/fxfa/cxfa_textlayout.cpp
-xfa/fxfa/formcalc/cxfa_fmlexer.cpp
-xfa/fxfa/formcalc/cxfa_fmlexer_unittest.cpp
-xfa/fxfa/layout/cxfa_contentlayoutprocessor.cpp
-xfa/fxfa/parser/cxfa_color.cpp
-xfa/fxfa/parser/cxfa_localemgr.cpp
-xfa/fxfa/parser/cxfa_localevalue.cpp
-xfa/fxfa/parser/cxfa_node.cpp
-xfa/fxfa/parser/cxfa_xmllocale_unittest.cpp
-xfa/fxfa/parser/xfa_basic_data.cpp
-xfa/fxfa/parser/xfa_utils_unittest.cpp