apps/agl-service-can-low-level.git
9 years agoAdd pb_common.c to examples
Petteri Aimonen [Tue, 26 Aug 2014 15:05:10 +0000 (18:05 +0300)]
Add pb_common.c to examples

9 years agoAdd #if guard for .pb.h version.
Petteri Aimonen [Tue, 19 Aug 2014 14:55:44 +0000 (17:55 +0300)]
Add #if guard for .pb.h version.

The version in PB_PROTO_HEADER_VERSION can be bumped whenever there
is a breaking change to the generated files, and it will then alert
to the difference.

Update issue 129
Status: FixedInGit

9 years agoRename poorly named identifier to avoid name conflicts.
Petteri Aimonen [Mon, 18 Aug 2014 18:11:10 +0000 (21:11 +0300)]
Rename poorly named identifier to avoid name conflicts.

Update issue 106
Status: FixedInGit

9 years agoRename UNUSED() and STATIC_ASSERT() macros with PB_ prefix.
Petteri Aimonen [Mon, 18 Aug 2014 17:49:48 +0000 (20:49 +0300)]
Rename UNUSED() and STATIC_ASSERT() macros with PB_ prefix.

This avoids possible namespace conflicts with other macros.

9 years agoChange the _count fields to use pb_size_t datatype.
Petteri Aimonen [Mon, 18 Aug 2014 17:09:52 +0000 (20:09 +0300)]
Change the _count fields to use pb_size_t datatype.

Update issue 82
Status: FixedInGit

9 years agoFix windows build error in tests
Petteri Aimonen [Sun, 10 Aug 2014 14:44:27 +0000 (17:44 +0300)]
Fix windows build error in tests

9 years agoAdd document detailing migration from old versions
Petteri Aimonen [Sun, 10 Aug 2014 14:40:17 +0000 (17:40 +0300)]
Add document detailing migration from old versions

9 years agoSwitch pb_encode to use the common iterator logic in pb_common.c
Petteri Aimonen [Sun, 10 Aug 2014 10:01:09 +0000 (13:01 +0300)]
Switch pb_encode to use the common iterator logic in pb_common.c

Update issue 128
Status: FixedInGit

9 years agoSeparate field iterator logic from pb_decode to pb_common.
Petteri Aimonen [Sun, 10 Aug 2014 09:42:01 +0000 (12:42 +0300)]
Separate field iterator logic from pb_decode to pb_common.

9 years agoSetting version to 0.3.0-dev
Petteri Aimonen [Sat, 9 Aug 2014 19:18:24 +0000 (22:18 +0300)]
Setting version to 0.3.0-dev

9 years agoPublishing nanopb-0.2.9
Petteri Aimonen [Sat, 9 Aug 2014 19:01:04 +0000 (22:01 +0300)]
Publishing nanopb-0.2.9

9 years agoUpdate changelog
Petteri Aimonen [Mon, 4 Aug 2014 16:13:39 +0000 (19:13 +0300)]
Update changelog

9 years agoGenerate #defines for initializing message structures.
Petteri Aimonen [Mon, 4 Aug 2014 15:40:40 +0000 (18:40 +0300)]
Generate #defines for initializing message structures.

Usage like:
MyMessage foo = MyMessage_init_default;

MyMessage_init_default will initialize to default values defined in .proto.

MyMessage_init_zero will initialize to null/zero values. Same results as {}
or {0}, but will avoid compiler warnings by initializing everything explicitly.

Update issue 79
Status: FixedInGit

9 years agoAdd skip_message option to generator.
Petteri Aimonen [Sun, 20 Jul 2014 11:56:12 +0000 (14:56 +0300)]
Add skip_message option to generator.

Update issue 121
Status: FixedInGit

9 years agoAdd support for inverted patterns in test framework.
Petteri Aimonen [Sun, 20 Jul 2014 11:55:47 +0000 (14:55 +0300)]
Add support for inverted patterns in test framework.

9 years agoCleanup and comment the code of network_server example.
Petteri Aimonen [Sun, 20 Jul 2014 11:44:41 +0000 (14:44 +0300)]
Cleanup and comment the code of network_server example.

Update issue 123
Status: FixedInGit

