Petteri Aimonen
592d4213fd
Added mdpoole to LICENSE
2012-01-06 19:16:44 +02:00
Petteri Aimonen
9a0a930a18
Merge branch 'master' into dynamic_alloc_dev
2012-01-06 19:16:28 +02:00
Petteri Aimonen
b519edba9d
Linewrapping in license
nanopb-0.1.0
2012-01-06 19:04:49 +02:00
Petteri Aimonen
a2673f24fa
Merge branch 'master' into dynamic_alloc_dev
...
Conflicts:
tests/Makefile
tests/test_encode1.c
2012-01-05 22:10:29 +02:00
Michael Poole
accd93be8d
Add an encoder optimized for in-memory buffers.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1088 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:48 +02:00
Michael Poole
3979f9137f
Unify the non-MALLOC_HEADER tests for PB_POINTER fields.
...
Rather than testing PB_POINTER once for each field type,
test it just in decode_field().
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1084 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:45 +02:00
Michael Poole
ba93b65e9f
Set the defaults properly for newly allocated submessages.
...
Also, pb_dec_submessage() should have used calloc() instead of malloc()
in the first place.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1083 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:37 +02:00
Michael Poole
f7c8dd81d4
Make field decoders return false for unsupported pointer fields.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1082 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:33 +02:00
Michael Poole
c66c6b43c4
Support dynamic allocation for string, bytes and message fields.
...
This is turned on by passing -p to nanopb_generator.py or setting the
(nanopb).pointer option for a .proto field.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1081 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:30 +02:00
Michael Poole
8e5337e9ef
Merge the generated has_<name> fields into a single one.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1008 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:24 +02:00
Michael Poole
43b8e20744
Create a message descriptor type.
...
This replaces the sentinel at the end of the pb_field_t
array for each message type.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1007 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:17 +02:00
Michael Poole
dcf43a6416
Convert pb_type_t to uint8_t.
...
PB_HTYPE_x | PB_LTYPE_x becomes an int according to C, and
some compilers warn when assigning that to an enum value.
Also correct an associated term in reference.rst.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb-dev@1006 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 22:01:14 +02:00
Petteri Aimonen
28aa0ce096
Added logo for project :)
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1095 e3a754e5-d11d-0410-8d38-ebb782a927b9
2012-01-05 18:35:12 +00:00
Petteri Aimonen
b5fb97f6f5
Make the fuzztest runnable again
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1091 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 09:05:01 +00:00
Petteri Aimonen
a3f5e4d81f
Expanding the tests to better cover decoding from memory buffer.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1090 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 08:57:27 +00:00
Petteri Aimonen
1506450b11
Fixed a bug related to submessage encoding into memory buffer.
...
Stream state was not copied back from substream in pb_enc_submessage,
which caused garbage output if the stream callback modified the state.
Expanded tests to cover this problem.
Thanks to Paweł Pery for debugging and reporting this problem.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1089 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-12-30 08:43:50 +00:00
Petteri Aimonen
ad7a0e2111
Merged 0005-Handle-endianness-correctly.patch by Matt Kern.
...
On big endian machines, pb_dec_fixed32 and pb_dec_fixed64 were
incorrectly overwriting the result value even if reading failed.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1022 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 15:08:32 +00:00
Petteri Aimonen
2a80ff2bd5
Merged 0004-Added-missing-trailing-newlines.patch by Matt Kern.
...
Just adding newlines at the end of files to satisfy old GCC versions.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1021 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 15:03:23 +00:00
Petteri Aimonen
e66675a25d
Merged 0003-Fixed-format-specifiers.patch by Matt Kern.
...
Fixes cross-platform issues with the length modifier in printf specifiers,
most importantly %d -> %ld.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1020 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 15:01:59 +00:00
Petteri Aimonen
a77ab47c29
Added Makefile for generating nanopb_pb2.py.
...
I still left the precompiled version in place, as it "often works" :)
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1019 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-30 14:59:25 +00:00
Petteri Aimonen
13b6988b64
Fix some compiler warnings in strict C89 mode
...
Contributed by Michael Poole.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1004 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-10 16:19:55 +00:00
Petteri Aimonen
85e0afd894
Some additions to documentation
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@1003 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-11-04 07:22:05 +00:00
Petteri Aimonen
c7e2d6cc2f
Documentation outdated phrase
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@980 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-18 16:10:08 +00:00
Petteri Aimonen
d96e9575d4
Added comments to the simplest decode/encode examples.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@979 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-18 16:04:45 +00:00
Petteri Aimonen
b2a696795e
Added README
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@976 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-14 10:36:04 +00:00
Petteri Aimonen
fcfc99f766
Fixed a bunch of bugs related to callback fields.
...
Most importantly, callback fields in submessages were being overwritten with garbage, causing segfaults.
Additionally, converted PB_LTYPE_FIXED to PB_LTYPE_FIXED32 and PB_LTYPE_FIXED64. This makes the interface
a bit easier to use, and in addition runs faster.
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@975 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-13 16:14:08 +00:00
Petteri Aimonen
d4abb63c05
Tests for callback fields
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@974 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-12 18:53:33 +00:00
Petteri Aimonen
35814517ad
Python 2.6 compatibility for the generator
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@973 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-01 08:30:48 +00:00
Petteri Aimonen
1604000714
Cyclic messages not supported - thanks to Josh for pointing this out.
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@972 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 19:03:28 +00:00
Petteri Aimonen
fab52deda9
Make fuzz test runnable again :)
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@971 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 18:23:05 +00:00
Petteri Aimonen
9af96cd669
Generator bugfixes
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@970 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 13:52:08 +00:00
Petteri Aimonen
646e3c4944
documentation
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@969 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 12:57:16 +00:00
Petteri Aimonen
4c76c9c398
makefile fix
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@968 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 12:14:44 +00:00
Petteri Aimonen
9cb63dd266
wrong file name
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@967 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-24 12:13:24 +00:00
Petteri Aimonen
a353417021
More unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@966 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 18:50:09 +00:00
Petteri Aimonen
64ac18c884
Changed autogenerated file naming from foo.c to foo.pb.c
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@965 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 16:16:33 +00:00
Petteri Aimonen
9966a8c9b6
more unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@964 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 15:57:47 +00:00
Petteri Aimonen
7780da38e8
license
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@963 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 15:57:40 +00:00
Petteri Aimonen
5e27a83f9c
Allocated extension number
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@962 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 15:57:20 +00:00
Petteri Aimonen
8b635924ba
check return values
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@961 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 13:33:43 +00:00
Petteri Aimonen
5490163200
More unittests
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@960 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23 09:59:18 +00:00
Petteri Aimonen
5a9f85b876
unittests, change to PB_LTYPE_BYTES data size
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@959 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-22 18:57:23 +00:00
Petteri Aimonen
494fbd91e4
example client
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@958 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-22 15:22:41 +00:00
Petteri Aimonen
7f53c3f748
Example
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@957 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-17 19:03:06 +00:00
Petteri Aimonen
2cefaeaf61
Docs
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@956 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-16 17:28:59 +00:00
Petteri Aimonen
842d52633d
More documentation, small improvements
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@955 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-14 20:11:05 +00:00
Petteri Aimonen
6dfba365b0
Documenting and improving stream behaviour
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@954 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-11 19:22:36 +00:00
Petteri Aimonen
09f92bafa5
Started writing documentation
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@953 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-10 20:08:06 +00:00
Petteri Aimonen
0c5bc4caf9
Unittests for encode
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@952 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-10 17:54:15 +00:00
Petteri Aimonen
a8d0172507
Encoder
...
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@951 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-04 16:49:32 +00:00