David Steele
c4b30af645
Add Buffer object.
2017-12-22 19:56:01 -05:00
David Steele
f89b027dec
Improve String and StringList modules.
2017-12-22 19:30:15 -05:00
David Steele
5ea1263d8e
Run valgrind on all C unit tests.
...
Also refactor code to make valgrind happy.
2017-12-22 18:36:36 -05:00
David Steele
8d4674031e
More config parsing in C in preparation for all config parsing in C.
2017-12-05 10:09:07 -05:00
David Steele
4f1725dc36
Replace cfgCommandTotal()/cfgOptionTotal() functions with constants.
...
The constants are applicable in more cases and allow the compiler to optimize certain loops more efficiently.
2017-12-05 09:45:51 -05:00
David Steele
915ae5662a
Implement version command in C.
2017-11-28 21:44:05 -05:00
David Steele
74d6398ad2
The pgbackrest executable is now a C binary instead of Perl.
...
This allows certain time-critical commands (like async archive-push) to run more quickly.
2017-11-26 18:43:51 -05:00
David Steele
4d8ad4ac18
Add List and StringList objects to simplify list handling.
2017-11-26 18:23:11 -05:00
David Steele
1b3e8e0a5b
Add String object to simplify string handling.
2017-11-26 17:49:10 -05:00
David Steele
c164fc5fb9
Add memGrowRaw() to memory context module.
2017-11-26 12:22:50 -05:00
David Steele
deae0b8cd7
Refactor C page checksum unit test to compile with -Wstrict-aliasing.
2017-11-20 08:58:47 -05:00
David Steele
5d741ea9a9
Refactor C unit test macros so they compile with -Wstrict-aliasing.
2017-11-19 16:46:31 -05:00
David Steele
3b43047e0d
Disable -Wclobber compiler warning.
...
...because it is mostly useless but keep the rest of of -Wextra.
2017-11-19 16:44:33 -05:00
David Steele
dc1a5c18ac
Wrap try in a do...while loop to make sure that no random else is attached to the main if block.
2017-11-19 16:30:23 -05:00
David Steele
9395ad7043
Improve base64 implementation.
...
Different encoded strings could be generated based on compiler optimizations. Even though decoding was still successful the encoded strings did not match the standard.
2017-11-18 22:49:43 -05:00
David Steele
cf7da546a3
Simplify try..catch..finally names.
2017-11-13 21:22:13 -05:00
David Steele
bcdfc7d0b5
Enable additional warnings for C builds.
2017-11-06 22:55:34 -05:00
David Steele
8d6a08a32b
Library code for repository encryption support.
2017-11-03 13:57:58 -04:00
David Steele
ac542788da
Convert configuration definitions from auto-generated functions to auto-generated data structures.
2017-11-02 08:14:13 -04:00
David Steele
55f68ef013
Remove configurable option hints.
...
db-path was the only option with a hint so the feature seemed wasteful. All missing stanza options now output the same hint without needing configuration.
2017-10-30 10:58:04 -04:00
David Steele
1ef27ec8c2
Add list type for options.
...
The hash type was being used for lists with an additional flag (`value-hash`) to indicate that it was not really a hash.
2017-10-30 10:50:35 -04:00
David Steele
f4524aeaa9
Add base64 encode/decode.
2017-10-18 11:14:26 -04:00
David Steele
583a76f605
Add C memory contexts.
2017-10-16 11:25:49 -04:00
David Steele
6f5186f9e6
Convert config tests into C unit tests.
2017-10-16 11:13:51 -04:00
David Steele
9d78948a14
Improvements to page checksum module and tests:
...
* Page checksum module uses new C error handler.
* Convert page checksum tests into C unit tests.
2017-10-16 11:03:06 -04:00
David Steele
80758f0023
Add test macros for C results and errors.
2017-10-16 10:54:35 -04:00
David Steele
f1e739b4aa
Add C error handler.
...
Basic try ... catch ... finally pattern to simplify error handling in C.
2017-10-16 10:09:56 -04:00
David Steele
10dfbd90b5
Add C unit test infrastructure.
2017-10-12 12:55:48 -04:00