@@ -32,33 +32,56 @@ kern_return_t getTopologyInfo(io_connect_t connect, topologyEntry* data, size_t*
32
32
33
33
kern_return_t getNumClients (io_connect_t connect , uint32_t * num_insts )
34
34
{
35
- kern_return_t kernResult ;
36
- size_t num_outputs = 1 ;
35
+ kern_return_t kernResult ;
36
+ uint32_t output_count = 1 ;
37
37
uint64_t knum_insts ;
38
38
39
- kernResult = IOConnectCallStructMethod (connect , kGetNumInstances , NULL , 0 , & knum_insts , & num_outputs );
40
- * num_insts = (uint32_t )knum_insts ;
39
+ kernResult = IOConnectCallScalarMethod (connect ,
40
+ kGetNumInstances ,
41
+ NULL , 0 ,
42
+ & knum_insts , & output_count );
43
+
44
+ if (kernResult == kIOReturnSuccess )
45
+ {
46
+ * num_insts = (uint32_t ) knum_insts ;
47
+ }
48
+
41
49
return kernResult ;
42
50
}
43
51
44
52
kern_return_t incrementNumClients (io_connect_t connect , uint32_t * num_insts )
45
53
{
46
- kern_return_t kernResult ;
47
- size_t num_outputs = 1 ;
54
+ kern_return_t kernResult ;
55
+ uint32_t output_count = 1 ;
48
56
uint64_t knum_insts ;
49
57
50
- kernResult = IOConnectCallStructMethod (connect , kIncrementNumInstances , NULL , 0 , & knum_insts , & num_outputs );
51
- * num_insts = (uint32_t )knum_insts ;
58
+ kernResult = IOConnectCallScalarMethod (connect ,
59
+ kIncrementNumInstances ,
60
+ NULL , 0 ,
61
+ & knum_insts , & output_count );
62
+
63
+ if (kernResult == kIOReturnSuccess )
64
+ {
65
+ * num_insts = (uint32_t ) knum_insts ;
66
+ }
67
+
52
68
return kernResult ;
53
69
}
54
70
55
71
kern_return_t decrementNumClients (io_connect_t connect , uint32_t * num_insts )
56
72
{
57
- kern_return_t kernResult ;
58
- size_t num_outputs = 1 ;
73
+ kern_return_t kernResult ;
74
+ uint32_t output_count = 1 ;
59
75
uint64_t knum_insts ;
60
76
61
- kernResult = IOConnectCallStructMethod (connect , kDecrementNumInstances , NULL , 0 , & knum_insts , & num_outputs );
62
- * num_insts = (uint32_t )knum_insts ;
77
+ kernResult = IOConnectCallScalarMethod (connect , kDecrementNumInstances ,
78
+ NULL , 0 ,
79
+ & knum_insts , & output_count );
80
+
81
+ if (kernResult == kIOReturnSuccess )
82
+ {
83
+ * num_insts = (uint32_t ) knum_insts ;
84
+ }
85
+
63
86
return kernResult ;
64
87
}
0 commit comments