ReactOS 0.4.16-dev-737-g3368adc
corecrt_malloc.h File Reference
#include <corecrt.h>
Include dependency graph for corecrt_malloc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

_UCRT_DISABLE_CLANG_WARNINGS _CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _Post_writable_byte_size_ (_Count *_Size) _ACRTIMP _CRTALLOCATOR _CRTRESTRICT void *__cdecl _calloc_base(_In_ size_t _Count
 
_Check_return_ _ACRTIMP int __cdecl _callnewh (_In_ size_t _Size)
 
_Check_return_ _Ret_maybenull_ _Post_writable_byte_size_ (_Size) _ACRTIMP _CRTALLOCATOR _CRT_HYBRIDPATCHABLE void *__cdecl _expand(_Pre_notnull_ void *_Block
 
_ACRTIMP void __cdecl _free_base (_Pre_maybenull_ _Post_invalid_ void *_Block)
 
_ACRTIMP _CRT_HYBRIDPATCHABLE void __cdecl free (_Pre_maybenull_ _Post_invalid_ void *_Block)
 
_Check_return_ _ACRTIMP size_t __cdecl _msize_base (_Pre_notnull_ void *_Block) _CRT_NOEXCEPT
 
_Check_return_ _ACRTIMP _CRT_HYBRIDPATCHABLE size_t __cdecl _msize (_Pre_notnull_ void *_Block)
 
 _Success_ (return !=0) _Check_return_ _Ret_maybenull_ _Post_writable_byte_size_(_Size) _ACRTIMP _CRTALLOCATOR _CRTRESTRICT void *__cdecl _realloc_base(_Pre_maybenull_ _Post_invalid_ void *_Block
 
_ACRTIMP void __cdecl _aligned_free (_Pre_maybenull_ _Post_invalid_ void *_Block)
 
_Check_return_ _ACRTIMP size_t __cdecl _aligned_msize (_Pre_notnull_ void *_Block, _In_ size_t _Alignment, _In_ size_t _Offset)
 

Variables

_UCRT_DISABLE_CLANG_WARNINGS _CRT_BEGIN_C_HEADER _Check_return_ _Ret_maybenull_ _In_ size_t _Size
 
_In_ size_t _Count
 
_Check_return_ _Ret_maybenull_ _In_ size_t _Alignment
 
_Check_return_ _Ret_maybenull_ _In_ size_t _In_ size_t _Offset
 

Function Documentation

◆ _aligned_free()

_ACRTIMP void __cdecl _aligned_free ( _Pre_maybenull_ _Post_invalid_ void _Block)

◆ _aligned_msize()

_Check_return_ _ACRTIMP size_t __cdecl _aligned_msize ( _Pre_notnull_ void _Block,
_In_ size_t  _Alignment,
_In_ size_t  _Offset 
)

◆ _callnewh()

_Check_return_ _ACRTIMP int __cdecl _callnewh ( _In_ size_t  _Size)

Referenced by __declspec(), for(), and heap_alloc_dbg().

◆ _free_base()

◆ _msize()

◆ _msize_base()

◆ _Post_writable_byte_size_() [1/2]

◆ _Post_writable_byte_size_() [2/2]

_Check_return_ _Ret_maybenull_ _Post_writable_byte_size_ ( _Size  )

◆ _Success_()

_Success_ ( return = 0)

Definition at line 1028 of file fsctrl.c.

3189{
3191
3192 PVPB Vpb = Vcb->Vpb;
3193 PVPB OldVpb;
3194
3195 BOOLEAN Remount = FALSE;
3196
3197 PAGED_CODE();
3198
3199 UNREFERENCED_PARAMETER( IrpContext );
3200
3201 //
3202 // Check whether we are looking for a device only Mvcb.
3203 //
3204
3205 for (Link = CdData.VcbQueue.Flink;
3206 Link != &CdData.VcbQueue;
3207 Link = Link->Flink) {
3208
3209 *OldVcb = CONTAINING_RECORD( Link, VCB, VcbLinks );
3210
3211 //
3212 // Skip ourselves.
3213 //
3214
3215 if (Vcb == *OldVcb) { continue; }
3216
3217 //
3218 // Look at the Vpb and state of the previous Vcb.
3219 //
3220
3221 OldVpb = (*OldVcb)->Vpb;
3222
3223 if ((OldVpb != Vpb) &&
3224 (OldVpb->RealDevice == Vpb->RealDevice) &&
3225 ((*OldVcb)->VcbCondition == VcbNotMounted)) {
3226
3227 //
3228 // If the current disk is a raw disk then it can match a previous music or
3229 // raw disk.
3230 //
3231
3232 if (FlagOn( Vcb->VcbState, VCB_STATE_AUDIO_DISK)) {
3233
3234 if (FlagOn( (*OldVcb)->VcbState, VCB_STATE_AUDIO_DISK )) {
3235
3236 //
3237 // If we have both TOC then fail the remount if the lengths
3238 // are different or they don't match.
3239 //
3240
3241 if ((Vcb->TocLength != (*OldVcb)->TocLength) ||
3242 ((Vcb->TocLength != 0) &&
3243 !RtlEqualMemory( Vcb->CdromToc,
3244 (*OldVcb)->CdromToc,
3245 Vcb->TocLength ))) {
3246
3247 continue;
3248 }
3249
3250 Remount = TRUE;
3251 break;
3252 }
3253
3254 //
3255 // The current disk is not a raw disk. Go ahead and compare
3256 // serial numbers, volume label and TOC.
3257 //
3258
3259 }
3260 else if ((OldVpb->SerialNumber == Vpb->SerialNumber) &&
3261 (Vcb->TocLength == (*OldVcb)->TocLength) &&
3262 ((Vcb->TocLength == 0) || RtlEqualMemory( Vcb->CdromToc,
3263 (*OldVcb)->CdromToc,
3264 Vcb->TocLength )) &&
3265 (Vpb->VolumeLabelLength == OldVpb->VolumeLabelLength) &&
3266 (RtlEqualMemory( OldVpb->VolumeLabel,
3267 Vpb->VolumeLabel,
3268 Vpb->VolumeLabelLength ))) {
3269 //
3270 // Remember the old Vcb. Then set the return value to
3271 // TRUE and break.
3272 //
3273
3274 Remount = TRUE;
3275 break;
3276 }
3277 }
3278 }
3279
3280 return Remount;
3281}
#define PAGED_CODE()
unsigned char BOOLEAN
CD_DATA CdData
Definition: cddata.c:42
#define VCB_STATE_AUDIO_DISK
Definition: cdstruc.h:712
@ VcbNotMounted
Definition: cdstruc.h:490
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define FlagOn(_F, _SF)
Definition: ext2fs.h:179
IN OUT PVCB IN PDEVICE_OBJECT IN PVPB Vpb
Definition: fatprocs.h:1676
#define RtlEqualMemory(dst, src, len)
Definition: kdvm.h:18
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:325
#define Vcb
Definition: cdprocs.h:1415
LIST_ENTRY VcbQueue
Definition: cdstruc.h:334
Definition: typedefs.h:120
struct _LIST_ENTRY * Flink
Definition: typedefs.h:121
Definition: cdstruc.h:498
Definition: iotypes.h:189
WCHAR VolumeLabel[MAXIMUM_VOLUME_LABEL_LENGTH/sizeof(WCHAR)]
Definition: iotypes.h:198
USHORT VolumeLabelLength
Definition: iotypes.h:193
ULONG SerialNumber
Definition: iotypes.h:196
struct _DEVICE_OBJECT * RealDevice
Definition: iotypes.h:195
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260
static int Link(const char **args)
Definition: vfdcmd.c:2414

◆ free()

Variable Documentation

◆ _Alignment

◆ _Count

Definition at line 135 of file corecrt_malloc.h.

◆ _Offset

◆ _Size