1. 20 Apr, 2022 1 commit
    • Ruben's avatar
      Move stddef.h and stdint.h out from archcap-defs.h · e8739df9
      Ruben authored
      The stddef.h and stdint.h aren't prerequisites for the definitions in
      the archcap-defs.h itself. Remove them from archcap-defs.h and include
      them in other archcap headers, for which the standard headers are
      prerequisites.
      
      Change-Id: Id70d15c9a0483b82eb8d4e22562ac01037b7672d
      e8739df9
  2. 07 Dec, 2021 1 commit
  3. 07 Jul, 2021 3 commits
  4. 17 Jun, 2021 1 commit
  5. 14 May, 2021 7 commits
  6. 02 Feb, 2021 1 commit
  7. 27 Jan, 2021 4 commits
    • Oliver Swede's avatar
      Fix mixed linkage error · a9babad5
      Oliver Swede authored
      This ensures the C++ code has C++ linkage in situations where it is included
      from another C++ file (where __cplusplus would be defined such that the
      templates are used) that is using an 'extern "C" {..}' block to change the
      linkage of the included symbols.
      
      Change-Id: Ibe91e9ecd80b99207645341ef23a5f2044a1f21f
      a9babad5
    • Tamás Kaman's avatar
      Add interface to seal/unseal capabilities · 1d756c9d
      Tamás Kaman authored and Oliver Swede's avatar Oliver Swede committed
      Create libarchcap interface for seal/unseal functionality
      that wraps CHERI seal/unseal APIs.
      
      Change-Id: I66aff4877f34e2ef306bb0328692256ef1dad56d
      1d756c9d
    • Oliver Swede's avatar
      Add interface to pre-round bounds in libarchcap · cbd1a505
      Oliver Swede authored
      Add archcap_* interfaces to CHERI intrinsics that provide a method
      for obtaining bounds that are guaranteed to be exactly representable.
      
      For an initial base b and length l, archcap_representable_length(l)
      will return a new aligned length L, while
      archcap_representable_alignment_mask(l) will return a mask that can
      be used to align down b (via a single bitwise AND) to obtain B.
      The resulting bounds (B, L) are then guaranteed to be exactly
      representable, such that a tagged capability will remain tagged after
      archcap_bounds_set_exact(cap, B, L).
      
      Change-Id: Id55a81ce7ea112157a5c97add35fcd2d6173c456
      cbd1a505
    • Kevin Brodsky's avatar
      Make archcap_c_cap_build() compatible with latest LLVM · 903ee962
      Kevin Brodsky authored and Oliver Swede's avatar Oliver Swede committed
      __builtin_cheri_cap_build(key, cap) now only accepts a uintcap_t for
      cap, not a void* __capability. It is still unclear whether this is
      the final prototype for this builtin, for now change the wrapper
      accordingly.
      
      Change-Id: Ic03fc460478364829bf6c4de8d6e8d6ab84c6ff2
      903ee962
  8. 19 Jan, 2021 1 commit
    • Oliver Swede's avatar
      Correct typo in libarchcap · 6fbebed2
      Oliver Swede authored
      The purecap variant of archcap_bounds_set_exact() should call
      archcap_c_bounds_set_exact(), add the missing _c.
      
      Change-Id: I4fe43e29750d87abd4a23fa3d851534db2b6c50b
      6fbebed2
  9. 02 Oct, 2020 1 commit
  10. 27 Aug, 2020 1 commit