9 years agoDo not automatically add a dot with generator -e option.
Petteri Aimonen [Sun, 20 Jul 2014 11:25:11 +0000 (14:25 +0300)]
Do not automatically add a dot with generator -e option.

Now -e option in generator is more versatile. Especially it avoids
double-dot problem with some build systems.

Given foobar.proto, we now get:
-e .pb  =>  foobar.pb.c (default)
-e _pb  =>  foobar_pb.c
-e ''   =>  foobar.c

Note that if you have used -e option previously, you will have to prepend
. to the argument to get the same filenames as before.

Update issue 122
Status: FixedInGit

9 years agoGive better messages about the .options file path.
Petteri Aimonen [Sun, 20 Jul 2014 11:10:47 +0000 (14:10 +0300)]
Give better messages about the .options file path.

Update issue 124
Status: FixedInGit

9 years agoFix problem with .options file and extension fields.
Petteri Aimonen [Sun, 20 Jul 2014 11:02:56 +0000 (14:02 +0300)]
Fix problem with .options file and extension fields.

The options for an extension field were being looked up under wrong name
(MessageName instead of MessageName.fieldname).

Fixed the problem and added regression test. Created a new subfolder for
regression test cases.

Update issue 125
Status: FixedInGit

10 years agoAdd unit tests for allocate_field().
Petteri Aimonen [Mon, 2 Jun 2014 18:20:57 +0000 (21:20 +0300)]
Add unit tests for allocate_field().

10 years agoMake clearer that size = 0 in allocate_field() is not allowed.
Petteri Aimonen [Mon, 2 Jun 2014 18:12:38 +0000 (21:12 +0300)]
Make clearer that size = 0 in allocate_field() is not allowed.

Back in design phase the code used realloc() for freeing the memory
also. However, this is not entirely portable, and therefore the finished
implementation used free() separately.

There were some remnants of the size = 0 code in the allocate_field()
code, which made it somewhat confusing. This change makes it clearer
that size = 0 is not allowed (and not used by nanopb).

10 years agoDon't use SIZE_MAX macro, as it is not in C89.
Petteri Aimonen [Mon, 2 Jun 2014 18:09:06 +0000 (21:09 +0300)]
Don't use SIZE_MAX macro, as it is not in C89.

Update issue 120
Status: FixedInGit

10 years agoAdd PB_PACKED_STRUCT support for Keil MDK-ARM toolchain
Petteri Aimonen [Fri, 30 May 2014 10:45:48 +0000 (13:45 +0300)]
Add PB_PACKED_STRUCT support for Keil MDK-ARM toolchain

Patch from Jon Read.

Update issue 119
Status: FixedInGit

10 years agoSetting version to 0.2.9-dev
Petteri Aimonen [Tue, 20 May 2014 16:52:09 +0000 (19:52 +0300)]
Setting version to 0.2.9-dev

10 years agoUpdate changelog for 0.2.8
Petteri Aimonen [Tue, 20 May 2014 16:46:48 +0000 (19:46 +0300)]
Update changelog for 0.2.8

10 years agoPublishing nanopb-0.2.8
Petteri Aimonen [Tue, 20 May 2014 16:34:28 +0000 (19:34 +0300)]
Publishing nanopb-0.2.8

10 years agoFix bug in alltypes test case that made fuzzing difficult.
Petteri Aimonen [Sat, 17 May 2014 17:28:33 +0000 (20:28 +0300)]
Fix bug in alltypes test case that made fuzzing difficult.

10 years agoFix security issue with PB_ENABLE_MALLOC.
Petteri Aimonen [Sat, 17 May 2014 17:06:55 +0000 (20:06 +0300)]
Fix security issue with PB_ENABLE_MALLOC.

The multiplication in allocate_field could potentially overflow,
leading to allocating too little memory. This could subsequently
allow an attacker to cause a write past the buffer, overwriting
other memory contents.

The attack is possible if untrusted message data is decoded using
nanopb, and the message type includes a pointer-type string or bytes
field, or a repeated numeric field. Submessage fields are not
affected.

This issue only affects systems that have been compiled with
PB_ENABLE_MALLOC enabled. Only version nanopb-0.2.7 is affected,
as prior versions do not include this functionality.

