@@ -389,6 +389,17 @@ VOID PhpUpdateHandleGeneralListViewGroups(
389
389
L"Port Context" ,
390
390
NULL
391
391
);
392
+
393
+ if (WindowsVersion >= WINDOWS_10_19H2 )
394
+ {
395
+ Context -> ListViewRowCache [PH_HANDLE_GENERAL_INDEX_MUTANTOWNER ] = PhAddListViewGroupItem (
396
+ Context -> ListViewHandle ,
397
+ PH_HANDLE_GENERAL_CATEGORY_ALPC ,
398
+ PH_HANDLE_GENERAL_INDEX_MUTANTOWNER ,
399
+ L"Owner" ,
400
+ NULL
401
+ );
402
+ }
392
403
}
393
404
else if (PhEqualString2 (Context -> HandleItem -> TypeName , L"EtwRegistration" , TRUE))
394
405
{
@@ -699,6 +710,30 @@ VOID PhpUpdateHandleGeneral(
699
710
PhSetListViewSubItem (Context -> ListViewHandle , Context -> ListViewRowCache [PH_HANDLE_GENERAL_INDEX_PORTCONTEXT ], 1 , string );
700
711
}
701
712
713
+ if (WindowsVersion >= WINDOWS_10_19H2 )
714
+ {
715
+ ALPC_SERVER_SESSION_INFORMATION serverInfo ;
716
+
717
+ if (NT_SUCCESS (NtAlpcQueryInformation (
718
+ alpcPortHandle ,
719
+ AlpcServerSessionInformation ,
720
+ & serverInfo ,
721
+ sizeof (ALPC_SERVER_SESSION_INFORMATION ),
722
+ NULL
723
+ )))
724
+ {
725
+ CLIENT_ID clientId ;
726
+ PPH_STRING name ;
727
+
728
+ clientId .UniqueProcess = UlongToHandle (serverInfo .ProcessId );
729
+ clientId .UniqueThread = 0 ;
730
+
731
+ name = PhStdGetClientIdName (& clientId );
732
+ PhSetListViewSubItem (Context -> ListViewHandle , Context -> ListViewRowCache [PH_HANDLE_GENERAL_INDEX_MUTANTOWNER ], 1 , name -> Buffer );
733
+ PhDereferenceObject (name );
734
+ }
735
+ }
736
+
702
737
NtClose (alpcPortHandle );
703
738
}
704
739
#endif
0 commit comments