History log of /openbmc/libbej/test/ (Results 1 – 24 of 24)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
8c4332a515-Jul-2025 Kasun Athukorala <kasunath@google.com>

Verify dictionary property name length

This change verifies the dictionary property name length.

Tested:
Unit tested

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I65f19d5bb1b8c

Verify dictionary property name length

This change verifies the dictionary property name length.

Tested:
Unit tested

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I65f19d5bb1b8c9f838e427fd6d8ba17e2886bf9a

show more ...

7c1be8dd15-Jul-2025 Kasun Athukorala <kasunath@google.com>

Check dictionary sizes to avoid any heap overflows

Tested:
Unit tested

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I34972b7f4daf0e818461ef2a4842966a247fc20e

6fd03fbf15-Jul-2025 Kasun Athukorala <kasunath@google.com>

Check SFLV tuple is within stream before decoding

If the SFLV tuple being decoded goes out of the stream length
it could lead to a heap overflow. This patch adds a check to
prevent it.

Tested:
Unit

Check SFLV tuple is within stream before decoding

If the SFLV tuple being decoded goes out of the stream length
it could lead to a heap overflow. This patch adds a check to
prevent it.

Tested:
Unit tested

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: Ie018d4f3614603efc6ed8b93fa0077c612d9b481

show more ...

485044b114-Jul-2025 Kasun Athukorala <kasunath@google.com>

bej_decoder: Check decoded string length

We need to check the bejString value lengths to prevent heap
buffer overflow

Tested:
Unit tested

Change-Id: Ie6a014fbffeb31f111bfbae331db197b3fb2f2ca
Signe

bej_decoder: Check decoded string length

We need to check the bejString value lengths to prevent heap
buffer overflow

Tested:
Unit tested

Change-Id: Ie6a014fbffeb31f111bfbae331db197b3fb2f2ca
Signed-off-by: Kasun Athukorala <kasunath@google.com>

show more ...

9eb0117f23-Jun-2025 Brandon Kim <brandonkim@google.com>

bej_decoder_json: Add a limit on # of 0s in "real"

We have count the number of 0s in real numbers to add to the output
string. To prevent OOM from many 0s, add a limit.

Tested: Add unit test

Chang

bej_decoder_json: Add a limit on # of 0s in "real"

We have count the number of 0s in real numbers to add to the output
string. To prevent OOM from many 0s, add a limit.

Tested: Add unit test

Change-Id: I5e298554cf9d93b3f7ab86cac5b0b0a6f443716b
Signed-off-by: Brandon Kim <brandonkim@google.com>

show more ...

ef01d4c523-Jun-2025 Brandon Kim <brandonkim@google.com>

bej: Fix typo for enum "bejErrorNotSuppoted"

The enum had a typo as "bejErrorNotSuppoted" with missing 'r'. Replace
with "bejErrorNotSupported"

Tested: N/A

Change-Id: Ieced19f88757caeb555dbdad817a

bej: Fix typo for enum "bejErrorNotSuppoted"

The enum had a typo as "bejErrorNotSuppoted" with missing 'r'. Replace
with "bejErrorNotSupported"

Tested: N/A

Change-Id: Ieced19f88757caeb555dbdad817ab2fbbbe8ce8d
Signed-off-by: Brandon Kim <brandonkim@google.com>

show more ...

07abbf8923-Jun-2025 Brandon Kim <brandonkim@google.com>

bej_decoder: Add a limit on number of operations

This is to prevent the decoder from taking on a huge number of
operations from a single input, that could cause the main while loop for
bejDecode to

bej_decoder: Add a limit on number of operations

This is to prevent the decoder from taking on a huge number of
operations from a single input, that could cause the main while loop for
bejDecode to run for a long time.

Tested: Unit test passes

Change-Id: Idb68b706d3634d1874d1814f17420076672d21ee
Signed-off-by: Brandon Kim <brandonkim@google.com>

show more ...

c3ab417101-Feb-2025 Patrick Williams <patrick@stwcx.xyz>

meson: reformat with meson formatter

Apply the `meson format` results.

Change-Id: I310cd74890fc18c36958a11fcb544413a809ed01
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

7753519219-Dec-2024 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy: Replace NULL with nullptr

Replaced all instances of NULL with nullptr to improve type safety
and clarity, as nullptr is the modern C++ standard for null pointers.

Tested: Build verified

clang-tidy: Replace NULL with nullptr

Replaced all instances of NULL with nullptr to improve type safety
and clarity, as nullptr is the modern C++ standard for null pointers.

Tested: Build verified

Change-Id: Ie9e20e9f97d9a2b974a4a8748a3daaf5d516adb8
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

a46f985027-Sep-2024 Brian Ma <chma0@nuvoton.com>

bej_tree: initialize node attribute format

While initializing the parent and child nodes, initialize the reserved
bit of the node attribute format to prevent unexpected reserved bit
setting.

And al

bej_tree: initialize node attribute format

While initializing the parent and child nodes, initialize the reserved
bit of the node attribute format to prevent unexpected reserved bit
setting.

And also override gtest's PrintTo function to avoid accessing
uninitialized areas due to structure alignment.

Tested:
Run test cases pass

Change-Id: I5b113f47c41ad15de578b80bf5e859f3b0c40503
Signed-off-by: Brian Ma <chma0@nuvoton.com>

show more ...

be27f2e916-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

Change-Id: I133f4f43d4955ba1b86b924fc741aa5a56f34239
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

2bc745a301-Apr-2024 Konstantin Aladyshev <aladyshev22@gmail.com>