Update issue 117
Status: FixedInGit

10 years agoDocs update, remove malloc from limitations list
Petteri Aimonen [Sat, 26 Apr 2014 17:11:54 +0000 (20:11 +0300)]
Docs update, remove malloc from limitations list

10 years agoAdd option to not add timestamps to .pb.h and .pb.c preambles.
Petteri Aimonen [Fri, 18 Apr 2014 12:40:40 +0000 (15:40 +0300)]
Add option to not add timestamps to .pb.h and .pb.c preambles.

Patch by rusnakp.

Update issue 115
Status: FixedInGit

10 years agoFix typos in scons command line options
Petteri Aimonen [Tue, 15 Apr 2014 17:30:50 +0000 (20:30 +0300)]
Fix typos in scons command line options

10 years agoRemove -O0 from tests CFLAGS so that optimized builds can be tested also
Petteri Aimonen [Tue, 15 Apr 2014 17:27:38 +0000 (20:27 +0300)]
Remove -O0 from tests CFLAGS so that optimized builds can be tested also

10 years agoFix bug in missing_fields test case
Petteri Aimonen [Wed, 9 Apr 2014 16:39:12 +0000 (19:39 +0300)]
Fix bug in missing_fields test case

10 years agoUse -fsanitize=undefined when running tests with clang
Petteri Aimonen [Wed, 9 Apr 2014 16:28:57 +0000 (19:28 +0300)]
Use -fsanitize=undefined when running tests with clang

10 years agoSetting version to 0.2.8-dev
Petteri Aimonen [Mon, 7 Apr 2014 17:45:04 +0000 (20:45 +0300)]
Setting version to 0.2.8-dev

10 years agoPublishing nanopb-0.2.7
Petteri Aimonen [Mon, 7 Apr 2014 17:30:42 +0000 (20:30 +0300)]
Publishing nanopb-0.2.7

10 years agoUpdate changelog
Petteri Aimonen [Mon, 7 Apr 2014 17:30:12 +0000 (20:30 +0300)]
Update changelog

10 years agoAdd rule for building coverage summary using lcov.
Petteri Aimonen [Sat, 5 Apr 2014 10:26:37 +0000 (13:26 +0300)]
Add rule for building coverage summary using lcov.

Also modified a few tests to be more compatible with coverage information,
so that they use the same pb_encode/decode.c instead of making a copy.

10 years agoFix unused parameter warning when building without errmsg.
Petteri Aimonen [Sat, 5 Apr 2014 10:25:44 +0000 (13:25 +0300)]
Fix unused parameter warning when building without errmsg.

10 years agoAdd a convenience function pb_get_encoded_size()
Petteri Aimonen [Sat, 5 Apr 2014 08:26:39 +0000 (11:26 +0300)]
Add a convenience function pb_get_encoded_size()

There is minimal size penalty from this, and it is probably much more
intuitive to use than PB_OSTREAM_SIZING itself.

This has been suggested before also, but I ended up refusing it back
them. Reconsidering it now, I see that an intuitive API is much better
than any amount of documentation explaining a non-intuitive API.

Update issue 16
Status: FixedInGit

10 years agoAdd a 'found' field to pb_extension_t.
Petteri Aimonen [Sat, 5 Apr 2014 08:11:05 +0000 (11:11 +0300)]
Add a 'found' field to pb_extension_t.

Update issue 112
Status: FixedInGit

10 years agoAdd some missing 'static' specifiers
Petteri Aimonen [Wed, 2 Apr 2014 18:08:15 +0000 (21:08 +0300)]
Add some missing 'static' specifiers

Update issue 91
Status: FixedInGit

10 years agoFix splint warnings, add splint test case
Petteri Aimonen [Wed, 2 Apr 2014 17:59:01 +0000 (20:59 +0300)]
Fix splint warnings, add splint test case

10 years agoFix compile error when default value given for extension field.
Petteri Aimonen [Tue, 1 Apr 2014 13:47:53 +0000 (16:47 +0300)]
Fix compile error when default value given for extension field.

Update issue 111
Status: FixedInGit

