Skip to content

Data Types Sync (Begin,IsCompleted,Set,Get) API Endpoints #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

brightprogrammer
Copy link
Contributor

Support for endpoints to parse and create JSON responses and requests to sync data types informations for each function in plugins or any other compatible user code using this library.

New API Functions

REAI_API bool BeginFunctionTypeGeneration (
    Connection* conn,
    AnalysisId  analysis_id,
    FunctionIds function_ids
);
REAI_API bool BeginFunctionTypeGenerationForAllFunctions (Connection* conn, AnalysisId analysis_id);
REAI_API bool IsFunctionTypeGenerationCompleted (
    Connection* conn,
    AnalysisId  analysis_id,
    FunctionId  function_id
);
REAI_API bool IsFunctionTypeGenerationCompletedForAllFunctions (Connection* conn, AnalysisId analysis_id);
REAI_API FunctionType GetFunctionType (Connection* conn, FunctionId function_id);
REAI_API bool SetFunctionType (
    Connection*  conn,
    AnalysisId   analysis_id,
    FunctionId   function_id,
    FunctionType function_type
);

Extras

  • Noticed memory leaks, where functions in Api.c where not destroying used objects after use in all control-flow-paths
  • Documentation standardization in Api.h
  • Removed old GetBasicFunctionInfoUsingBinaryId with GetFunctionList which uses v2 endpoint and analysis Id. This required adding a new debug field to FunctionInfo.
  • New macro StrOwnZstr to take ownership of an allocated const char* string.

@brightprogrammer brightprogrammer self-assigned this Jul 6, 2025
@brightprogrammer brightprogrammer added the enhancement New feature or request label Jul 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant