Opened 2 years ago

Closed 2 years ago

#5446 closed task (complete)

Use g++ sanitizers

Reported by: fdupont Owned by:
Priority: low Milestone: Kea1.4
Component: build system Version: git
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DHCP Feature Depending on Ticket:
Estimated Difficulty: 0 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

Mark says things are in https://jenkins.isc.org/view/BIND-jobs_testing/ and Ondrej offered its help so I resume my old idea to use gcc/g++ sanitizers with Kea.

Subtickets

Change History (2)

comment:1 Changed 2 years ago by fdupont

Summary of findings in jenkins settings:

  • there is a hack to not remove atf.out IMHO very specific
  • -fsanitize=xxx (one each time) in CFLAGS and LDFLAGS in ./configure command line
  • make -k check (-k == keep-going)
  • aft-report from atf.out (again very specific)

Summary from Clang doc (sanitizers are available with Clang too, shall check soon with macOS and Xcode):

  • use -fno-omit-frame-pointer for better reports
  • do not use ld but clang or gcc driver (check what libtool does but it should be good)
  • some macOS specific stuff (so should try on Linux first),

Summary from gcc doc:

  • available address (with pointer-compare and pointer-subtract options), thread, leak, undefined (with options)
  • also -fsanitize-address-use-after-scope (there is at least in the asio code so it will be useful...)

comment:2 Changed 2 years ago by fdupont

  • Milestone changed from Kea-proposed to Kea1.4
  • Priority changed from medium to low
  • Resolution set to complete
  • Status changed from new to closed

Closing as the references are there.

Note: See TracTickets for help on using tickets.