10 years agoAdd stdlib.h to pb_syshdr.h for dynamic allocation
Petteri Aimonen [Tue, 18 Mar 2014 14:13:54 +0000 (16:13 +0200)]
Add stdlib.h to pb_syshdr.h for dynamic allocation

10 years agoMore configuration options for dynamic alloc
Petteri Aimonen [Mon, 17 Mar 2014 15:25:58 +0000 (17:25 +0200)]
More configuration options for dynamic alloc

10 years agoDocumentation updates
Petteri Aimonen [Sun, 16 Mar 2014 13:52:19 +0000 (15:52 +0200)]
Documentation updates

10 years agoFinish the alltypes_pointer testcase, use valgrind if available.
Petteri Aimonen [Sat, 15 Mar 2014 07:39:27 +0000 (09:39 +0200)]
Finish the alltypes_pointer testcase, use valgrind if available.

10 years agoGet rid of pb_bytes_ptr_t, just allocate pb_bytes_array_t dynamically.
Petteri Aimonen [Sat, 15 Mar 2014 06:45:58 +0000 (08:45 +0200)]
Get rid of pb_bytes_ptr_t, just allocate pb_bytes_array_t dynamically.

This makes the internal logic much simpler, and also keeps the datatypes
more similar between STATIC/POINTER cases. It will still be a bit cumbersome
to use because of variable length array member. Macros PB_BYTES_ARRAY_T(n) and
PB_BYTES_ARRAY_T_ALLOCSIZE(n) have been added to make life a bit easier.

This has the drawback that it is no longer as easy to use externally allocated
byte array as input for bytes field in pointer mode. However, this is still
easy to do using callbacks, so it shouldn't be a large issue.

10 years agoAdd pb_release() function
Petteri Aimonen [Wed, 12 Mar 2014 19:08:35 +0000 (21:08 +0200)]
Add pb_release() function

10 years agoMore fixes for dynamic allocation
Petteri Aimonen [Mon, 10 Mar 2014 16:19:38 +0000 (18:19 +0200)]
More fixes for dynamic allocation

10 years agoBugfixes for dynamic allocation
Petteri Aimonen [Tue, 25 Feb 2014 17:58:11 +0000 (19:58 +0200)]
Bugfixes for dynamic allocation

10 years agoBeginnings of malloc support in pb_decode
Petteri Aimonen [Mon, 24 Feb 2014 19:09:25 +0000 (21:09 +0200)]
Beginnings of malloc support in pb_decode

10 years agoSetting version to 0.2.7-dev
Petteri Aimonen [Sat, 15 Feb 2014 15:15:54 +0000 (17:15 +0200)]
Setting version to 0.2.7-dev

10 years agoPublishing nanopb-0.2.6
Petteri Aimonen [Sat, 15 Feb 2014 14:40:38 +0000 (16:40 +0200)]
Publishing nanopb-0.2.6

10 years agoUpdate changelog
Petteri Aimonen [Wed, 12 Feb 2014 17:50:52 +0000 (19:50 +0200)]
Update changelog

10 years agoMove descriptor.proto to google/protobuf directory where it belongs.
Petteri Aimonen [Wed, 12 Feb 2014 17:43:04 +0000 (19:43 +0200)]
Move descriptor.proto to google/protobuf directory where it belongs.

This fixes some interoperability problems when trying to compile
nanopb.proto for e.g. the Google's C++ library.

Update issue 104
Status: FixedInGit

10 years agoAdd test case for package names defined in .proto file.
Petteri Aimonen [Wed, 12 Feb 2014 17:22:01 +0000 (19:22 +0200)]
Add test case for package names defined in .proto file.

10 years agoImprove status/error reporting in generator.
Petteri Aimonen [Wed, 12 Feb 2014 16:51:48 +0000 (18:51 +0200)]
Improve status/error reporting in generator.

Update issue 105
Status: FixedInGit

10 years agoAdd AllTypes decoding test with callbacks.
Petteri Aimonen [Mon, 10 Feb 2014 19:00:26 +0000 (21:00 +0200)]
Add AllTypes decoding test with callbacks.

Update issue 99
Status: FixedInGit

