| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537 |
- //
- // Copyright (c) Microsoft. All rights reserved.
- // Licensed under the MIT license. See LICENSE file in the project root for full license information.
- //
-
- /***
- * no_sal2.h - renders the SAL annotations for documenting APIs harmless.
- *
- *
- *Purpose:
- * sal.h provides a set of SAL2 annotations to describe how a function uses its
- * parameters - the assumptions it makes about them, and the guarantees it makes
- * upon finishing. This file redefines all those annotation macros to be harmless.
- * It is designed for use in down-level build environments where the tooling may
- * be unhappy with the standard SAL2 macro definitions.
- *
- * [Public]
- *
- *
- ****/
- #ifndef _NO_SAL_2_H_
- #define _NO_SAL_2_H_
- #undef __notnull
- #define __notnull
- #undef _When_
- #define _When_(c,a)
- #undef _At_
- #define _At_(t,a)
- #undef _At_buffer_
- #define _At_buffer_(t,i,c,a)
- #undef _Group_
- #define _Group_(a)
- #undef _Pre_
- #define _Pre_
- #undef _Post_
- #define _Post_
- #undef _Deref_
- #define _Deref_
- #undef _Null_
- #define _Null_
- #undef _Notnull_
- #define _Notnull_
- #undef _Maybenull_
- #define _Maybenull_
- #undef _Const_
- #define _Const_
- #undef _Check_return_
- #define _Check_return_
- #undef _Must_inspect_result_
- #define _Must_inspect_result_
- #undef _Pre_satisfies_
- #define _Pre_satisfies_(e)
- #undef _Post_satisfies_
- #define _Post_satisfies_(e)
- #undef _Writable_elements_
- #define _Writable_elements_(s)
- #undef _Writable_bytes_
- #define _Writable_bytes_(s)
- #undef _Readable_elements_
- #define _Readable_elements_(s)
- #undef _Readable_bytes_
- #define _Readable_bytes_(s)
- #undef _Null_terminated_
- #define _Null_terminated_
- #undef _NullNull_terminated_
- #define _NullNull_terminated_
- #undef _Valid_
- #define _Valid_
- #undef _Notvalid_
- #define _Notvalid_
- #undef _Success_
- #define _Success_(c)
- #undef _Return_type_success_
- #define _Return_type_success_(c)
- #undef _On_failure_
- #define _On_failure_(a)
- #undef _Always_
- #define _Always_(a)
- #undef _Use_decl_annotations_
- #define _Use_decl_annotations_
- #undef _Pre_defensive_
- #define _Pre_defensive_
- #undef _Post_defensive_
- #define _Post_defensive_
- #undef _Pre_unknown_
- #define _Pre_unknown_
- #undef _Acquires_lock_
- #define _Acquires_lock_(e)
- #undef _Releases_lock_
- #define _Releases_lock_(e)
- #undef _Requires_lock_held_
- #define _Requires_lock_held_(e)
- #undef _Requires_lock_not_held_
- #define _Requires_lock_not_held_(e)
- #undef _Requires_no_locks_held_
- #define _Requires_no_locks_held_
- #undef _Guarded_by_
- #define _Guarded_by_(e)
- #undef _Write_guarded_by_
- #define _Write_guarded_by_(e)
- #undef _Interlocked_
- #define _Interlocked_
- #undef _Post_same_lock_
- #define _Post_same_lock_(e1,e2)
- #undef _Benign_race_begin_
- #define _Benign_race_begin_
- #undef _Benign_race_end_
- #define _Benign_race_end_
- #undef _No_competing_thread_
- #define _No_competing_thread_
- #undef _No_competing_thread_begin_
- #define _No_competing_thread_begin_
- #undef _No_competing_thread_end_
- #define _No_competing_thread_end_
- #undef _Acquires_shared_lock_
- #define _Acquires_shared_lock_(e)
- #undef _Releases_shared_lock_
- #define _Releases_shared_lock_(e)
- #undef _Requires_shared_lock_held_
- #define _Requires_shared_lock_held_(e)
- #undef _Acquires_exclusive_lock_
- #define _Acquires_exclusive_lock_(e)
- #undef _Releases_exclusive_lock_
- #define _Releases_exclusive_lock_(e)
- #undef _Requires_exclusive_lock_held_
- #define _Requires_exclusive_lock_held_(e)
- #undef _Has_lock_kind_
- #define _Has_lock_kind_(n)
- #undef _Create_lock_level_
- #define _Create_lock_level_(n)
- #undef _Has_lock_level_
- #define _Has_lock_level_(n)
- #undef _Lock_level_order_
- #define _Lock_level_order_(n1,n2)
- #undef _Analysis_assume_lock_acquired_
- #define _Analysis_assume_lock_acquired_(e)
- #undef _Analysis_assume_lock_released_
- #define _Analysis_assume_lock_released_(e)
- #undef _Analysis_assume_lock_held_
- #define _Analysis_assume_lock_held_(e)
- #undef _Analysis_assume_lock_not_held_
- #define _Analysis_assume_lock_not_held_(e)
- #undef _Analysis_assume_same_lock_
- #define _Analysis_assume_same_lock_(e)
- #undef _In_
- #define _In_
- #undef _Out_
- #define _Out_
- #undef _Inout_
- #define _Inout_
- #undef _In_z_
- #define _In_z_
- #undef _Inout_z_
- #define _Inout_z_
- #undef _In_reads_
- #define _In_reads_(s)
- #undef _In_reads_bytes_
- #define _In_reads_bytes_(s)
- #undef _In_reads_z_
- #define _In_reads_z_(s)
- #undef _In_reads_or_z_
- #define _In_reads_or_z_(s)
- #undef _Out_writes_
- #define _Out_writes_(s)
- #undef _Out_writes_bytes_
- #define _Out_writes_bytes_(s)
- #undef _Out_writes_z_
- #define _Out_writes_z_(s)
- #undef _Inout_updates_
- #define _Inout_updates_(s)
- #undef _Inout_updates_bytes_
- #define _Inout_updates_bytes_(s)
- #undef _Inout_updates_z_
- #define _Inout_updates_z_(s)
- #undef _Out_writes_to_
- #define _Out_writes_to_(s,c)
- #undef _Out_writes_bytes_to_
- #define _Out_writes_bytes_to_(s,c)
- #undef _Out_writes_all_
- #define _Out_writes_all_(s)
- #undef _Out_writes_bytes_all_
- #define _Out_writes_bytes_all_(s)
- #undef _Inout_updates_to_
- #define _Inout_updates_to_(s,c)
- #undef _Inout_updates_bytes_to_
- #define _Inout_updates_bytes_to_(s,c)
- #undef _Inout_updates_all_
- #define _Inout_updates_all_(s)
- #undef _Inout_updates_bytes_all_
- #define _Inout_updates_bytes_all_(s)
- #undef _In_reads_to_ptr_
- #define _In_reads_to_ptr_(p)
- #undef _In_reads_to_ptr_z_
- #define _In_reads_to_ptr_z_(p)
- #undef _Out_writes_to_ptr_
- #define _Out_writes_to_ptr_(p)
- #undef _Out_writes_to_ptr_z_
- #define _Out_writes_to_ptr_z_(p)
- #undef _In_opt_
- #define _In_opt_
- #undef _Out_opt_
- #define _Out_opt_
- #undef _Inout_opt_
- #define _Inout_opt_
- #undef _In_opt_z_
- #define _In_opt_z_
- #undef _Inout_opt_z_
- #define _Inout_opt_z_
- #undef _In_reads_opt_
- #define _In_reads_opt_(s)
- #undef _In_reads_bytes_opt_
- #define _In_reads_bytes_opt_(s)
- #undef _Out_writes_opt_
- #define _Out_writes_opt_(s)
- #undef _Out_writes_bytes_opt_
- #define _Out_writes_bytes_opt_(s)
- #undef _Out_writes_opt_z_
- #define _Out_writes_opt_z_(s)
- #undef _Inout_updates_opt_
- #define _Inout_updates_opt_(s)
- #undef _Inout_updates_bytes_opt_
- #define _Inout_updates_bytes_opt_(s)
- #undef _Inout_updates_opt_z_
- #define _Inout_updates_opt_z_(s)
- #undef _Out_writes_to_opt_
- #define _Out_writes_to_opt_(s,c)
- #undef _Out_writes_bytes_to_opt_
- #define _Out_writes_bytes_to_opt_(s,c)
- #undef _Out_writes_all_opt_
- #define _Out_writes_all_opt_(s)
- #undef _Out_writes_bytes_all_opt_
- #define _Out_writes_bytes_all_opt_(s)
- #undef _Inout_updates_to_opt_
- #define _Inout_updates_to_opt_(s,c)
- #undef _Inout_updates_bytes_to_opt_
- #define _Inout_updates_bytes_to_opt_(s,c)
- #undef _Inout_updates_all_opt_
- #define _Inout_updates_all_opt_(s)
- #undef _Inout_updates_bytes_all_opt_
- #define _Inout_updates_bytes_all_opt_(s)
- #undef _In_reads_to_ptr_opt_
- #define _In_reads_to_ptr_opt_(p)
- #undef _In_reads_to_ptr_opt_z_
- #define _In_reads_to_ptr_opt_z_(p)
- #undef _Out_writes_to_ptr_opt_
- #define _Out_writes_to_ptr_opt_(p)
- #undef _Out_writes_to_ptr_opt_z_
- #define _Out_writes_to_ptr_opt_z_(p)
- #undef _Outptr_
- #define _Outptr_
- #undef _Outptr_opt_
- #define _Outptr_opt_
- #undef _Outptr_result_maybenull_
- #define _Outptr_result_maybenull_
- #undef _Outptr_opt_result_maybenull_
- #define _Outptr_opt_result_maybenull_
- #undef _Outptr_z_
- #define _Outptr_z_
- #undef _Outptr_opt_z_
- #define _Outptr_opt_z_
- #undef _Outptr_result_maybenull_z_
- #define _Outptr_result_maybenull_z_
- #undef _Outptr_opt_result_maybenull_z_
- #define _Outptr_opt_result_maybenull_z_
- #undef _COM_Outptr_
- #define _COM_Outptr_
- #undef _COM_Outptr_opt_
- #define _COM_Outptr_opt_
- #undef _COM_Outptr_result_maybenull_
- #define _COM_Outptr_result_maybenull_
- #undef _COM_Outptr_opt_result_maybenull_
- #define _COM_Outptr_opt_result_maybenull_
- #undef _Outptr_result_buffer_
- #define _Outptr_result_buffer_(s)
- #undef _Outptr_result_bytebuffer_
- #define _Outptr_result_bytebuffer_(s)
- #undef _Outptr_opt_result_buffer_
- #define _Outptr_opt_result_buffer_(s)
- #undef _Outptr_opt_result_bytebuffer_
- #define _Outptr_opt_result_bytebuffer_(s)
- #undef _Outptr_result_buffer_to_
- #define _Outptr_result_buffer_to_(s,c)
- #undef _Outptr_result_bytebuffer_to_
- #define _Outptr_result_bytebuffer_to_(s,c)
- #undef _Outptr_opt_result_buffer_to_
- #define _Outptr_opt_result_buffer_to_(s,c)
- #undef _Outptr_opt_result_bytebuffer_to_
- #define _Outptr_opt_result_bytebuffer_to_(s,c)
- #undef _Ret_
- #define _Ret_
- #undef _Ret_valid_
- #define _Ret_valid_
- #undef _Ret_z_
- #define _Ret_z_
- #undef _Ret_writes_
- #define _Ret_writes_(s)
- #undef _Ret_writes_bytes_
- #define _Ret_writes_bytes_(s)
- #undef _Ret_writes_z_
- #define _Ret_writes_z_(s)
- #undef _Ret_writes_to_
- #define _Ret_writes_to_(s,c)
- #undef _Ret_writes_bytes_to_
- #define _Ret_writes_bytes_to_(s,c)
- #undef _Ret_writes_maybenull_
- #define _Ret_writes_maybenull_(s)
- #undef _Ret_writes_bytes_maybenull_
- #define _Ret_writes_bytes_maybenull_(s)
- #undef _Ret_writes_to_maybenull_
- #define _Ret_writes_to_maybenull_(s,c)
- #undef _Ret_writes_bytes_to_maybenull_
- #define _Ret_writes_bytes_to_maybenull_(s,c)
- #undef _Ret_writes_maybenull_z_
- #define _Ret_writes_maybenull_z_(s)
- #undef _Ret_maybenull_
- #define _Ret_maybenull_
- #undef _Ret_maybenull_z_
- #define _Ret_maybenull_z_
- #undef _Field_size_
- #define _Field_size_(s)
- #undef _Field_size_opt_
- #define _Field_size_opt_(s)
- #undef _Field_size_bytes_
- #define _Field_size_bytes_(s)
- #undef _Field_size_bytes_opt_
- #define _Field_size_bytes_opt_(s)
- #undef _Field_size_part_
- #define _Field_size_part_(s,c)
- #undef _Field_size_part_opt_
- #define _Field_size_part_opt_(s,c)
- #undef _Field_size_bytes_part_
- #define _Field_size_bytes_part_(s,c)
- #undef _Field_size_bytes_part_opt_
- #define _Field_size_bytes_part_opt_(s,c)
- #undef _Field_size_full_
- #define _Field_size_full_(s)
- #undef _Field_size_full_opt_
- #define _Field_size_full_opt_(s)
- #undef _Field_size_bytes_full_
- #define _Field_size_bytes_full_(s)
- #undef _Field_size_bytes_full_opt_
- #define _Field_size_bytes_full_opt_(s)
- #undef _Printf_format_string_
- #define _Printf_format_string_
- #undef _Scanf_format_string_
- #define _Scanf_format_string_
- #undef _Scanf_s_format_string_
- #define _Scanf_s_format_string_
- #undef _Printf_format_string_params_
- #define _Printf_format_string_params_(x)
- #undef _Scanf_format_string_params_
- #define _Scanf_format_string_params_(x)
- #undef _Scanf_s_format_string_params_
- #define _Scanf_s_format_string_params_(x)
- #undef _In_range_
- #define _In_range_(l,h)
- #undef _Out_range_
- #define _Out_range_(l,h)
- #undef _Ret_range_
- #define _Ret_range_(l,h)
- #undef _Deref_in_range_
- #define _Deref_in_range_(l,h)
- #undef _Deref_out_range_
- #define _Deref_out_range_(l,h)
- #undef _Deref_inout_range_
- #define _Deref_inout_range_(l,h)
- #undef _Field_range_
- #define _Field_range_(l,h)
- #undef _Pre_equal_to_
- #define _Pre_equal_to_(e)
- #undef _Post_equal_to_
- #define _Post_equal_to_(e)
- #undef _Struct_size_bytes_
- #define _Struct_size_bytes_(s)
- #undef _Analysis_assume_
- #define _Analysis_assume_
- #undef _Analysis_mode_
- #define _Analysis_mode_(m)
- #undef _Analysis_noreturn_
- #define _Analysis_noreturn_
- #undef _Raises_SEH_exception_
- #define _Raises_SEH_exception_
- #undef _Maybe_raises_SEH_exception_
- #define _Maybe_raises_SEH_exception_
- #undef _Function_class_
- #define _Function_class_(n)
- #undef _Literal_
- #define _Literal_
- #undef _Notliteral_
- #define _Notliteral_
- #undef _Enum_is_bitflag_
- #define _Enum_is_bitflag_
- #undef _Strict_type_match_
- #define _Strict_type_match_
- #undef _Points_to_data_
- #define _Points_to_data_
- #undef _Interlocked_operand_
- #define _Interlocked_operand_
- #undef _IRQL_raises_
- #define _IRQL_raises_(i)
- #undef _IRQL_requires_
- #define _IRQL_requires_(i)
- #undef _IRQL_requires_max_
- #define _IRQL_requires_max_(i)
- #undef _IRQL_requires_min_
- #define _IRQL_requires_min_(i)
- #undef _IRQL_saves_
- #define _IRQL_saves_
- #undef _IRQL_saves_global_
- #define _IRQL_saves_global_(k,s)
- #undef _IRQL_restores_
- #define _IRQL_restores_
- #undef _IRQL_restores_global_
- #define _IRQL_restores_global_(k,s)
- #undef _IRQL_always_function_min_
- #define _IRQL_always_function_min_(i)
- #undef _IRQL_always_function_max_
- #define _IRQL_always_function_max_(i)
- #undef _IRQL_requires_same_
- #define _IRQL_requires_same_
- #undef _IRQL_uses_cancel_
- #define _IRQL_uses_cancel_
- #undef _IRQL_is_cancel_
- #define _IRQL_is_cancel_
- #undef _Kernel_float_saved_
- #define _Kernel_float_saved_
- #undef _Kernel_float_restored_
- #define _Kernel_float_restored_
- #undef _Kernel_float_used_
- #define _Kernel_float_used_
- #undef _Kernel_acquires_resource_
- #define _Kernel_acquires_resource_(k)
- #undef _Kernel_releases_resource_
- #define _Kernel_releases_resource_(k)
- #undef _Kernel_requires_resource_held_
- #define _Kernel_requires_resource_held_(k)
- #undef _Kernel_requires_resource_not_held_
- #define _Kernel_requires_resource_not_held_(k)
- #undef _Kernel_clear_do_init_
- #define _Kernel_clear_do_init_(yn)
- #undef _Kernel_IoGetDmaAdapter_
- #define _Kernel_IoGetDmaAdapter_
- #undef _Outref_
- #define _Outref_
- #undef _Outref_result_maybenull_
- #define _Outref_result_maybenull_
- #undef _Outref_result_buffer_
- #define _Outref_result_buffer_(s)
- #undef _Outref_result_bytebuffer_
- #define _Outref_result_bytebuffer_(s)
- #undef _Outref_result_buffer_to_
- #define _Outref_result_buffer_to_(s,c)
- #undef _Outref_result_bytebuffer_to_
- #define _Outref_result_bytebuffer_to_(s,c)
- #undef _Outref_result_buffer_all_
- #define _Outref_result_buffer_all_(s)
- #undef _Outref_result_bytebuffer_all_
- #define _Outref_result_bytebuffer_all_(s)
- #undef _Outref_result_buffer_maybenull_
- #define _Outref_result_buffer_maybenull_(s)
- #undef _Outref_result_bytebuffer_maybenull_
- #define _Outref_result_bytebuffer_maybenull_(s)
- #undef _Outref_result_buffer_to_maybenull_
- #define _Outref_result_buffer_to_maybenull_(s,c)
- #undef _Outref_result_bytebuffer_to_maybenull_
- #define _Outref_result_bytebuffer_to_maybenull_(s,c)
- #undef _Outref_result_buffer_all_maybenull_
- #define _Outref_result_buffer_all_maybenull_(s)
- #undef _Outref_result_bytebuffer_all_maybenull_
- #define _Outref_result_bytebuffer_all_maybenull_(s)
- #undef _In_defensive_
- #define _In_defensive_(a)
- #undef _Out_defensive_
- #define _Out_defensive_(a)
- #undef _Inout_defensive_
- #define _Inout_defensive_(a)
- #undef _Outptr_result_nullonfailure_
- #define _Outptr_result_nullonfailure_
- #undef _Outptr_opt_result_nullonfailure_
- #define _Outptr_opt_result_nullonfailure_
- #undef _Outref_result_nullonfailure_
- #define _Outref_result_nullonfailure_
- #undef _Result_nullonfailure_
- #define _Result_nullonfailure_
- #undef _Result_zeroonfailure_
- #define _Result_zeroonfailure_
- #undef _Acquires_nonreentrant_lock_
- #define _Acquires_nonreentrant_lock_(e)
- #undef _Releases_nonreentrant_lock_
- #define _Releases_nonreentrant_lock_(e)
- #undef _Reserved_
- #define _Reserved_ _Pre_equal_to_(0) _Pre_ _Null_
- #undef _Pre_z_
- #define _Pre_z_ _Pre_ _Null_terminated_
- #undef _Post_z_
- #define _Post_z_ _Post_ _Null_terminated_
- #undef _Prepost_z_
- #define _Prepost_z_ _Pre_z_ _Post_z_
- #undef _Pre_null_
- #define _Pre_null_ _Pre_ _Null_
- #undef _Pre_maybenull_
- #define _Pre_maybenull_ _Pre_ _Maybenull_
- #undef _Pre_notnull_
- #define _Pre_notnull_ _Pre_ _Notnull_
- #undef _Pre_valid_
- #define _Pre_valid_ _Pre_notnull_ _Pre_ _Valid_
- #undef _Pre_opt_valid_
- #define _Pre_opt_valid_ _Pre_maybenull_ _Pre_ _Valid_
- #undef _Post_valid_
- #define _Post_valid_ _Post_ _Valid_
- #undef _Post_invalid_
- #define _Post_invalid_ _Post_ _Deref_ _Notvalid_
- #undef _Post_ptr_invalid_
- #define _Post_ptr_invalid_ _Post_ _Notvalid_
- #undef _Pre_readable_size_
- #define _Pre_readable_size_(s) _Pre_ _Readable_elements_(s) _Pre_ _Valid_
- #undef _Pre_writable_size_
- #define _Pre_writable_size_(s) _Pre_ _Writable_elements_(s)
- #undef _Pre_readable_byte_size_
- #define _Pre_readable_byte_size_(s) _Pre_ _Readable_bytes_(s) _Pre_ _Valid_
- #undef _Pre_writable_byte_size_
- #define _Pre_writable_byte_size_(s) _Pre_ _Writable_bytes_(s)
- #undef _Post_readable_size_
- #define _Post_readable_size_(s) _Post_ _Readable_elements_(s) _Post_ _Valid_
- #undef _Post_writable_size_
- #define _Post_writable_size_(s) _Post_ _Writable_elements_(s)
- #undef _Post_readable_byte_size_
- #define _Post_readable_byte_size_(s) _Post_ _Readable_bytes_(s) _Post_ _Valid_
- #undef _Post_writable_byte_size_
- #define _Post_writable_byte_size_(s) _Post_ _Writable_bytes_(s)
- #endif /* _NO_SAL_2_H_ */
|