ObjFW  History of src/OFSecureData.m of 0b962df002af925d65cfa70859a3df6e8c428e66d36d31cdc7312ca26e70db2d

History of the file that is called src/OFSecureData.m at check-in 0b962df002af925d65cfa70859a3df6e8c428e66d36d31cdc7312ca26e70db2d

2024-04-03
02:16
[5df33e3bf5] part of check-in [7413a728a7] Change license to LGPLv3 only (check-in: [7413a728a7] user: js, branch: trunk, size: 15153) [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
[d28acd1a78] part of check-in [26ddd2e4e4] Update copyright (check-in: [26ddd2e4e4] user: js, branch: trunk, size: 14945) [annotate] [blame] [check-ins using] [diff]
2023-08-07
20:59
[21abf2b09b] part of check-in [5f9d8d958b] Make GCC happy again (check-in: [5f9d8d958b] user: js, branch: trunk, size: 14945) [annotate] [blame] [check-ins using] [diff]
18:20
[a15fe6dfde] part of check-in [91fa20d993] Make OFData a class cluster (check-in: [91fa20d993] user: js, branch: trunk, size: 13395) [annotate] [blame] [check-ins using] [diff]
2023-04-10
19:22
[47b9727f66] part of check-in [6ce0093f8d] Remove OFSerialization

While the idea sounds nice that the tag name is the class, this means the
serialization includes whether something is mutable or immutable. This means
doing as much as making something immutable changes the serialization, which
can then cause issues after being deserialized. (check-in: [6ce0093f8d] user: js, branch: trunk, size: 14585) [annotate] [blame] [check-ins using] [diff]

2023-01-06
09:04
[6e16784ba9] part of check-in [8939cbdb52] Update copyright (check-in: [8939cbdb52] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
2022-11-24
00:21
[f035278e38] part of check-in [23272e6d43] Rename OFURI to OFIRI (check-in: [23272e6d43] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
2022-09-28
21:40
[7420c1ca0e] part of check-in [e7ab06503c] Rename OFUR{L -> I} in preparation for URI support (check-in: [e7ab06503c] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
[ea6060539c] part of check-in [1a86b8175b] Update copyright (check-in: [1a86b8175b] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
2021-05-02
09:25
[80f9f47dea] part of check-in [19236ddfe7] A few more missed renames (check-in: [19236ddfe7] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
2021-04-25
16:20
[850d3da4ab] part of check-in [b648c7090f] OFSecureData: Move chunkSize into #ifdef (check-in: [b648c7090f] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]
11:05
[7db7cba207] part of check-in [27103855c2] A few last renames (check-in: [27103855c2] user: js, branch: new-naming-convention, size: 14750) [annotate] [blame] [check-ins using] [diff]
2021-04-18
20:51
[ffb9b9d2c6] part of check-in [35de667566] Rename everything in several smaller files (check-in: [35de667566] user: js, branch: new-naming-convention, size: 14745) [annotate] [blame] [check-ins using] [diff]
15:55
[971ad6d5d4] part of check-in [7392685ffc] Rename all functions in macros.h (check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 14744) [annotate] [blame] [check-ins using] [diff]
2021-04-17
22:45
[13d1d2603b] part of check-in [498074dab9] Rename of_(re)alloc and add OFFreeMemory (check-in: [498074dab9] user: js, branch: new-naming-convention, size: 14764) [annotate] [blame] [check-ins using] [diff]
15:45
[4b08053bfb] part of check-in [cc3a4a7b43] of_tlskey_t -> OFTLSKey (check-in: [cc3a4a7b43] user: js, branch: new-naming-convention, size: 14690) [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
[2689b5b4f2] part of check-in [1b82d3bf4f] *.m: Fold methods into one line where it fits (check-in: [1b82d3bf4f] user: js, branch: trunk, size: 14741) [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
[3993fa04e8] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 14747) [annotate] [blame] [check-ins using] [diff]
2020-12-20
21:26
[a977d1a98b] part of check-in [5b37fbeb82] Return error instead of using errno for threading

errno is problematic for Amiga libraries and is also not thread-safe on
some systems, even though it should. (check-in: [5b37fbeb82] user: js, branch: trunk, size: 14836) [annotate] [blame] [check-ins using] [diff]

2020-11-29
00:59
[7de8ab3a25] part of check-in [b46492384a] of_bitset_*: Use CHAR_BIT instead of 8 (check-in: [b46492384a] user: js, branch: trunk, size: 14753) [annotate] [blame] [check-ins using] [diff]
2020-11-14
12:23
[960649af1d] part of check-in [627511b032] Rename of_malloc and of_calloc

The new names should be more accurate. (check-in: [627511b032] user: js, branch: trunk, size: 14715) [annotate] [blame] [check-ins using] [diff]

2020-11-06
02:12
[8a522b1fcf] part of check-in [9d74d1b74e] OFData: Make parameter order more consistent (check-in: [9d74d1b74e] user: js, branch: trunk, size: 14705) [annotate] [blame] [check-ins using] [diff]
01:11
[3742a91d29] part of check-in [1a70abc65d] OF*Data: Avoid -[allocMemoryWithSize:] (check-in: [1a70abc65d] user: js, branch: trunk, size: 14696) [annotate] [blame] [check-ins using] [diff]
2020-11-04
23:18
[de9178b4e4] part of check-in [3d8286feee] Remove of_free()

While it makes sense to wrap malloc and calloc to replace the error
checking with exceptions, it does not make sense to wrap free. (check-in: [3d8286feee] user: js, branch: trunk, size: 14705) [annotate] [blame] [check-ins using] [diff]

2020-10-25
23:55
[8eda9d8f37] part of check-in [8be102635a] OFSecureData: Fix memory leak on error (check-in: [8be102635a] user: js, branch: trunk, size: 14726) [annotate] [blame] [check-ins using] [diff]
23:33
[eaba88b9eb] part of check-in [d0ae3bfd6c] Add of_{malloc,calloc,realloc,free} (check-in: [d0ae3bfd6c] user: js, branch: trunk, size: 14399) [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
[98976ad696] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 14701) [annotate] [blame] [check-ins using] [diff]
2019-12-27
21:43
[4f8dc33f67] part of check-in [d5c4dedada] OFSecureData: Fix #ifdefs (check-in: [d5c4dedada] user: js, branch: trunk, size: 14698) [annotate] [blame] [check-ins using] [diff]
00:41
[800160da50] part of check-in [e629dc83a9] OFSecureData: Add allowsSwappableMemory property

With this property, it's possible to specify whether the memory should
be protected from swapping or not. This makes it easier for e.g. the
crypto hash classes: They can now just always use OFSecureData without
wasting unswappable memory if it's not needed. (check-in: [e629dc83a9] user: js, branch: trunk, size: 14543) [annotate] [blame] [check-ins using] [diff]

2019-12-15
14:42
[0b2ff22574] part of check-in [60caadeb5d] Make +[OFSecureData isSecure] per instance

The reason for this change is that whether non-swappable memory can be
allocated or not is something that changes over time, so calling
+[isSecure] always had a potential for a race. The only reliable way is
to allocate the memory and then report whether it's swappable or not.

It's also called -[isSwappable] now to be more precise. (check-in: [60caadeb5d] user: js, branch: trunk, size: 12950) [annotate] [blame] [check-ins using] [diff]

2019-10-20
13:15
[4b72bb7708] part of check-in [9122facff6] Fix missing fast paths in -[isEqual:] (check-in: [9122facff6] user: js, branch: trunk, size: 13479) [annotate] [blame] [check-ins using] [diff]
2019-08-01
20:14
[fa28a56f57] part of check-in [5358e9ea6a] Split threading.[hm] into multiple files

This allows the runtime to only link against the parts it needs, without
pulling in unnecessary parts like thread spawning, TLS and conditions. (check-in: [5358e9ea6a] user: js, branch: trunk, size: 13442) [annotate] [blame] [check-ins using] [diff]

2019-03-08
00:35
[e075377cde] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 13445) [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
[e8696d3e65] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 13255) [annotate] [blame] [check-ins using] [diff]
2018-11-04
20:11
[520efa2118] part of check-in [0487a81ced] OFSecureData: Add support for preallocating memory

This is useful to allocate secure memory before enabling a sandbox that
does not allow it anymore. (check-in: [0487a81ced] user: js, branch: trunk, size: 13249) [annotate] [blame] [check-ins using] [diff]

2018-06-24
19:53
[431c3bcd83] part of check-in [68c8c02e80] OFSecureData: Add constant-time isEqual: (check-in: [68c8c02e80] user: js, branch: trunk, size: 10967) [annotate] [blame] [check-ins using] [diff]
2018-06-03
23:31
[1f55e2f307] part of check-in [aacb5897a0] Add -[OFObject allocZeroedMemoryWithSize:(count:)] (check-in: [aacb5897a0] user: js, branch: trunk, size: 10592) [annotate] [blame] [check-ins using] [diff]
2018-04-08
20:28
[8841787590] part of check-in [75ec6edab2] +[OFSecureData isSecure]: Check for EPERM (check-in: [75ec6edab2] user: js, branch: trunk, size: 10634) [annotate] [blame] [check-ins using] [diff]
13:37
[43dbd361d6] part of check-in [0e45b7bb1c] OFSecureData: Add a memory allocator

This avoids having at last one page per OFSecureData and allows multiple
small OFSecureData sharing the same page, which is important on systems
where the number of pages that can be locked is very limited. (check-in: [0e45b7bb1c] user: js, branch: trunk, size: 10038) [annotate] [blame] [check-ins using] [diff]

2018-04-07
20:48
[5b69d2d183] part of check-in [edbb1ff5f4] Add +[OFSecureData isSecure] (check-in: [edbb1ff5f4] user: js, branch: trunk, size: 5407) [annotate] [blame] [check-ins using] [diff]
20:05
[6ea795ac32] part of check-in [a5006f1d31] OF*Hash: Make use of the new OFSecureData (check-in: [a5006f1d31] user: js, branch: trunk, size: 5276) [annotate] [blame] [check-ins using] [diff]
14:13
Added: [9dff65470c] part of check-in [d4d9072480] Add OFSecureData (check-in: [d4d9072480] user: js, branch: trunk, size: 5266) [annotate] [blame] [check-ins using]