summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2017-03-28Fix message length calculation for arrays of size 1 (issue #253)Petteri Aimonen1-1/+6
2017-03-28Add regression test for issue #253Petteri Aimonen3-0/+46
2017-03-12Fix potential out-of-bounds read with more than 64 required fieldsPetteri Aimonen1-3/+12
2017-03-12Improve varint unittest coverage for error casesPetteri Aimonen1-2/+46
2017-03-05Forgot to fill in the datesPetteri Aimonen2-2/+2
2017-03-05Setting version to 0.3.9-devPetteri Aimonen4-4/+4
2017-03-05Publishing nanopb-0.3.8Petteri Aimonen4-4/+4
2017-03-05Update changelogPetteri Aimonen1-1/+1
2017-03-02Fix alltypes_callback testcasePetteri Aimonen4-10/+24
The test case was erroneously comparing whole submsg structures, which could result in false errors when padding bytes differed.
2017-03-02Fix callback pointer corruption in proto3 mode (issue #249)Petteri Aimonen1-1/+1
2017-03-02Add regression test for issue #249Petteri Aimonen3-0/+81
2017-03-02Add callback test for proto3 modePetteri Aimonen4-0/+744
2017-03-02Fix bug in alltypes_callback test casePetteri Aimonen2-4/+5
2017-02-26Update changelogPetteri Aimonen2-2/+24
2017-02-25Fix build failure (const_cast name conflict)Petteri Aimonen1-4/+4
Thought I was cleaning up the naming by calling the function const_cast(), because that's what it does. But of course it conflicts with the C++ builtin, so renaming it to pb_const_cast() now.
2017-02-25Add transitional options.proto file (#241)Petteri Aimonen1-0/+120
2017-02-25Add better error message on Python library version imcompatibility (issue #240)Petteri Aimonen1-0/+14
2017-02-25Make pb_check_proto3_default_value() recurse into submessages (issue #247)Petteri Aimonen1-23/+47
2017-02-25Add testcase for issue #247Petteri Aimonen3-0/+58
2017-02-25Windows build fixPetteri Aimonen1-2/+3
2017-02-25Merge pull request #245 from jdemar/masterPetteri Aimonen6-1/+417
Fix infinite loop in pb_check_proto3_default_value
2017-02-24Fix infinite loop in pb_check_proto3_default_valueJustin DeMartino6-1/+417
- Occurs with proto3, PB_FIELD_16BIT and submessage > 255 bytes - Add test case for PB_FIELD_16BIT and proto3
2017-02-24Fix build failurePetteri Aimonen1-1/+2
2017-02-24Add test coverage for calling pb_release() on a message with callback fields.Petteri Aimonen2-2/+13
2017-02-22Add fixed length bytes to alltypes test case (issue #244)Petteri Aimonen22-20/+80
2017-02-22Extend inline / fixed length bytes array support (issue #244)Petteri Aimonen7-85/+97
Adds support for proto3 and POINTER field types to have fixed length bytes arrays. Also changed the .proto option to a separate fixed_length:true, while also supporting the old FT_INLINE option. Restructured the generator and decoder logic to threat the inline bytes fields more like "just another field type".
2017-02-20Add new option max_length for strings (issue #107)Petteri Aimonen4-0/+11
Max_size is the allocated size, so users had to add +1 for the null terminator. Max_length does the +1 automatically in the generator.
2017-02-13Update download links (changes in webhost system)Petteri Aimonen1-3/+3
2017-02-12Merge branch 'master' of github.com:nanopb/nanopbPetteri Aimonen6-37/+94
2017-02-12Zero-valued extension fields were mistakenly ignored by encoder. (issue #242)Petteri Aimonen1-2/+7
2017-02-12Add regression test for issue 242Petteri Aimonen3-0/+79
2017-01-21Merge pull request #239 from mxk/plugin-fixPetteri Aimonen2-2/+2
Fix documentation for protoc --plugin argument
2017-01-20Fix documentation for protoc --plugin argumentMaxim Khitrov2-2/+2
2017-01-18Merge pull request #237 from wak-google/fix-buildPetteri Aimonen1-26/+57
WIP: cmake cleanup to support installable host tooling
2017-01-18Merge pull request #236 from wak-google/fix-libPetteri Aimonen1-3/+3
cmake: Fix library name
2017-01-17cmake: Cleanup the build so that host and runtime tooling is installableWilliam A. Kennington III1-26/+57
Signed-off-by: William A. Kennington III <wak@google.com>
2017-01-17cmake: Fix library nameWilliam A. Kennington III1-3/+3
The produced static library should be `libprotobuf-nanopb.a` instead of the current `liblibprotobuf-nanopb.a`. Signed-off-by: William A. Kennington III <wak@google.com>
2017-01-12Merge pull request #230 from Tobba/nonempty-substringPetteri Aimonen3-9/+35
Fix closing a non-empty substream resulting in an incorrect stream state
2017-01-12Fix closing a non-empty substream resulting in an incorrect stream stateTobba3-9/+35
2016-12-31Merge branch 'master' of github.com:nanopb/nanopbPetteri Aimonen2-2/+5
2016-12-31Fix multiple oneofs in same message (issue #229)Petteri Aimonen3-8/+20
Previously the field iterator logic didn't know whether two oneof fields were part of the same union, or separate. This caused wrong pointers to be calculated if multiple oneofs were inside a single message. This commit fixes this by using dataoffset of PB_SIZE_MAX to indicate union fields after the first field. Theoretically PB_SIZE_MAX is also a valid value for data offset, which could cause errors. Adding a compile-time assert for this is somewhat difficult. However I consider it extremely unlikely that there is any platform that could trigger this situation, as it would require 255 bytes of extra data/padding between two protobuf oneof fields. On 64-bit architectures the worst case is 16 bytes, and even esoteric platforms only align to 64 bytes or so. Manual modification of the generated .pb.h file could trigger this, but even then it would require pretty bad luck to happen.
2016-12-31Add testcase for issue #229Petteri Aimonen3-0/+59
2016-12-23Update readmePetteri Aimonen1-1/+1
2016-12-23Merge pull request #231 from Tobba/expose-varint32Petteri Aimonen2-2/+5
Make pb_decode_varint32 public API
2016-12-23Make pb_decode_varint32 public APITobba2-2/+5
2016-12-22Allow overriding proto3 mode (#228)Petteri Aimonen4-5/+23
2016-12-09Enable clang integer sanitizer and clean up a few warnings.Petteri Aimonen3-5/+7
Changed to use simple indexing instead of while (count--) in buf_read()/buf_write(), because the count overflowed from 0 to max on the last iteration. While the unsigned integer overflow is defined and behaviour was correct, making this simple change allowed enabling the sanitizer which might catch true errors elsewhere in the code.
2016-12-09Merge branch 'kurddt-fix_unalign' (issues #226, #227)Petteri Aimonen1-22/+55
2016-12-09Add regression test for issue #227Petteri Aimonen4-1/+39
2016-12-09Refactor proto3 logic into pb_check_proto3_default_value()Petteri Aimonen1-26/+55
Mainly to clean up the code. Also fixed handling of PB_LTYPE_FIXED_LENGTH_BYTES for proto3 files.