Inquiry about conflict issue between security program and Polyspace

조회 수: 2 (최근 30일)
Wonhee Choi
Wonhee Choi 2023년 4월 4일
편집: Anirban 2023년 4월 11일
I am a developer who is developing a security program, and I am inquiring about a possible conflict between the security program and Polyspace. During building in Polyspace, the following message appears:
polyspace-configure: 2s: ERROR: Error durigin inject order 10212.9496:
polyspace-configure: 2s: ERROR: Failed to wait 10212 for event with code 258
The security program is performing DLL injection into the processes. Errors occur even when the DLL is only injected and not activated.
I am wondering if it is possible to exclude the file path of the security program from the error, and if there is a way to avoid the error altogether. The security program needs to inject WinAPI.
I have one more question. After the build is complete, the following message appears.
polyspace-configure:0s:DEBUG [from sniffer(78163848)] INJECT_PROCESS problem during the injection for 2160.16900 but injection succeeded
polyspace-configure: 0s:ERROR: [from sniffer(78163858)] Failed to wait 2160 for event with code 258
Is there a way to prevent this message from appearing or is it okay to ignore it?
Thank you for your assistance.

답변 (1개)

Anirban
Anirban 2023년 4월 7일
편집: Anirban 2023년 4월 7일
Those messages come from polyspace-configure, the tool used to configure Polyspace projects based on the user's build system. To trace the user's build, this tool performs DLL injection into the compilation processes. The DLL injection allows polyspace-configure to hook into system calls such as CreateFile, CreateProcess, etc. The hooks allow polyspace-configure to understand what is going on during the compilation.
So, if another security program is injecting DLL-s, there could be conflicts happening, indeed. In principle, polyspace-configure should be able to work alongside other DLL injecting tools, but it really depends on the tool behavior.
Regarding the error messages, they simply refer to a synchronization mechanism reaching a timeout, but it seems that the injection took place anyway. It is possible there are no conflicts with the DLL injection but only with the synchronization. For the record, the synchronization mechanism is based on Windows Event system: https://learn.microsoft.com/en-us/windows/win32/sync/using-event-objects.
Regarding your second question, the message can be ignored since the injection took place.
  댓글 수: 2
Wonhee Choi
Wonhee Choi 2023년 4월 10일
Thank you for taking the time to answer my question.
It seems that these messages are still appearing even when I immediately uninject the dll after injection to prevent them from showing up.
I'am wondering if there are any measures I can take to avoid these messages from appearing.
Anirban
Anirban 2023년 4월 11일
편집: Anirban 2023년 4월 11일
There are no documented ways to modify the dll injection mechanism in polyspace-configure. You can contact MathWorks Technical Support to see if there are workarounds.
polyspace-configure supports another way to configure a project from a build, that does not involve tracing the build commands (and avoids the dll injection issue). If the build system can generate a JSON compilation database file, one can use polyspace-configure -compilation-database with this JSON file. For more details, see polyspace-configure.

댓글을 달려면 로그인하십시오.

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by