meson: Provide wrap for nlohmann

Currently on the system without nlohmann installed local build fails
with error:
"""
../test/include/bej_common_test.hpp:5:10: fatal error:
nlohmann/json.hpp: No suc

meson: Provide wrap for nlohmann

Currently on the system without nlohmann installed local build fails
with error:
"""
../test/include/bej_common_test.hpp:5:10: fatal error:
nlohmann/json.hpp: No such file or directory
5 | #include "nlohmann/json.hpp"
"""
Provide wrap file for nlohmann and add the necessary dependency to fix
the issue.

Tested:
Local build via "meson setup build && cd build && meson compile" now
finishes without errors.

Change-Id: I8d63dac6f8963c7da2c5831a1fb1998663a12f6f
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>

show more ...

da6e557313-Mar-2023 Nikhil Namjoshi <nikhilnamjoshi@google.com>

Add libbej encoder wrapper for C++

Add unit tests and the test data files needed for unit tests.
Move APIs from bej_decoder_test.cpp to a common file, to share those
with bej_encoder_test.cpp

Teste

Add libbej encoder wrapper for C++

Add unit tests and the test data files needed for unit tests.
Move APIs from bej_decoder_test.cpp to a common file, to share those
with bej_encoder_test.cpp

Tested:
Verified that encoding using the wrapper works well at runtime.
Verified that the unit tests pass.

Change-Id: I61b7c17690eb7e7fefd1973a22d4316c6214267e
Signed-off-by: Nikhil Namjoshi <nikhilnamjoshi@google.com>

show more ...

6eb945fa29-Nov-2023 Patrick Williams <patrick@stwcx.xyz>

build: use allowed over enabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`) no longer retur

build: use allowed over enabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`) no longer return true for auto features. Instead, the
expectation is to use `allowed()` which is true for both enabled and auto.

Switch all uses of `enabled` to `allowed`.

Change-Id: I0c79d23d21956ffd007b1d1001bf6aaa0f72103b
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

6f3082ea20-Oct-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-17 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: If45530480fdd7acb46a6a1b116187bcfcd90ac83
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

dc3f214b31-Jan-2023 kasunath <kasunath@google.com>

Add more support to bej_tree API

This change adds bejString, bejReal and bejBoolean node types,
and also 2 new APIs, UpdateNodeFlags() and IsParentType().

Signed-off-by: Kasun Athukorala <kasunath@

Add more support to bej_tree API

This change adds bejString, bejReal and bejBoolean node types,
and also 2 new APIs, UpdateNodeFlags() and IsParentType().

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I94d36a63dd95893acd3517d30790c8fe71917989

show more ...

2ebe82f531-Jan-2023 kasunath <kasunath@google.com>

Add BEJ tree API.

This API allows us to represent a JSON object with a linked list
representation.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I7894e7c10e4db2ad02a79b01bb4d7a48

Add BEJ tree API.

This API allows us to represent a JSON object with a linked list
representation.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I7894e7c10e4db2ad02a79b01bb4d7a48d5a197cd

show more ...

435526a510-May-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

Change-Id: I1ae768f5bd68d4eec70acab9964c43370423bf5e
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...

42627cab31-Jan-2023 kasunath <kasunath@google.com>

Fix formating issues

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I9d3bc1564435adce8947101ad3863a00db7ba9ba

c14fab6e23-Nov-2022 kasunath <kasunath@google.com>

Fix missing comma for empty arrays/sets

When an array or a set is empty, and if it's not the last property
within an object, we need to add a comma after empty brackets/braces.

This change fix this

Fix missing comma for empty arrays/sets

When an array or a set is empty, and if it's not the last property
within an object, we need to add a comma after empty brackets/braces.

This change fix this issue. Also updated a test case to capture this.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: Ia087f341d052660191f2614add2060c81be67f61

show more ...

0aa36d8223-Nov-2022 kasunath <kasunath@google.com>

Rename rde_common to bej_common

bej_common.h is a more consistant name than rde_common.h.

Also this repo only contains code related to BEJ encoding and decoding.
Therefore this change removes the r

Rename rde_common to bej_common

bej_common.h is a more consistant name than rde_common.h.

Also this repo only contains code related to BEJ encoding and decoding.
Therefore this change removes the rde related structs defind in the
bej_common.h. Those structs should be defined somewhere else (libpldm).

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: Ic296ece11efc0967366e197a8609c3c88c325610

show more ...

e8946af623-May-2022 kasunath <kasunath@google.com>

Add tests for the JSON decoder.

These tests will test the bej_decoder_core.c as well.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: Ibf1c9a381a630beac09ed504dd57563160579fb0

d073aa1a12-May-2022 kasunath <kasunath@google.com>

Add helper functions for BEJ dictionaries

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: I50f2ccec155434639dfecd96193608cf6c5a1787

7ffd30aa10-May-2022 kasunath <kasunath@google.com>

Add common data structures

This adds some common data structures and functions needed for RDE BEJ.

The decoder core is written in C so that we can use this with some other
future platforms.
clang-t

Add common data structures

This adds some common data structures and functions needed for RDE BEJ.

The decoder core is written in C so that we can use this with some other
future platforms.
clang-tidy is complaining about C style header. I tried adding a
.clang-tidy-ignore file but it did not work. And since this is mainly a
C library, I deleted the .clang-tidy.

Signed-off-by: Kasun Athukorala <kasunath@google.com>
Change-Id: Ice07527b23cd00c65cd11ed114ea4faefcc085fb

show more ...