EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Raising exceptions in filter callbacks

Also by EldoS: CallbackProcess
A component to control process creation and termination in Windows and .NET applications.
Posted: 09/15/2015 09:23:59
by Chris Spiteri (Standard support level)
Joined: 10/06/2014
Posts: 57


I'd like some guidelines on how to handle/raise non-filter exceptions within callbacks.

I see there is a section called 'Error reporting and handling' in the documentation, but i'd like some clarifications.

In cases where the exception is, for example, the callback performs string operations and an exception is raised from the .NET framework class operations, what happens if the exception is thrown? Will it 'bubble-up' or caught internally by the filter and reported in some way?

Posted: 09/15/2015 09:32:12
by Eugene Mayevski (EldoS Corp.)

All exceptions that happen in callbacks are caught to prevent crashes. If the exception is of CbFltError type, then the error code is taken from it and reported back to the driver (which converts it and passes to the OS).

For all other exceptions ERROR_INTERNAL_ERROR is returned.

You can see this yourself by looking for "catch" in Sources\CbFlt\dotNet\cbflt.cpp

Sincerely yours
Eugene Mayevski



Topic viewed 2251 times

Number of guests: 1, registered members: 0, in total hidden: 0


Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!