Skip to content

Release 2.3.0 - #32

Closed
bunnam988 wants to merge 6 commits into
mainfrom
release/2.3.0
Closed

Release 2.3.0#32
bunnam988 wants to merge 6 commits into
mainfrom
release/2.3.0

Conversation

@bunnam988

Copy link
Copy Markdown
Contributor

Release 2.3.0

bunnam988 and others added 6 commits June 15, 2026 06:31
Release 2.2.0 2.2.0
…arsing (#26)

Guard against null pointers in log_syntax_error.
Avoid reading/writing at end by using bounded line scanning.
Replace temporary in-place buffer mutation with length-limited logging
(%.*s).
Prevent potential SIGSEGV/SIGABRT when malformed include syntax reaches
EOF.
…y multipart bodies (#27)

- In process_multipart_form_data, replace post_data = content_data with
post_data = strdup(content_data) when there are no non-file fields.
- content_data is freed by caller (ccsp_post_module_open), so aliasing
caused double-free/heap corruption.
- Prevents crash pattern seen as SIGSEGV/SIGABRT in core dumps.

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
## Summary
Adds a caller workflow that runs the shared PR format check from
`rdkcentral/build_tools_workflows`.

## What it does
Automatically checks every new/edited PR (including fork PRs) for:
- Title format: `TICKET-123 : description` (multiple tickets supported)
- Required description fields: Reason for change, Test Procedure, Risks,
Priority

Fails the check and posts a reminder comment if format is incorrect.
Deletes the comment automatically when fixed.

## Files changed
- `.github/workflows/pr-lint.yml` (9 lines — caller only, no logic)
Copilot AI review requested due to automatic review settings July 22, 2026 09:28
@bunnam988
bunnam988 requested a review from a team as a code owner July 22, 2026 09:28
@bunnam988 bunnam988 closed this Jul 22, 2026
@bunnam988
bunnam988 deleted the release/2.3.0 branch July 22, 2026 09:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release 2.3.0 updates core parsing/session/post handling and adds regression coverage plus a PR-format lint workflow.

Changes:

  • Fix multipart parsing behavior so file-only multipart requests don’t populate _POST (and avoid dangling post_data).
  • Harden log_syntax_error() to avoid out-of-bounds access for malformed includes.
  • Improve session creation cleanup/leak handling and add new regression tests; update test build to include session/post sources; add PR lint workflow and changelog entry.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
tests/parser_test.cpp Adds regression tests for session lifecycle and multipart file-only behavior; introduces small RAII guards for env/stdin.
tests/CMakeLists.txt Links jst_post.c and jst_session.c into the test binary to support new tests.
source/jst_session.c Adds allocation failure handling and frees/cleans up previous session identifier on repeated create() calls.
source/jst_post.c Keeps post_data unset for file-only multipart bodies (prevents returning raw multipart payload / dangling pointer).
source/jst_parser.c Reworks log_syntax_error() to be safe when pointers are malformed and to avoid in-place buffer mutation/OOB access.
CHANGELOG.md Adds the 2.3.0 release section.
.github/workflows/pr-lint.yml Adds reusable-workflow-based PR format check.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread source/jst_session.c
Comment on lines +186 to +193
if(session_identifier)
{
char filename[SESSION_FILE_MAX_PATH];
snprintf(filename, SESSION_FILE_MAX_PATH, "%s/%s", SESSION_TMP_DIR, session_identifier);
unlink(filename);
free(session_identifier);
session_identifier = NULL;
}
Comment thread CHANGELOG.md
Comment on lines +7 to +11
#### [2.3.0](https://github.com/rdkcentral/javascript-templates/compare/2.2.0...2.3.0)

- RDKB-66032 : Add PR Format Check workflow [`#29`](https://github.com/rdkcentral/javascript-templates/pull/29)
- RDKB-64641 sets post_data = NULL to keep getPost() unset for file-only multipart bodies [`#27`](https://github.com/rdkcentral/javascript-templates/pull/27)
- RDKB-64256 fix OOB access in log_syntax_error for malformed include parsing [`#26`](https://github.com/rdkcentral/javascript-templates/pull/26)
Comment on lines +16 to +18
jobs:
lint:
uses: rdkcentral/build_tools_workflows/.github/workflows/pr-lint.yml@develop
@github-actions

Copy link
Copy Markdown

📋 PR Format Reminder

  • Title: Release 2.3.0 — expected TICKET-123 : description
    (Multiple tickets OK: RDKCOM-5492 RDKBDEV-3336 : ... | Include US ticket + subtask for user-stories)
  • Description missing:
    • Reason for change
    • Test Procedure
    • Risks (Low / Medium / High)
    • Priority (P0 / P1 / P2)

Expected:

TICKET-123 : brief description

Reason for change: why
Test Procedure: how to verify
Risks: Low / Medium / High
Priority: P0 / P1 / P2

@github-actions github-actions Bot locked and limited conversation to collaborators Jul 22, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants