summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2013-09-10Compiler options for GCC, clang and tccPetteri Aimonen2-9/+65
2013-09-10Move the declarations of _pb_ostream_t and _pb_istream_t before first use.Petteri Aimonen2-67/+67
Otherwise Microsoft Visual C++ threats them as C++ classes instead of plain structs, forbidding use in C linkage functions. Thanks to Markus Schwarzenberg for the patch. Update issue 84 Status: Started
2013-09-10Build fixes for Windows/Visual C++Petteri Aimonen13-49/+141
2013-09-10Add an example pb_syshdr.h file for platforms without C99.Petteri Aimonen3-0/+89
This allows building the tests easily on Visual C++ in C mode. Also add checks to pb.h that the defined integer types are of the proper sizes. This may prevent some difficult to debug problems later..
2013-09-10Convert more test cases to sconsPetteri Aimonen4-66/+124
2013-09-08Start moving the tests into subfolders. Transition to SCons for build system ↵Petteri Aimonen43-162/+132
for the tests. Only a few tests updated so far. Have to include all the rest before merging to mainline. Update issue 63 Status: Started
2013-09-08Handle unsupported extension field types more gracefully.Petteri Aimonen2-5/+16
Previously the generator would stop with NotImplementedException as soon as a required or repeated extension field is found. New behaviour is to just ignore the unsupported field and note that in a comment in the generated file. Furthermore, allow skipping of extension fields using the generator option (nanopb).type = FT_IGNORE. Update issue 83 Status: FixedInGit
2013-08-18Setting version to 0.2.3-devPetteri Aimonen2-2/+2
2013-08-18Publishing nanopb-0.2.2Petteri Aimonen2-2/+2
2013-08-08Update changelogPetteri Aimonen1-0/+9
2013-08-08Document field extensions supportPetteri Aimonen3-1/+80
Update issue 17 Status: FixedInGit
2013-08-08Document PB_SYSTEM_HEADERPetteri Aimonen2-1/+8
2013-07-22Finish the testcase for extensionsPetteri Aimonen4-6/+29
2013-07-22Fix bugs in extension support when multiple extension fields are present.Petteri Aimonen3-4/+23
2013-07-17Extension support implemented for decoder.Petteri Aimonen3-7/+109
Testing is still needed. Also only 'optional' extension fields are supported now, 'repeated' fields are not yet supported.
2013-07-17Add test case for extensions decodingPetteri Aimonen3-2/+39
2013-07-17Implement extension support for the encoderPetteri Aimonen2-22/+74
2013-07-17Implement generator support for extension fields (no encoder/decoder support ↵Petteri Aimonen6-16/+183
yet)
2013-07-16Fix formatting in documentationPetteri Aimonen1-23/+41
2013-07-16Check for empty message type before incrementing required_field_index.Kent Ryhorchuk1-3/+3
If you have a message that defined as empty, but attempt to decode a message that has one or more unknown fields then pb_decode fails. The method used to count the number of required fields counts 1 required field because the default type of PB_LAST_FIELD is PB_HTYPE_REQUIRED.
2013-07-16Add test case for extra fields in AllTypesPetteri Aimonen2-0/+1
2013-07-06Add pb_decode_delimited and pb_encode_delimited wrapper functions.Petteri Aimonen6-0/+48
Update issue 74 Status: FixedInGit
2013-07-06Clean up the comments in pb_encode.h and pb_decode.hPetteri Aimonen2-86/+150
2013-07-06Add section in pb.h for changing compilation settings.Petteri Aimonen2-19/+64
Update issue 76 Status: FixedInGit
2013-07-06Add error message macros to API reference.Petteri Aimonen1-0/+25
2013-07-06Document the .options file usage.Petteri Aimonen3-48/+193
Also add note about the 'packed' message option being incompatible with CPUs that do not support unaligned access. Update issue 12 Status: FixedInGit Update issue 77 Status: FixedInGit
2013-07-06Switch the example project to use the new .options filePetteri Aimonen2-11/+16
2013-06-03Include the field tags in the generated .pb.h file.Petteri Aimonen1-0/+11
Patch from Michael Haberler.
2013-04-14Setting version to 0.2.2-devPetteri Aimonen2-2/+2
2013-04-14Publishing nanopb-0.2.1Petteri Aimonen2-2/+2
2013-04-14Update changelogPetteri Aimonen1-0/+17
2013-04-14Handle unterminated strings when encoding.Petteri Aimonen3-5/+19
If the null terminator is not present, string will be limited to the data size of the field. If you are still using the pb_enc_string (deprecated since 0.1.3) from callbacks, now would be an excellent time to stop. The pb_field_t for the callback will not contain proper data_size. Use pb_encode_string() instead. Update issue 68 Status: FixedInGit
2013-04-14Fix bug with empty strings in repeated string callbacks.Petteri Aimonen4-2/+23
Fix suggested by Henrik Carlgren. Added also unit test for the bug. Update issue 73 Status: FixedInGit
2013-04-08Avoid maybe-uninitialized warningPetteri Aimonen1-4/+6
Patch from dch.
2013-04-08No need to include stdbool.h separatelydch2-2/+0
2013-04-08__pragma keyword is only supported by recent Microsoft compilersdch1-1/+1
2013-04-02Do not generate has_ fields for callback fields.Petteri Aimonen1-1/+1
The arg field can be used to store the field presence from inside the callback. Furthermore, having the has_ field for encoding callbacks would be more annoying than useful. Update issue 70 Status: FixedInGit
2013-04-02Change the callback function to use void**.Petteri Aimonen11-30/+58
NOTE: This change breaks backwards-compatibility by default. If you have old callback functions, you can define PB_OLD_CALLBACK_STYLE to retain the old behaviour. If you want to convert your old callbacks to new signature, you need to do the following: 1) Change decode callback argument to void **arg and encode callback argument to void * const *arg. 2) Change any reference to arg into *arg. The rationale for making the new behaviour the default is that it simplifies the common case of "allocate some memory in decode callback". Update issue 69 Status: FixedInGit
2013-03-13Fix warning on clang.Petteri Aimonen1-1/+1
Update issue 67 Status: FixedInGit
2013-03-13Add support for packed structures on IAR and MSVC.Petteri Aimonen2-4/+29
Update issue 66 Status: FixedInGit
2013-03-09Make the generator options accept a file name in addition to format string.Petteri Aimonen1-2/+10
2013-03-09Add PB_SYSTEM_HEADER compile time option.Petteri Aimonen3-2/+5
This allows replacing the C99 standard include file names with a single system-specific file. It should provide all the necessary system functions (typedefs, memset, memcpy, strlen). Update issue 62 Status: FixedInGit
2013-03-09Rename pb_field_iterator_t field 'current' to 'pos'.Petteri Aimonen1-38/+38
This avoids a name clash when compiling as Linux kernel module. Update issue 60 Status: FixedInGit
2013-03-09Implement error message support for the encoder side.Petteri Aimonen5-15/+41
Update issue 7 Status: FixedInGit
2013-03-09alltypes.proto no longer needs to include nanopb.protoPetteri Aimonen1-2/+0
2013-03-09Switch alltypes.proto to use the new .options file mechanism.Petteri Aimonen2-23/+26
2013-03-09Add simple support for separate options file.Petteri Aimonen2-33/+87
Update issue 12 Still needs documentation.
2013-03-09Fix additional bug with empty message types.Petteri Aimonen1-0/+3
pb_field_next() would access past the fields array.
2013-03-09Add option to run the tests with mudflap to detect pointer errors.Petteri Aimonen1-0/+8
2013-03-09Improve the fuzztest.Petteri Aimonen1-4/+4
Enable -fstack-protector-all to detect any stack smashing bugs. Also use test_decode3 for maximal vulnerable surface.