10 years agoAdd AllTypes encoding test for callbacks (issue #99)
Petteri Aimonen [Sun, 9 Feb 2014 17:28:50 +0000 (19:28 +0200)]
Add AllTypes encoding test for callbacks (issue #99)

Still need to do the decoding side.

10 years agoExtreme negative integer constants are a bit nasty to define in C, just avoid the...
Petteri Aimonen [Wed, 5 Feb 2014 15:56:37 +0000 (17:56 +0200)]
Extreme negative integer constants are a bit nasty to define in C, just avoid the trouble in tests for now.

10 years agoAdd coments to places where STATIC_ASSERT is used.
Petteri Aimonen [Tue, 4 Feb 2014 18:34:57 +0000 (20:34 +0200)]
Add coments to places where STATIC_ASSERT is used.

Update issue 96
Status: FixedInGit

10 years agoAdd proper suffixes for integer default values.
Petteri Aimonen [Tue, 4 Feb 2014 18:24:44 +0000 (20:24 +0200)]
Add proper suffixes for integer default values.

Update issue 102
Status: FixedInGit

10 years agoAdd strict-aliasing GCC warnings for core
Petteri Aimonen [Tue, 4 Feb 2014 18:11:52 +0000 (20:11 +0200)]
Add strict-aliasing GCC warnings for core

10 years agoFix problem with callback-type fields (issue #99).
Petteri Aimonen [Fri, 3 Jan 2014 09:17:39 +0000 (11:17 +0200)]
Fix problem with callback-type fields (issue #99).

10 years agoSetting version to 0.2.6-dev
Petteri Aimonen [Wed, 1 Jan 2014 09:44:47 +0000 (11:44 +0200)]
Setting version to 0.2.6-dev

10 years agoPublishing nanopb-0.2.5
Petteri Aimonen [Wed, 1 Jan 2014 09:11:19 +0000 (11:11 +0200)]
Publishing nanopb-0.2.5

10 years agoFix Makefiles for the examples
Petteri Aimonen [Wed, 1 Jan 2014 09:20:07 +0000 (11:20 +0200)]
Fix Makefiles for the examples

The default rules for make were being selected before our own rules
and the .pb.c was not being built.

10 years agoFix bundled protoc detection in scons script
Petteri Aimonen [Sun, 29 Dec 2013 20:08:13 +0000 (22:08 +0200)]
Fix bundled protoc detection in scons script

10 years agoAnd same fixes on Mac also..
Petteri Aimonen [Sun, 29 Dec 2013 19:47:38 +0000 (21:47 +0200)]
And same fixes on Mac also..

10 years agoMake the Mac OS X package a .zip instead
Petteri Aimonen [Sun, 29 Dec 2013 19:43:22 +0000 (21:43 +0200)]
Make the Mac OS X package a .zip instead

10 years agoFix spaces in paths on Windows also
Petteri Aimonen [Sun, 29 Dec 2013 19:36:06 +0000 (21:36 +0200)]
Fix spaces in paths on Windows also

10 years agoFix handling spaces in directory name
Petteri Aimonen [Sun, 29 Dec 2013 19:11:57 +0000 (21:11 +0200)]
Fix handling spaces in directory name

10 years agoFix build on Windows
Petteri Aimonen [Sun, 29 Dec 2013 18:53:39 +0000 (20:53 +0200)]
Fix build on Windows

10 years agoFix protoc-gen-nanopb when the path contains spaces
Petteri Aimonen [Sun, 29 Dec 2013 18:48:30 +0000 (20:48 +0200)]
Fix protoc-gen-nanopb when the path contains spaces

10 years agoFix path change: compat/ -> extra/
Petteri Aimonen [Sun, 29 Dec 2013 18:41:36 +0000 (20:41 +0200)]
Fix path change: compat/ -> extra/

10 years agoREADME updates
Petteri Aimonen [Sun, 29 Dec 2013 18:31:02 +0000 (20:31 +0200)]
README updates

10 years agoInclude platform name in also the directory name in binary pkgs
Petteri Aimonen [Sun, 29 Dec 2013 18:25:36 +0000 (20:25 +0200)]
Include platform name in also the directory name in binary pkgs

10 years agoAdd packaging script for Mac, add platform name to packages.
Petteri Aimonen [Tue, 3 Dec 2013 18:35:29 +0000 (20:35 +0200)]
Add packaging script for Mac, add platform name to packages.

10 years agoFixes for pyinstaller
Petteri Aimonen [Tue, 3 Dec 2013 18:10:48 +0000 (20:10 +0200)]
Fixes for pyinstaller

10 years agoSmall fix for previous
Petteri Aimonen [Tue, 3 Dec 2013 17:30:39 +0000 (19:30 +0200)]
Small fix for previous

10 years agoCheck for supported GCC CCFLAGS when building tests.
Petteri Aimonen [Tue, 3 Dec 2013 17:27:08 +0000 (19:27 +0200)]
Check for supported GCC CCFLAGS when building tests.

10 years agoMake generator print errors to stderr.
Petteri Aimonen [Tue, 3 Dec 2013 16:44:25 +0000 (18:44 +0200)]
Make generator print errors to stderr.

Otherwise they won't be visible when run as a protoc plugin.

10 years agoAdd a SCons tool for nanopb protos.
Petteri Aimonen [Sat, 23 Nov 2013 09:04:12 +0000 (11:04 +0200)]
Add a SCons tool for nanopb protos.

This tool script is useful both for building the tests and also for use in other applications.

10 years agoFix protoc-gen-nanopb in linux package
Petteri Aimonen [Sun, 17 Nov 2013 20:37:48 +0000 (22:37 +0200)]
Fix protoc-gen-nanopb in linux package

10 years agoInclude libprotoc
Petteri Aimonen [Sun, 17 Nov 2013 20:33:26 +0000 (22:33 +0200)]
Include libprotoc

10 years agoLinux archive
Petteri Aimonen [Sun, 17 Nov 2013 20:25:52 +0000 (22:25 +0200)]
Linux archive

10 years agoAlso include the manifest for MSVCR90.DLL
Petteri Aimonen [Sun, 17 Nov 2013 20:19:54 +0000 (22:19 +0200)]
Also include the manifest for MSVCR90.DLL

10 years agoInclude MSVCR90.DLL also.
Petteri Aimonen [Sun, 17 Nov 2013 19:43:50 +0000 (21:43 +0200)]
Include MSVCR90.DLL also.

10 years agoInclude Visual C++ runtime in the Windows package.
Petteri Aimonen [Sun, 17 Nov 2013 19:20:12 +0000 (21:20 +0200)]
Include Visual C++ runtime in the Windows package.

10 years agoREADME updates
Petteri Aimonen [Sun, 17 Nov 2013 18:57:50 +0000 (20:57 +0200)]
README updates

10 years agoWindows build fixes
Petteri Aimonen [Sun, 17 Nov 2013 18:37:18 +0000 (20:37 +0200)]
Windows build fixes

10 years agoFix protoc plugin path
Petteri Aimonen [Sun, 17 Nov 2013 18:25:18 +0000 (20:25 +0200)]
Fix protoc plugin path

10 years agoActually no, it was a portability hassle
Petteri Aimonen [Sun, 17 Nov 2013 18:24:32 +0000 (20:24 +0200)]
Actually no, it was a portability hassle

10 years agoMakefile tuning
Petteri Aimonen [Sun, 17 Nov 2013 18:09:30 +0000 (20:09 +0200)]
Makefile tuning

10 years agoRework the Makefiles to be compatible with binary packages.
Petteri Aimonen [Sun, 17 Nov 2013 18:04:29 +0000 (20:04 +0200)]
Rework the Makefiles to be compatible with binary packages.

10 years agoMoving files around
Petteri Aimonen [Sun, 17 Nov 2013 17:20:04 +0000 (19:20 +0200)]
Moving files around

Renamed READMEs to README.txt to be more friendly for Windows users.

10 years agoPackage as .zip, convert linebreaks
Petteri Aimonen [Sun, 17 Nov 2013 17:09:13 +0000 (19:09 +0200)]
Package as .zip, convert linebreaks

10 years agoAdd build script for windows package
Petteri Aimonen [Sun, 17 Nov 2013 15:37:29 +0000 (17:37 +0200)]
Add build script for windows package