File tree 2 files changed +17
-1
lines changed
Microsoft.FileFormats/ELF
Microsoft.SymbolStore/KeyGenerators
2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -109,6 +109,21 @@ public ELFSection FindSectionByName(string name)
109
109
return null ;
110
110
}
111
111
112
+ public ELFProgramSegment FindProgramSegment ( ELFProgramHeaderType type )
113
+ {
114
+ if ( Header . ProgramHeaderOffset > 0 && Header . ProgramHeaderEntrySize > 0 && Header . ProgramHeaderCount > 0 )
115
+ {
116
+ foreach ( ELFProgramSegment segment in Segments )
117
+ {
118
+ if ( segment . Header . Type == type )
119
+ {
120
+ return segment ;
121
+ }
122
+ }
123
+ }
124
+ return null ;
125
+ }
126
+
112
127
private IEnumerable < ELFProgramSegment > ReadSegments ( )
113
128
{
114
129
Header . IsProgramHeaderCountReasonable . CheckThrowing ( ) ;
Original file line number Diff line number Diff line change @@ -67,7 +67,8 @@ public override IEnumerable<SymbolStoreKey> GetKeys(KeyTypeFlags flags)
67
67
}
68
68
if ( ( flags & KeyTypeFlags . HostKeys ) != 0 )
69
69
{
70
- if ( _elfFile . Header . Type == ELFHeaderType . Executable )
70
+ if ( _elfFile . Header . Type == ELFHeaderType . Executable ||
71
+ _elfFile . FindProgramSegment ( ELFProgramHeaderType . Interp ) != null )
71
72
{
72
73
// The host program as itself (usually dotnet)
73
74
yield return BuildKey ( _path , IdentityPrefix , buildId ) ;
You can’t perform that action at this time.
0 commit comments