diff --git a/CHANGELOG.md b/CHANGELOG.md
index 060df54..0e304b4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -47,6 +47,11 @@
 
 [clang-rename]: https://clang.llvm.org/extra/clang-rename.html
 
+2. dsp: pdr: Rename pldm_pdr_add_check()
+
+   Users should switch to `pldm_pdr_add()`. Migration can be automated with
+   `evolutions/current/pldm_pdr_add_check.yaml`.
+
 ### Removed
 
 1. IBM OEM header compatibility symlinks.
diff --git a/abi/x86_64/gcc.dump b/abi/x86_64/gcc.dump
index b8d8026..5e34119 100644
--- a/abi/x86_64/gcc.dump
+++ b/abi/x86_64/gcc.dump
@@ -4351,7 +4351,7 @@
     },
     '76434' => {
       'Header' => 'pdr.h',
-      'Line' => '638',
+      'Line' => '641',
       'Param' => {
         '0' => {
           'name' => 'pdr',
@@ -4379,7 +4379,7 @@
     },
     '76762' => {
       'Header' => 'pdr.h',
-      'Line' => '626',
+      'Line' => '629',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4394,7 +4394,7 @@
     },
     '76816' => {
       'Header' => 'pdr.h',
-      'Line' => '616',
+      'Line' => '619',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4409,7 +4409,7 @@
     },
     '76879' => {
       'Header' => 'pdr.h',
-      'Line' => '606',
+      'Line' => '609',
       'Param' => {
         '0' => {
           'name' => 'org_tree',
@@ -4425,7 +4425,7 @@
     },
     '77263' => {
       'Header' => 'pdr.h',
-      'Line' => '580',
+      'Line' => '583',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4441,7 +4441,7 @@
     },
     '77543' => {
       'Header' => 'pdr.h',
-      'Line' => '594',
+      'Line' => '597',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4461,7 +4461,7 @@
     },
     '77925' => {
       'Header' => 'pdr.h',
-      'Line' => '213',
+      'Line' => '216',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4485,7 +4485,7 @@
     },
     '78052' => {
       'Header' => 'pdr.h',
-      'Line' => '178',
+      'Line' => '181',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4500,7 +4500,7 @@
     },
     '78300' => {
       'Header' => 'pdr.h',
-      'Line' => '187',
+      'Line' => '190',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4520,7 +4520,7 @@
     },
     '78568' => {
       'Header' => 'pdr.h',
-      'Line' => '541',
+      'Line' => '544',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4540,7 +4540,7 @@
     },
     '78855' => {
       'Header' => 'pdr.h',
-      'Line' => '530',
+      'Line' => '533',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4585,7 +4585,7 @@
     },
     '79088' => {
       'Header' => 'pdr.h',
-      'Line' => '513',
+      'Line' => '516',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4617,7 +4617,7 @@
     },
     '79306' => {
       'Header' => 'pdr.h',
-      'Line' => '464',
+      'Line' => '467',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4641,7 +4641,7 @@
     },
     '80829' => {
       'Header' => 'pdr.h',
-      'Line' => '567',
+      'Line' => '570',
       'Param' => {
         '0' => {
           'name' => 'parent',
@@ -4661,7 +4661,7 @@
     },
     '80918' => {
       'Header' => 'pdr.h',
-      'Line' => '553',
+      'Line' => '556',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4681,7 +4681,7 @@
     },
     '81133' => {
       'Header' => 'pdr.h',
-      'Line' => '435',
+      'Line' => '438',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4696,7 +4696,7 @@
     },
     '81288' => {
       'Header' => 'pdr.h',
-      'Line' => '425',
+      'Line' => '428',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4708,7 +4708,7 @@
     },
     '81422' => {
       'Header' => 'pdr.h',
-      'Line' => '415',
+      'Line' => '418',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4720,7 +4720,7 @@
     },
     '81577' => {
       'Header' => 'pdr.h',
-      'Line' => '405',
+      'Line' => '408',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4735,7 +4735,7 @@
     },
     '81756' => {
       'Header' => 'pdr.h',
-      'Line' => '377',
+      'Line' => '380',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4758,7 +4758,7 @@
     },
     '82215' => {
       'Header' => 'pdr.h',
-      'Line' => '359',
+      'Line' => '362',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4800,7 +4800,7 @@
     },
     '82742' => {
       'Header' => 'pdr.h',
-      'Line' => '331',
+      'Line' => '334',
       'Param' => {
         '0' => {
           'name' => 'tree',
@@ -4828,13 +4828,13 @@
     },
     '83175' => {
       'Header' => 'pdr.h',
-      'Line' => '314',
+      'Line' => '317',
       'Return' => '76811',
       'ShortName' => 'pldm_entity_association_tree_init'
     },
     '83249' => {
       'Header' => 'pdr.h',
-      'Line' => '399',
+      'Line' => '402',
       'Param' => {
         '0' => {
           'name' => 'entity',
@@ -4846,7 +4846,7 @@
     },
     '83409' => {
       'Header' => 'pdr.h',
-      'Line' => '388',
+      'Line' => '391',
       'Param' => {
         '0' => {
           'name' => 'node',
@@ -4858,7 +4858,7 @@
     },
     '84203' => {
       'Header' => 'pdr.h',
-      'Line' => '200',
+      'Line' => '203',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4892,7 +4892,7 @@
     },
     '84562' => {
       'Header' => 'pdr.h',
-      'Line' => '279',
+      'Line' => '282',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4927,7 +4927,7 @@
     },
     '84916' => {
       'Header' => 'pdr.h',
-      'Line' => '258',
+      'Line' => '261',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -4964,7 +4964,7 @@
     },
     '85255' => {
       'Header' => 'pdr.h',
-      'Line' => '170',
+      'Line' => '173',
       'Param' => {
         '0' => {
           'name' => 'record',
@@ -4976,7 +4976,7 @@
     },
     '85626' => {
       'Header' => 'pdr.h',
-      'Line' => '94',
+      'Line' => '97',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -5016,7 +5016,7 @@
     },
     '86105' => {
       'Header' => 'pdr.h',
-      'Line' => '160',
+      'Line' => '163',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -5049,7 +5049,7 @@
     },
     '86276' => {
       'Header' => 'pdr.h',
-      'Line' => '142',
+      'Line' => '145',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -5084,7 +5084,7 @@
     },
     '86443' => {
       'Header' => 'pdr.h',
-      'Line' => '123',
+      'Line' => '126',
       'Param' => {
         '0' => {
           'name' => 'repo',
@@ -5174,21 +5174,21 @@
         '5' => 'r12'
       },
       'Return' => '100',
-      'ShortName' => 'pldm_pdr_add_check'
+      'ShortName' => 'pldm_pdr_add'
     },
-    '95001' => {
+    '95022' => {
       'Header' => 'platform.h',
       'Line' => '2429',
       'Param' => {
         '0' => {
           'name' => 'pdr',
-          'type' => '95912'
+          'type' => '95933'
         }
       },
       'Return' => '100',
       'ShortName' => 'decode_pldm_entity_auxiliary_names_pdr_index'
     },
-    '95922' => {
+    '95943' => {
       'Header' => 'platform.h',
       'Line' => '2407',
       'Param' => {
@@ -5202,7 +5202,7 @@
         },
         '2' => {
           'name' => 'pdr',
-          'type' => '95912'
+          'type' => '95933'
         },
         '3' => {
           'name' => 'pdr_length',
@@ -5215,7 +5215,7 @@
       'Return' => '100',
       'ShortName' => 'decode_entity_auxiliary_names_pdr'
     },
-    '102427' => {
+    '102448' => {
       'Header' => 'platform.h',
       'Line' => '1791',
       'Param' => {
@@ -5225,7 +5225,7 @@
         },
         '1' => {
           'name' => 'resp',
-          'type' => '104030'
+          'type' => '104051'
         },
         '2' => {
           'name' => 'msg',
@@ -5242,7 +5242,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_state_effecter_states_resp'
     },
-    '104045' => {
+    '104066' => {
       'Header' => 'platform.h',
       'Line' => '1774',
       'Param' => {
@@ -5256,13 +5256,13 @@
         },
         '2' => {
           'name' => 'resp',
-          'type' => '104030'
+          'type' => '104051'
         }
       },
       'Return' => '100',
       'ShortName' => 'decode_get_state_effecter_states_resp'
     },
-    '105567' => {
+    '105588' => {
       'Header' => 'platform.h',
       'Line' => '1743',
       'Param' => {
@@ -5282,7 +5282,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_state_effecter_states_req'
     },
-    '106339' => {
+    '106360' => {
       'Header' => 'platform.h',
       'Line' => '1757',
       'Param' => {
@@ -5306,7 +5306,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_state_effecter_states_req'
     },
-    '147674' => {
+    '147695' => {
       'Header' => 'platform.h',
       'Line' => '1923',
       'Param' => {
@@ -5363,7 +5363,7 @@
       'Return' => '100',
       'ShortName' => 'decode_poll_for_platform_event_message_resp'
     },
-    '150384' => {
+    '150405' => {
       'Header' => 'platform.h',
       'Line' => '1897',
       'Param' => {
@@ -5400,7 +5400,7 @@
       'Return' => '100',
       'ShortName' => 'encode_poll_for_platform_event_message_req'
     },
-    '151803' => {
+    '151824' => {
       'Header' => 'platform.h',
       'Line' => '2367',
       'Param' => {
@@ -5420,7 +5420,7 @@
       'Return' => '100',
       'ShortName' => 'encode_set_event_receiver_resp'
     },
-    '151975' => {
+    '151996' => {
       'Header' => 'platform.h',
       'Line' => '2353',
       'Param' => {
@@ -5452,7 +5452,7 @@
       'Return' => '100',
       'ShortName' => 'decode_set_event_receiver_req'
     },
-    '153399' => {
+    '153420' => {
       'Header' => 'platform.h',
       'Line' => '2331',
       'Param' => {
@@ -5477,7 +5477,7 @@
       'Return' => '100',
       'ShortName' => 'decode_set_event_receiver_resp'
     },
-    '154062' => {
+    '154083' => {
       'Header' => 'platform.h',
       'Line' => '2317',
       'Param' => {
@@ -5509,7 +5509,7 @@
       'Return' => '100',
       'ShortName' => 'encode_set_event_receiver_req'
     },
-    '154319' => {
+    '154340' => {
       'Header' => 'platform.h',
       'Line' => '1470',
       'Param' => {
@@ -5533,7 +5533,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_sensor_reading_req'
     },
-    '155305' => {
+    '155326' => {
       'Header' => 'platform.h',
       'Line' => '1496',
       'Param' => {
@@ -5590,7 +5590,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_sensor_reading_resp'
     },
-    '155856' => {
+    '155877' => {
       'Header' => 'platform.h',
       'Line' => '2292',
       'Param' => {
@@ -5642,7 +5642,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_sensor_reading_resp'
     },
-    '159455' => {
+    '159476' => {
       'Header' => 'platform.h',
       'Line' => '2267',
       'Param' => {
@@ -5666,7 +5666,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_sensor_reading_req'
     },
-    '159672' => {
+    '159693' => {
       'Header' => 'platform.h',
       'Line' => '2248',
       'Param' => {
@@ -5700,7 +5700,7 @@
       'Return' => '100',
       'ShortName' => 'decode_pldm_pdr_repository_change_record_data'
     },
-    '161645' => {
+    '161666' => {
       'Header' => 'platform.h',
       'Line' => '2154',
       'Param' => {
@@ -5714,13 +5714,13 @@
         },
         '2' => {
           'name' => 'poll_event',
-          'type' => '162878'
+          'type' => '162899'
         }
       },
       'Return' => '100',
       'ShortName' => 'decode_pldm_message_poll_event_data'
     },
-    '162883' => {
+    '162904' => {
       'Header' => 'platform.h',
       'Line' => '2140',
       'Param' => {
@@ -5754,7 +5754,7 @@
       'Return' => '100',
       'ShortName' => 'decode_pldm_pdr_repository_chg_event_data'
     },
-    '163766' => {
+    '163787' => {
       'Header' => 'platform.h',
       'Line' => '2202',
       'Param' => {
@@ -5776,11 +5776,11 @@
         },
         '4' => {
           'name' => 'change_entries',
-          'type' => '164084'
+          'type' => '164105'
         },
         '5' => {
           'name' => 'event_data',
-          'type' => '164099'
+          'type' => '164120'
         },
         '6' => {
           'name' => 'actual_change_records_size',
@@ -5804,7 +5804,7 @@
       'Return' => '100',
       'ShortName' => 'encode_pldm_pdr_repository_chg_event_data'
     },
-    '164109' => {
+    '164130' => {
       'Header' => 'platform.h',
       'Line' => '2118',
       'Param' => {
@@ -5841,7 +5841,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_numeric_effecter_value_resp'
     },
-    '168464' => {
+    '168485' => {
       'Header' => 'platform.h',
       'Line' => '1427',
       'Param' => {
@@ -5861,7 +5861,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_numeric_effecter_value_req'
     },
-    '169231' => {
+    '169252' => {
       'Header' => 'platform.h',
       'Line' => '1451',
       'Param' => {
@@ -5903,7 +5903,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_numeric_effecter_value_resp'
     },
-    '169926' => {
+    '169947' => {
       'Header' => 'platform.h',
       'Line' => '2097',
       'Param' => {
@@ -5923,7 +5923,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_numeric_effecter_value_req'
     },
-    '170123' => {
+    '170144' => {
       'Header' => 'platform.h',
       'Line' => '2082',
       'Param' => {
@@ -5937,13 +5937,13 @@
         },
         '2' => {
           'name' => 'pdr_value',
-          'type' => '228610'
+          'type' => '228631'
         }
       },
       'Return' => '100',
       'ShortName' => 'decode_numeric_sensor_pdr_data'
     },
-    '228615' => {
+    '228636' => {
       'Header' => 'platform.h',
       'Line' => '2070',
       'Param' => {
@@ -5979,7 +5979,7 @@
       'Return' => '100',
       'ShortName' => 'decode_numeric_sensor_data'
     },
-    '231258' => {
+    '231279' => {
       'Header' => 'platform.h',
       'Line' => '2049',
       'Param' => {
@@ -6013,7 +6013,7 @@
       'Return' => '100',
       'ShortName' => 'decode_state_sensor_data'
     },
-    '232340' => {
+    '232361' => {
       'Header' => 'platform.h',
       'Line' => '2031',
       'Param' => {
@@ -6042,7 +6042,7 @@
       'Return' => '100',
       'ShortName' => 'decode_sensor_op_data'
     },
-    '233203' => {
+    '233224' => {
       'Header' => 'platform.h',
       'Line' => '2014',
       'Param' => {
@@ -6070,7 +6070,7 @@
       'Return' => '100',
       'ShortName' => 'decode_sensor_event_data'
     },
-    '234136' => {
+    '234157' => {
       'Header' => 'platform.h',
       'Line' => '1993',
       'Param' => {
@@ -6117,7 +6117,7 @@
       'Return' => '100',
       'ShortName' => 'decode_event_message_supported_resp'
     },
-    '235774' => {
+    '235795' => {
       'Header' => 'platform.h',
       'Line' => '1976',
       'Param' => {
@@ -6137,7 +6137,7 @@
       'Return' => '100',
       'ShortName' => 'encode_event_message_supported_req'
     },
-    '235971' => {
+    '235992' => {
       'Header' => 'platform.h',
       'Line' => '1949',
       'Param' => {
@@ -6161,7 +6161,7 @@
       'Return' => '100',
       'ShortName' => 'decode_event_message_buffer_size_resp'
     },
-    '236957' => {
+    '236978' => {
       'Header' => 'platform.h',
       'Line' => '1962',
       'Param' => {
@@ -6184,7 +6184,7 @@
       'Return' => '100',
       'ShortName' => 'encode_event_message_buffer_size_req'
     },
-    '237154' => {
+    '237175' => {
       'Header' => 'platform.h',
       'Line' => '1938',
       'Param' => {
@@ -6211,7 +6211,7 @@
       'Return' => '100',
       'ShortName' => 'decode_platform_event_message_resp'
     },
-    '237961' => {
+    '237982' => {
       'Header' => 'platform.h',
       'Line' => '1881',
       'Param' => {
@@ -6253,7 +6253,7 @@
       'Return' => '100',
       'ShortName' => 'encode_platform_event_message_req'
     },
-    '238361' => {
+    '238382' => {
       'Header' => 'platform.h',
       'Line' => '1861',
       'Param' => {
@@ -6315,7 +6315,7 @@
       'Return' => '100',
       'ShortName' => 'encode_poll_for_platform_event_message_resp'
     },
-    '241122' => {
+    '241143' => {
       'Header' => 'platform.h',
       'Line' => '1839',
       'Param' => {
@@ -6339,7 +6339,7 @@
       'Return' => '100',
       'ShortName' => 'encode_platform_event_message_resp'
     },
-    '241339' => {
+    '241360' => {
       'Header' => 'platform.h',
       'Line' => '1824',
       'Param' => {
@@ -6371,7 +6371,7 @@
       'Return' => '100',
       'ShortName' => 'decode_poll_for_platform_event_message_req'
     },
-    '242776' => {
+    '242797' => {
       'Header' => 'platform.h',
       'Line' => '1808',
       'Param' => {
@@ -6410,13 +6410,13 @@
       'Return' => '100',
       'ShortName' => 'decode_platform_event_message_req'
     },
-    '243897' => {
+    '243918' => {
       'Header' => 'platform.h',
       'Line' => '2226',
       'Param' => {
         '0' => {
           'name' => 'event_data',
-          'type' => '244087'
+          'type' => '244108'
         },
         '1' => {
           'name' => 'event_data_size',
@@ -6428,7 +6428,7 @@
         },
         '3' => {
           'name' => 'sensor_event_class',
-          'type' => '90661'
+          'type' => '90682'
         },
         '4' => {
           'name' => 'sensor_offset',
@@ -6445,7 +6445,7 @@
         },
         '7' => {
           'name' => 'actual_event_data_size',
-          'type' => '160560'
+          'type' => '160581'
         }
       },
       'Reg' => {
@@ -6459,7 +6459,7 @@
       'Return' => '100',
       'ShortName' => 'encode_sensor_event_data'
     },
-    '244102' => {
+    '244123' => {
       'Header' => 'platform.h',
       'Line' => '1392',
       'Param' => {
@@ -6487,7 +6487,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_state_sensor_readings_req'
     },
-    '245307' => {
+    '245328' => {
       'Header' => 'platform.h',
       'Line' => '1728',
       'Param' => {
@@ -6509,7 +6509,7 @@
         },
         '4' => {
           'name' => 'field',
-          'type' => '247023'
+          'type' => '247044'
         }
       },
       'Reg' => {
@@ -6520,7 +6520,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_state_sensor_readings_resp'
     },
-    '247028' => {
+    '247049' => {
       'Header' => 'platform.h',
       'Line' => '1708',
       'Param' => {
@@ -6548,7 +6548,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_state_sensor_readings_req'
     },
-    '247265' => {
+    '247286' => {
       'Header' => 'platform.h',
       'Line' => '1412',
       'Param' => {
@@ -6566,7 +6566,7 @@
         },
         '3' => {
           'name' => 'field',
-          'type' => '247023'
+          'type' => '247044'
         },
         '4' => {
           'name' => 'msg',
@@ -6576,7 +6576,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_state_sensor_readings_resp'
     },
-    '247618' => {
+    '247639' => {
       'Header' => 'platform.h',
       'Line' => '1689',
       'Param' => {
@@ -6601,7 +6601,7 @@
       'Return' => '100',
       'ShortName' => 'decode_set_numeric_effecter_value_resp'
     },
-    '247694' => {
+    '247715' => {
       'Header' => 'platform.h',
       'Line' => '1676',
       'Param' => {
@@ -6636,7 +6636,7 @@
       'Return' => '100',
       'ShortName' => 'encode_set_numeric_effecter_value_req'
     },
-    '248163' => {
+    '248184' => {
       'Header' => 'platform.h',
       'Line' => '1283',
       'Param' => {
@@ -6660,7 +6660,7 @@
       'Return' => '100',
       'ShortName' => 'encode_set_numeric_effecter_value_resp'
     },
-    '248355' => {
+    '248376' => {
       'Header' => 'platform.h',
       'Line' => '1267',
       'Param' => {
@@ -6688,7 +6688,7 @@
       'Return' => '100',
       'ShortName' => 'decode_set_numeric_effecter_value_req'
     },
-    '250962' => {
+    '250983' => {
       'Header' => 'platform.h',
       'Line' => '1607',
       'Param' => {
@@ -6743,7 +6743,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_pdr_resp'
     },
-    '253336' => {
+    '253357' => {
       'Header' => 'platform.h',
       'Line' => '1576',
       'Param' => {
@@ -6788,7 +6788,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_pdr_req'
     },
-    '253625' => {
+    '253646' => {
       'Header' => 'platform.h',
       'Line' => '1550',
       'Param' => {
@@ -6840,7 +6840,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_pdr_repository_info_resp'
     },
-    '256234' => {
+    '256255' => {
       'Header' => 'platform.h',
       'Line' => '1526',
       'Param' => {
@@ -6892,7 +6892,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_pdr_repository_info_resp'
     },
-    '256711' => {
+    '256732' => {
       'Header' => 'platform.h',
       'Line' => '1350',
       'Param' => {
@@ -6939,7 +6939,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_pdr_resp'
     },
-    '257164' => {
+    '257185' => {
       'Header' => 'platform.h',
       'Line' => '1371',
       'Param' => {
@@ -6976,7 +6976,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_pdr_req'
     },
-    '259063' => {
+    '259084' => {
       'Header' => 'platform.h',
       'Line' => '1322',
       'Param' => {
@@ -6998,13 +6998,13 @@
         },
         '4' => {
           'name' => 'field',
-          'type' => '260485'
+          'type' => '260506'
         }
       },
       'Return' => '100',
       'ShortName' => 'decode_set_state_effecter_states_req'
     },
-    '260490' => {
+    '260511' => {
       'Header' => 'platform.h',
       'Line' => '1655',
       'Param' => {
@@ -7029,7 +7029,7 @@
       'Return' => '100',
       'ShortName' => 'decode_set_state_effecter_states_resp'
     },
-    '260563' => {
+    '260584' => {
       'Header' => 'platform.h',
       'Line' => '1636',
       'Param' => {
@@ -7047,7 +7047,7 @@
         },
         '3' => {
           'name' => 'field',
-          'type' => '260485'
+          'type' => '260506'
         },
         '4' => {
           'name' => 'msg',
@@ -7060,7 +7060,7 @@
       'Return' => '100',
       'ShortName' => 'encode_set_state_effecter_states_req'
     },
-    '260906' => {
+    '260927' => {
       'Header' => 'platform.h',
       'Line' => '1300',
       'Param' => {
@@ -7080,13 +7080,13 @@
       'Return' => '100',
       'ShortName' => 'encode_set_state_effecter_states_resp'
     },
-    '261072' => {
+    '261093' => {
       'Header' => 'platform.h',
       'Line' => '669',
       'Param' => {
         '0' => {
           'name' => 'sensor',
-          'type' => '261456'
+          'type' => '261477'
         },
         '1' => {
           'name' => 'allocation_size',
@@ -7094,7 +7094,7 @@
         },
         '2' => {
           'name' => 'possible_states',
-          'type' => '261466'
+          'type' => '261487'
         },
         '3' => {
           'name' => 'possible_states_size',
@@ -7102,7 +7102,7 @@
         },
         '4' => {
           'name' => 'actual_size',
-          'type' => '160560'
+          'type' => '160581'
         }
       },
       'Reg' => {
@@ -7115,13 +7115,13 @@
       'Return' => '100',
       'ShortName' => 'encode_state_sensor_pdr'
     },
-    '261476' => {
+    '261497' => {
       'Header' => 'platform.h',
       'Line' => '909',
       'Param' => {
         '0' => {
           'name' => 'effecter',
-          'type' => '261860'
+          'type' => '261881'
         },
         '1' => {
           'name' => 'allocation_size',
@@ -7129,7 +7129,7 @@
         },
         '2' => {
           'name' => 'possible_states',
-          'type' => '261870'
+          'type' => '261891'
         },
         '3' => {
           'name' => 'possible_states_size',
@@ -7137,7 +7137,7 @@
         },
         '4' => {
           'name' => 'actual_size',
-          'type' => '160560'
+          'type' => '160581'
         }
       },
       'Reg' => {
@@ -7150,13 +7150,13 @@
       'Return' => '100',
       'ShortName' => 'encode_state_effecter_pdr'
     },
-    '268556' => {
+    '268577' => {
       'Header' => 'instance-id.h',
       'Line' => '85',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '268736'
+          'type' => '268757'
         },
         '1' => {
           'name' => 'tid',
@@ -7170,13 +7170,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_instance_id_free'
     },
-    '268741' => {
+    '268762' => {
       'Header' => 'instance-id.h',
       'Line' => '68',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '268736'
+          'type' => '268757'
         },
         '1' => {
           'name' => 'tid',
@@ -7184,19 +7184,19 @@
         },
         '2' => {
           'name' => 'iid',
-          'type' => '269123'
+          'type' => '269144'
         }
       },
       'Return' => '100',
       'ShortName' => 'pldm_instance_id_alloc'
     },
-    '269128' => {
+    '269149' => {
       'Header' => 'instance-id.h',
       'Line' => '51',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '268736'
+          'type' => '268757'
         }
       },
       'Reg' => {
@@ -7205,25 +7205,25 @@
       'Return' => '100',
       'ShortName' => 'pldm_instance_db_destroy'
     },
-    '269213' => {
+    '269234' => {
       'Header' => 'instance-id.h',
       'Line' => '41',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '269299'
+          'type' => '269320'
         }
       },
       'Return' => '100',
       'ShortName' => 'pldm_instance_db_init_default'
     },
-    '269304' => {
+    '269325' => {
       'Header' => 'instance-id.h',
       'Line' => '28',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '269299'
+          'type' => '269320'
         },
         '1' => {
           'name' => 'dbpath',
@@ -7233,13 +7233,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_instance_db_init'
     },
-    '270220' => {
+    '270241' => {
       'Header' => 'transport.h',
       'Line' => '53',
       'Param' => {
         '0' => {
           'name' => 'transport',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'tid',
@@ -7260,16 +7260,16 @@
         '2' => 'rdx',
         '3' => 'rcx'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_transport_send_msg'
     },
-    '270267' => {
+    '270288' => {
       'Header' => 'transport.h',
       'Line' => '118',
       'Param' => {
         '0' => {
           'name' => 'transport',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'tid',
@@ -7295,16 +7295,16 @@
       'Reg' => {
         '2' => 'r14'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_transport_send_recv_msg'
     },
-    '270324' => {
+    '270345' => {
       'Header' => 'mctp-demux.h',
       'Line' => '18',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '270215'
+          'type' => '270236'
         }
       },
       'Reg' => {
@@ -7313,17 +7313,17 @@
       'Return' => '1',
       'ShortName' => 'pldm_transport_mctp_demux_destroy'
     },
-    '270361' => {
+    '270382' => {
       'Header' => 'transport.h',
       'Line' => '81',
       'Param' => {
         '0' => {
           'name' => 'transport',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'tid',
-          'type' => '270398'
+          'type' => '270419'
         },
         '2' => {
           'name' => 'pldm_msg',
@@ -7340,16 +7340,16 @@
         '2' => 'rbp',
         '3' => 'rcx'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_transport_recv_msg'
     },
-    '270403' => {
+    '270424' => {
       'Header' => 'mctp-demux.h',
       'Line' => '32',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '270215'
+          'type' => '270236'
         },
         '1' => {
           'name' => 'tid',
@@ -7357,7 +7357,7 @@
         },
         '2' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         }
       },
       'Reg' => {
@@ -7368,28 +7368,28 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_mctp_demux_map_tid'
     },
-    '270435' => {
+    '270456' => {
       'Header' => 'mctp-demux.h',
       'Line' => '22',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '270215'
+          'type' => '270236'
         }
       },
       'Reg' => {
         '0' => 'rdi'
       },
-      'Return' => '270257',
+      'Return' => '270278',
       'ShortName' => 'pldm_transport_mctp_demux_core'
     },
-    '270479' => {
+    '270500' => {
       'Header' => 'mctp-demux.h',
       'Line' => '15',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '270501'
+          'type' => '270522'
         }
       },
       'Reg' => {
@@ -7398,19 +7398,19 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_mctp_demux_init'
     },
-    '270560' => {
+    '270581' => {
       'Header' => 'pldm.h',
       'Line' => '119',
       'Return' => '1',
       'ShortName' => 'pldm_close'
     },
-    '270604' => {
+    '270625' => {
       'Header' => 'pldm.h',
       'Line' => '75',
       'Param' => {
         '0' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         },
         '1' => {
           'name' => 'mctp_fd',
@@ -7431,16 +7431,16 @@
         '2' => 'rdx',
         '3' => 'rcx'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_send'
     },
-    '271023' => {
+    '271044' => {
       'Header' => 'pldm.h',
       'Line' => '57',
       'Param' => {
         '0' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         },
         '1' => {
           'name' => 'mctp_fd',
@@ -7471,16 +7471,16 @@
         '4' => 'r8',
         '5' => 'r9'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_send_recv'
     },
-    '271506' => {
+    '271527' => {
       'Header' => 'pldm.h',
       'Line' => '94',
       'Param' => {
         '0' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         },
         '1' => {
           'name' => 'mctp_fd',
@@ -7502,16 +7502,16 @@
       'Reg' => {
         '3' => 'rbx'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_recv'
     },
-    '271732' => {
+    '271753' => {
       'Header' => 'pldm.h',
       'Line' => '112',
       'Param' => {
         '0' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         },
         '1' => {
           'name' => 'mctp_fd',
@@ -7530,26 +7530,26 @@
         '2' => 'r12',
         '3' => 'r13'
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_recv_any'
     },
-    '272185' => {
+    '272206' => {
       'Header' => 'pldm.h',
       'Line' => '39',
-      'Return' => '270171',
+      'Return' => '270192',
       'ShortName' => 'pldm_open'
     },
-    '274568' => {
+    '274589' => {
       'Header' => 'af-mctp.h',
       'Line' => '54',
       'Param' => {
         '0' => {
           'name' => 'transport',
-          'type' => '274724'
+          'type' => '274745'
         },
         '1' => {
           'name' => 'smctp',
-          'type' => '274729'
+          'type' => '274750'
         },
         '2' => {
           'name' => 'len',
@@ -7563,13 +7563,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_af_mctp_bind'
     },
-    '274734' => {
+    '274755' => {
       'Header' => 'af-mctp.h',
       'Line' => '19',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '274724'
+          'type' => '274745'
         }
       },
       'Reg' => {
@@ -7578,13 +7578,13 @@
       'Return' => '1',
       'ShortName' => 'pldm_transport_af_mctp_destroy'
     },
-    '274818' => {
+    '274839' => {
       'Header' => 'af-mctp.h',
       'Line' => '16',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '275042'
+          'type' => '275063'
         }
       },
       'Reg' => {
@@ -7593,13 +7593,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_af_mctp_init'
     },
-    '276229' => {
+    '276250' => {
       'Header' => 'af-mctp.h',
       'Line' => '37',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '274724'
+          'type' => '274745'
         },
         '1' => {
           'name' => 'tid',
@@ -7607,7 +7607,7 @@
         },
         '2' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         }
       },
       'Reg' => {
@@ -7618,13 +7618,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_af_mctp_unmap_tid'
     },
-    '276302' => {
+    '276323' => {
       'Header' => 'af-mctp.h',
       'Line' => '33',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '274724'
+          'type' => '274745'
         },
         '1' => {
           'name' => 'tid',
@@ -7632,7 +7632,7 @@
         },
         '2' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         }
       },
       'Reg' => {
@@ -7643,17 +7643,17 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_af_mctp_map_tid'
     },
-    '276543' => {
+    '276564' => {
       'Header' => 'af-mctp.h',
       'Line' => '28',
       'Param' => {
         '0' => {
           'name' => 't',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'pollfd',
-          'type' => '273220'
+          'type' => '273241'
         }
       },
       'Reg' => {
@@ -7663,28 +7663,28 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_af_mctp_init_pollfd'
     },
-    '276621' => {
+    '276642' => {
       'Header' => 'af-mctp.h',
       'Line' => '23',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '274724'
+          'type' => '274745'
         }
       },
       'Reg' => {
         '0' => 'rdi'
       },
-      'Return' => '270257',
+      'Return' => '270278',
       'ShortName' => 'pldm_transport_af_mctp_core'
     },
-    '280305' => {
+    '280326' => {
       'Header' => 'mctp-demux.h',
       'Line' => '36',
       'Param' => {
         '0' => {
           'name' => 'ctx',
-          'type' => '270215'
+          'type' => '270236'
         },
         '1' => {
           'name' => 'tid',
@@ -7692,7 +7692,7 @@
         },
         '2' => {
           'name' => 'eid',
-          'type' => '270056'
+          'type' => '270077'
         }
       },
       'Reg' => {
@@ -7703,17 +7703,17 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_mctp_demux_unmap_tid'
     },
-    '280619' => {
+    '280640' => {
       'Header' => 'mctp-demux.h',
       'Line' => '27',
       'Param' => {
         '0' => {
           'name' => 't',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'pollfd',
-          'type' => '273220'
+          'type' => '273241'
         }
       },
       'Reg' => {
@@ -7723,13 +7723,13 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_mctp_demux_init_pollfd'
     },
-    '285560' => {
+    '285581' => {
       'Header' => 'transport.h',
       'Line' => '31',
       'Param' => {
         '0' => {
           'name' => 'transport',
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'name' => 'timeout',
@@ -7739,7 +7739,7 @@
       'Return' => '100',
       'ShortName' => 'pldm_transport_poll'
     },
-    '290619' => {
+    '290640' => {
       'Header' => 'file_io.h',
       'Line' => '912',
       'Param' => {
@@ -7759,7 +7759,7 @@
       'Return' => '100',
       'ShortName' => 'encode_new_file_with_metadata_resp'
     },
-    '290819' => {
+    '290840' => {
       'Header' => 'file_io.h',
       'Line' => '898',
       'Param' => {
@@ -7813,7 +7813,7 @@
       'Return' => '100',
       'ShortName' => 'decode_new_file_with_metadata_req'
     },
-    '291051' => {
+    '291072' => {
       'Header' => 'file_io.h',
       'Line' => '881',
       'Param' => {
@@ -7838,7 +7838,7 @@
       'Return' => '100',
       'ShortName' => 'decode_new_file_with_metadata_resp'
     },
-    '291152' => {
+    '291173' => {
       'Header' => 'file_io.h',
       'Line' => '866',
       'Param' => {
@@ -7888,7 +7888,7 @@
       'Return' => '100',
       'ShortName' => 'encode_new_file_with_metadata_req'
     },
-    '291449' => {
+    '291470' => {
       'Header' => 'file_io.h',
       'Line' => '824',
       'Param' => {
@@ -7908,7 +7908,7 @@
       'Return' => '100',
       'ShortName' => 'encode_file_ack_with_meta_data_resp'
     },
-    '291644' => {
+    '291665' => {
       'Header' => 'file_io.h',
       'Line' => '811',
       'Param' => {
@@ -7962,7 +7962,7 @@
       'Return' => '100',
       'ShortName' => 'decode_file_ack_with_meta_data_req'
     },
-    '291856' => {
+    '291877' => {
       'Header' => 'file_io.h',
       'Line' => '794',
       'Param' => {
@@ -7987,7 +7987,7 @@
       'Return' => '100',
       'ShortName' => 'decode_file_ack_with_meta_data_resp'
     },
-    '291952' => {
+    '291973' => {
       'Header' => 'file_io.h',
       'Line' => '781',
       'Param' => {
@@ -8037,7 +8037,7 @@
       'Return' => '100',
       'ShortName' => 'encode_file_ack_with_meta_data_req'
     },
-    '292249' => {
+    '292270' => {
       'Header' => 'file_io.h',
       'Line' => '741',
       'Param' => {
@@ -8062,7 +8062,7 @@
       'Return' => '100',
       'ShortName' => 'decode_file_ack_resp'
     },
-    '292350' => {
+    '292371' => {
       'Header' => 'file_io.h',
       'Line' => '730',
       'Param' => {
@@ -8090,7 +8090,7 @@
       'Return' => '100',
       'ShortName' => 'encode_file_ack_req'
     },
-    '292585' => {
+    '292606' => {
       'Header' => 'file_io.h',
       'Line' => '718',
       'Param' => {
@@ -8110,7 +8110,7 @@
       'Return' => '100',
       'ShortName' => 'encode_file_ack_resp'
     },
-    '292775' => {
+    '292796' => {
       'Header' => 'file_io.h',
       'Line' => '706',
       'Param' => {
@@ -8144,7 +8144,7 @@
       'Return' => '100',
       'ShortName' => 'decode_file_ack_req'
     },
-    '292917' => {
+    '292938' => {
       'Header' => 'file_io.h',
       'Line' => '675',
       'Param' => {
@@ -8174,7 +8174,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_by_type_resp'
     },
-    '293032' => {
+    '293053' => {
       'Header' => 'file_io.h',
       'Line' => '661',
       'Param' => {
@@ -8211,7 +8211,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_by_type_req'
     },
-    '293302' => {
+    '293323' => {
       'Header' => 'file_io.h',
       'Line' => '644',
       'Param' => {
@@ -8239,7 +8239,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_by_type_resp'
     },
-    '293532' => {
+    '293553' => {
       'Header' => 'file_io.h',
       'Line' => '626',
       'Param' => {
@@ -8278,7 +8278,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_by_type_req'
     },
-    '293694' => {
+    '293715' => {
       'Header' => 'file_io.h',
       'Line' => '590',
       'Param' => {
@@ -8303,7 +8303,7 @@
       'Return' => '100',
       'ShortName' => 'decode_new_file_resp'
     },
-    '293795' => {
+    '293816' => {
       'Header' => 'file_io.h',
       'Line' => '579',
       'Param' => {
@@ -8331,7 +8331,7 @@
       'Return' => '100',
       'ShortName' => 'encode_new_file_req'
     },
-    '294030' => {
+    '294051' => {
       'Header' => 'file_io.h',
       'Line' => '567',
       'Param' => {
@@ -8351,7 +8351,7 @@
       'Return' => '100',
       'ShortName' => 'encode_new_file_resp'
     },
-    '294220' => {
+    '294241' => {
       'Header' => 'file_io.h',
       'Line' => '555',
       'Param' => {
@@ -8385,7 +8385,7 @@
       'Return' => '100',
       'ShortName' => 'decode_new_file_req'
     },
-    '294362' => {
+    '294383' => {
       'Header' => 'file_io.h',
       'Line' => '523',
       'Param' => {
@@ -8415,7 +8415,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_by_type_memory_resp'
     },
-    '294477' => {
+    '294498' => {
       'Header' => 'file_io.h',
       'Line' => '509',
       'Param' => {
@@ -8457,7 +8457,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_by_type_memory_req'
     },
-    '294762' => {
+    '294783' => {
       'Header' => 'file_io.h',
       'Line' => '491',
       'Param' => {
@@ -8485,7 +8485,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_by_type_memory_resp'
     },
-    '294992' => {
+    '295013' => {
       'Header' => 'file_io.h',
       'Line' => '473',
       'Param' => {
@@ -8529,7 +8529,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_by_type_memory_req'
     },
-    '295169' => {
+    '295190' => {
       'Header' => 'file_io.h',
       'Line' => '435',
       'Param' => {
@@ -8553,7 +8553,7 @@
       'Return' => '100',
       'ShortName' => 'encode_write_file_resp'
     },
-    '295384' => {
+    '295405' => {
       'Header' => 'file_io.h',
       'Line' => '422',
       'Param' => {
@@ -8583,7 +8583,7 @@
       'Return' => '100',
       'ShortName' => 'decode_write_file_resp'
     },
-    '295494' => {
+    '295515' => {
       'Header' => 'file_io.h',
       'Line' => '410',
       'Param' => {
@@ -8611,7 +8611,7 @@
       'Return' => '100',
       'ShortName' => 'encode_write_file_req'
     },
-    '295729' => {
+    '295750' => {
       'Header' => 'file_io.h',
       'Line' => '391',
       'Param' => {
@@ -8649,7 +8649,7 @@
       'Return' => '100',
       'ShortName' => 'decode_write_file_req'
     },
-    '295884' => {
+    '295905' => {
       'Header' => 'file_io.h',
       'Line' => '377',
       'Param' => {
@@ -8673,7 +8673,7 @@
       'Return' => '100',
       'ShortName' => 'encode_read_file_resp'
     },
-    '296099' => {
+    '296120' => {
       'Header' => 'file_io.h',
       'Line' => '359',
       'Param' => {
@@ -8707,7 +8707,7 @@
       'Return' => '100',
       'ShortName' => 'decode_read_file_resp'
     },
-    '296235' => {
+    '296256' => {
       'Header' => 'file_io.h',
       'Line' => '344',
       'Param' => {
@@ -8735,7 +8735,7 @@
       'Return' => '100',
       'ShortName' => 'encode_read_file_req'
     },
-    '296470' => {
+    '296491' => {
       'Header' => 'file_io.h',
       'Line' => '330',
       'Param' => {
@@ -8769,7 +8769,7 @@
       'Return' => '100',
       'ShortName' => 'decode_read_file_req'
     },
-    '296606' => {
+    '296627' => {
       'Header' => 'file_io.h',
       'Line' => '274',
       'Param' => {
@@ -8813,7 +8813,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_file_table_resp'
     },
-    '296780' => {
+    '296801' => {
       'Header' => 'file_io.h',
       'Line' => '258',
       'Param' => {
@@ -8841,7 +8841,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_file_table_req'
     },
-    '297007' => {
+    '297028' => {
       'Header' => 'file_io.h',
       'Line' => '244',
       'Param' => {
@@ -8881,7 +8881,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_file_table_resp'
     },
-    '297365' => {
+    '297386' => {
       'Header' => 'file_io.h',
       'Line' => '227',
       'Param' => {
@@ -8915,7 +8915,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_file_table_req'
     },
-    '297500' => {
+    '297521' => {
       'Header' => 'file_io.h',
       'Line' => '183',
       'Param' => {
@@ -8945,7 +8945,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_memory_resp'
     },
-    '297609' => {
+    '297630' => {
       'Header' => 'file_io.h',
       'Line' => '169',
       'Param' => {
@@ -8985,7 +8985,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_memory_req'
     },
-    '297868' => {
+    '297889' => {
       'Header' => 'file_io.h',
       'Line' => '152',
       'Param' => {
@@ -9013,7 +9013,7 @@
       'Return' => '100',
       'ShortName' => 'encode_rw_file_memory_resp'
     },
-    '298089' => {
+    '298110' => {
       'Header' => 'file_io.h',
       'Line' => '136',
       'Param' => {
@@ -9052,7 +9052,7 @@
       'Return' => '100',
       'ShortName' => 'decode_rw_file_memory_req'
     },
-    '299138' => {
+    '299159' => {
       'Header' => 'host.h',
       'Line' => '101',
       'Param' => {
@@ -9087,7 +9087,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_alert_status_resp'
     },
-    '299386' => {
+    '299407' => {
       'Header' => 'host.h',
       'Line' => '86',
       'Param' => {
@@ -9112,7 +9112,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_alert_status_req'
     },
-    '299469' => {
+    '299490' => {
       'Header' => 'host.h',
       'Line' => '70',
       'Param' => {
@@ -9146,7 +9146,7 @@
       'Return' => '100',
       'ShortName' => 'decode_get_alert_status_resp'
     },
-    '299608' => {
+    '299629' => {
       'Header' => 'host.h',
       'Line' => '52',
       'Param' => {
@@ -9170,7 +9170,7 @@
       'Return' => '100',
       'ShortName' => 'encode_get_alert_status_req'
     },
-    '300676' => {
+    '300697' => {
       'Header' => 'platform.h',
       'Line' => '47',
       'Param' => {
@@ -9207,7 +9207,7 @@
       'Return' => '100',
       'ShortName' => 'encode_bios_attribute_update_event_req'
     },
-    '301782' => {
+    '301803' => {
       'Header' => 'file_io.h',
       'Line' => '36',
       'Param' => {
@@ -9531,6 +9531,7 @@
       'pldm_is_empty_entity_assoc_tree' => 1,
       'pldm_msg_hdr_correlate_response' => 1,
       'pldm_open' => 1,
+      'pldm_pdr_add' => 1,
       'pldm_pdr_add_check' => 1,
       'pldm_pdr_add_fru_record_set_check' => 1,
       'pldm_pdr_destroy' => 1,
@@ -11133,7 +11134,7 @@
     },
     '63089' => {
       'Header' => 'pdr.h',
-      'Line' => '288',
+      'Line' => '291',
       'Memb' => {
         '0' => {
           'name' => 'entity_type',
@@ -11158,7 +11159,7 @@
     '63146' => {
       'BaseType' => '63089',
       'Header' => 'pdr.h',
-      'Line' => '292',
+      'Line' => '295',
       'Name' => 'pldm_entity',
       'Size' => '6',
       'Type' => 'Typedef'
@@ -11166,7 +11167,7 @@
     '63190' => {
       'BaseType' => '63202',
       'Header' => 'pdr.h',
-      'Line' => '302',
+      'Line' => '305',
       'Name' => 'pldm_entity_association_tree',
       'PrivateABI' => 1,
       'Size' => '16',
@@ -11195,7 +11196,7 @@
     '63245' => {
       'BaseType' => '63262',
       'Header' => 'pdr.h',
-      'Line' => '307',
+      'Line' => '310',
       'Name' => 'pldm_entity_node',
       'PrivateABI' => 1,
       'Size' => '40',
@@ -11347,7 +11348,7 @@
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '88852' => {
+    '88873' => {
       'BaseType' => '74',
       'Header' => 'types.h',
       'Line' => '37',
@@ -11356,7 +11357,7 @@
       'Size' => '1',
       'Type' => 'Typedef'
     },
-    '88883' => {
+    '88904' => {
       'BaseType' => '93',
       'Header' => 'types.h',
       'Line' => '39',
@@ -11365,7 +11366,7 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '88914' => {
+    '88935' => {
       'BaseType' => '100',
       'Header' => 'types.h',
       'Line' => '41',
@@ -11374,7 +11375,7 @@
       'Size' => '4',
       'Type' => 'Typedef'
     },
-    '88952' => {
+    '88973' => {
       'BaseType' => '927',
       'Header' => 'types.h',
       'Line' => '55',
@@ -11383,8 +11384,8 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '89005' => {
-      'BaseType' => '88852',
+    '89026' => {
+      'BaseType' => '88873',
       'Header' => 'stdint-intn.h',
       'Line' => '24',
       'Name' => 'int8_t',
@@ -11392,8 +11393,8 @@
       'Size' => '1',
       'Type' => 'Typedef'
     },
-    '89017' => {
-      'BaseType' => '88883',
+    '89038' => {
+      'BaseType' => '88904',
       'Header' => 'stdint-intn.h',
       'Line' => '25',
       'Name' => 'int16_t',
@@ -11401,8 +11402,8 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '89029' => {
-      'BaseType' => '88914',
+    '89050' => {
+      'BaseType' => '88935',
       'Header' => 'stdint-intn.h',
       'Line' => '26',
       'Name' => 'int32_t',
@@ -11410,7 +11411,7 @@
       'Size' => '4',
       'Type' => 'Typedef'
     },
-    '89294' => {
+    '89315' => {
       'BaseType' => '133',
       'Header' => 'pldm_types.h',
       'Line' => '164',
@@ -11418,8 +11419,8 @@
       'Size' => '4',
       'Type' => 'Typedef'
     },
-    '89916' => {
-      'BaseType' => '88952',
+    '89937' => {
+      'BaseType' => '88973',
       'Header' => 'uchar.h',
       'Line' => '51',
       'Name' => 'char16_t',
@@ -11427,7 +11428,7 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '90627' => {
+    '90648' => {
       'Header' => 'platform.h',
       'Line' => '288',
       'Memb' => {
@@ -11448,13 +11449,13 @@
       'Size' => '4',
       'Type' => 'Enum'
     },
-    '90661' => {
-      'BaseType' => '90627',
+    '90682' => {
+      'BaseType' => '90648',
       'Name' => 'enum sensor_event_class_states const',
       'Size' => '4',
       'Type' => 'Const'
     },
-    '90969' => {
+    '90990' => {
       'Header' => 'platform.h',
       'Line' => '585',
       'Memb' => {
@@ -11513,7 +11514,7 @@
       'Size' => '24',
       'Type' => 'Struct'
     },
-    '91123' => {
+    '91144' => {
       'Header' => 'platform.h',
       'Line' => '602',
       'Memb' => {
@@ -11530,26 +11531,26 @@
         '2' => {
           'name' => 'states',
           'offset' => '3',
-          'type' => '91185'
+          'type' => '91206'
         }
       },
       'Name' => 'struct state_sensor_possible_states',
       'Size' => '4',
       'Type' => 'Struct'
     },
-    '91180' => {
-      'BaseType' => '91123',
+    '91201' => {
+      'BaseType' => '91144',
       'Name' => 'struct state_sensor_possible_states const',
       'Size' => '4',
       'Type' => 'Const'
     },
-    '91185' => {
+    '91206' => {
       'BaseType' => '2776',
       'Name' => 'bitfield8_t[1]',
       'Size' => '1',
       'Type' => 'Array'
     },
-    '91201' => {
+    '91222' => {
       'Header' => 'platform.h',
       'Line' => '612',
       'Memb' => {
@@ -11613,7 +11614,7 @@
       'Size' => '26',
       'Type' => 'Struct'
     },
-    '91558' => {
+    '91579' => {
       'Header' => 'platform.h',
       'Line' => '703',
       'Memb' => {
@@ -11625,7 +11626,7 @@
         '1' => {
           'name' => 'value_s8',
           'offset' => '0',
-          'type' => '89005'
+          'type' => '89026'
         },
         '2' => {
           'name' => 'value_u16',
@@ -11635,7 +11636,7 @@
         '3' => {
           'name' => 'value_s16',
           'offset' => '0',
-          'type' => '89017'
+          'type' => '89038'
         },
         '4' => {
           'name' => 'value_u32',
@@ -11645,19 +11646,19 @@
         '5' => {
           'name' => 'value_s32',
           'offset' => '0',
-          'type' => '89029'
+          'type' => '89050'
         },
         '6' => {
           'name' => 'value_f32',
           'offset' => '0',
-          'type' => '89294'
+          'type' => '89315'
         }
       },
       'Name' => 'union union_range_field_format',
       'Size' => '4',
       'Type' => 'Union'
     },
-    '92157' => {
+    '92178' => {
       'Header' => 'platform.h',
       'Line' => '760',
       'Memb' => {
@@ -11669,7 +11670,7 @@
         '1' => {
           'name' => 'value_s8',
           'offset' => '0',
-          'type' => '89005'
+          'type' => '89026'
         },
         '2' => {
           'name' => 'value_u16',
@@ -11679,7 +11680,7 @@
         '3' => {
           'name' => 'value_s16',
           'offset' => '0',
-          'type' => '89017'
+          'type' => '89038'
         },
         '4' => {
           'name' => 'value_u32',
@@ -11689,14 +11690,14 @@
         '5' => {
           'name' => 'value_s32',
           'offset' => '0',
-          'type' => '89029'
+          'type' => '89050'
         }
       },
       'Name' => 'union union_sensor_data_size',
       'Size' => '4',
       'Type' => 'Union'
     },
-    '92170' => {
+    '92191' => {
       'Header' => 'platform.h',
       'Line' => '767',
       'Memb' => {
@@ -11730,7 +11731,7 @@
       'Size' => '12',
       'Type' => 'Struct'
     },
-    '92255' => {
+    '92276' => {
       'Header' => 'platform.h',
       'Line' => '785',
       'Memb' => {
@@ -11749,14 +11750,14 @@
       'Size' => '2',
       'Type' => 'Union'
     },
-    '92289' => {
+    '92310' => {
       'Header' => 'platform.h',
       'Line' => '780',
       'Memb' => {
         '0' => {
           'name' => 'hdr',
           'offset' => '0',
-          'type' => '92170'
+          'type' => '92191'
         },
         '1' => {
           'name' => 'terminus_handle',
@@ -11776,7 +11777,7 @@
         '4' => {
           'name' => 'unnamed0',
           'offset' => '24',
-          'type' => '92255'
+          'type' => '92276'
         },
         '5' => {
           'name' => 'container_id',
@@ -11801,7 +11802,7 @@
         '9' => {
           'name' => 'unit_modifier',
           'offset' => '37',
-          'type' => '89005'
+          'type' => '89026'
         },
         '10' => {
           'name' => 'rate_unit',
@@ -11821,7 +11822,7 @@
         '13' => {
           'name' => 'aux_unit_modifier',
           'offset' => '41',
-          'type' => '89005'
+          'type' => '89026'
         },
         '14' => {
           'name' => 'aux_rate_unit',
@@ -11851,12 +11852,12 @@
         '19' => {
           'name' => 'resolution',
           'offset' => '54',
-          'type' => '89294'
+          'type' => '89315'
         },
         '20' => {
           'name' => 'offset',
           'offset' => '64',
-          'type' => '89294'
+          'type' => '89315'
         },
         '21' => {
           'name' => 'accuracy',
@@ -11876,7 +11877,7 @@
         '24' => {
           'name' => 'hysteresis',
           'offset' => '72',
-          'type' => '92157'
+          'type' => '92178'
         },
         '25' => {
           'name' => 'supported_thresholds',
@@ -11891,22 +11892,22 @@
         '27' => {
           'name' => 'state_transition_interval',
           'offset' => '86',
-          'type' => '89294'
+          'type' => '89315'
         },
         '28' => {
           'name' => 'update_interval',
           'offset' => '96',
-          'type' => '89294'
+          'type' => '89315'
         },
         '29' => {
           'name' => 'max_readable',
           'offset' => '100',
-          'type' => '92157'
+          'type' => '92178'
         },
         '30' => {
           'name' => 'min_readable',
           'offset' => '104',
-          'type' => '92157'
+          'type' => '92178'
         },
         '31' => {
           'name' => 'range_field_format',
@@ -11921,62 +11922,62 @@
         '33' => {
           'name' => 'nominal_value',
           'offset' => '118',
-          'type' => '91558'
+          'type' => '91579'
         },
         '34' => {
           'name' => 'normal_max',
           'offset' => '128',
-          'type' => '91558'
+          'type' => '91579'
         },
         '35' => {
           'name' => 'normal_min',
           'offset' => '132',
-          'type' => '91558'
+          'type' => '91579'
         },
         '36' => {
           'name' => 'warning_high',
           'offset' => '136',
-          'type' => '91558'
+          'type' => '91579'
         },
         '37' => {
           'name' => 'warning_low',
           'offset' => '146',
-          'type' => '91558'
+          'type' => '91579'
         },
         '38' => {
           'name' => 'critical_high',
           'offset' => '150',
-          'type' => '91558'
+          'type' => '91579'
         },
         '39' => {
           'name' => 'critical_low',
           'offset' => '256',
-          'type' => '91558'
+          'type' => '91579'
         },
         '40' => {
           'name' => 'fatal_high',
           'offset' => '260',
-          'type' => '91558'
+          'type' => '91579'
         },
         '41' => {
           'name' => 'fatal_low',
           'offset' => '264',
-          'type' => '91558'
+          'type' => '91579'
         }
       },
       'Name' => 'struct pldm_numeric_sensor_value_pdr',
       'Size' => '112',
       'Type' => 'Struct'
     },
-    '92882' => {
-      'BaseType' => '89916',
+    '92903' => {
+      'BaseType' => '89937',
       'Header' => 'platform.h',
       'Line' => '828',
       'Name' => 'pldm_utf16be',
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '92895' => {
+    '92916' => {
       'Header' => 'platform.h',
       'Line' => '830',
       'Memb' => {
@@ -11988,27 +11989,27 @@
         '1' => {
           'name' => 'name',
           'offset' => '8',
-          'type' => '92937'
+          'type' => '92958'
         }
       },
       'Name' => 'struct pldm_entity_auxiliary_name',
       'Size' => '16',
       'Type' => 'Struct'
     },
-    '92937' => {
-      'BaseType' => '92882',
+    '92958' => {
+      'BaseType' => '92903',
       'Name' => 'pldm_utf16be*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '92942' => {
+    '92963' => {
       'Header' => 'platform.h',
       'Line' => '840',
       'Memb' => {
         '0' => {
           'name' => 'hdr',
           'offset' => '0',
-          'type' => '92170'
+          'type' => '92191'
         },
         '1' => {
           'name' => 'container',
@@ -12028,7 +12029,7 @@
         '4' => {
           'name' => 'names',
           'offset' => '36',
-          'type' => '93056'
+          'type' => '93077'
         },
         '5' => {
           'name' => 'auxiliary_name_data_size',
@@ -12038,26 +12039,26 @@
         '6' => {
           'name' => 'auxiliary_name_data',
           'offset' => '64',
-          'type' => '93061'
+          'type' => '93082'
         }
       },
       'Name' => 'struct pldm_entity_auxiliary_names_pdr',
       'Size' => '40',
       'Type' => 'Struct'
     },
-    '93056' => {
-      'BaseType' => '92895',
+    '93077' => {
+      'BaseType' => '92916',
       'Name' => 'struct pldm_entity_auxiliary_name*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '93061' => {
+    '93082' => {
       'BaseType' => '114',
       'Name' => 'char[]',
       'Size' => '8',
       'Type' => 'Array'
     },
-    '93076' => {
+    '93097' => {
       'Header' => 'platform.h',
       'Line' => '870',
       'Memb' => {
@@ -12074,20 +12075,20 @@
         '2' => {
           'name' => 'states',
           'offset' => '3',
-          'type' => '91185'
+          'type' => '91206'
         }
       },
       'Name' => 'struct state_effecter_possible_states',
       'Size' => '4',
       'Type' => 'Struct'
     },
-    '93133' => {
-      'BaseType' => '93076',
+    '93154' => {
+      'BaseType' => '93097',
       'Name' => 'struct state_effecter_possible_states const',
       'Size' => '4',
       'Type' => 'Const'
     },
-    '93138' => {
+    '93159' => {
       'Header' => 'platform.h',
       'Line' => '918',
       'Memb' => {
@@ -12106,15 +12107,15 @@
       'Size' => '2',
       'Type' => 'Struct'
     },
-    '93181' => {
-      'BaseType' => '93138',
+    '93202' => {
+      'BaseType' => '93159',
       'Header' => 'platform.h',
       'Line' => '921',
       'Name' => 'set_effecter_state_field',
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '93194' => {
+    '93215' => {
       'Header' => 'platform.h',
       'Line' => '927',
       'Memb' => {
@@ -12143,15 +12144,15 @@
       'Size' => '4',
       'Type' => 'Struct'
     },
-    '93265' => {
-      'BaseType' => '93194',
+    '93286' => {
+      'BaseType' => '93215',
       'Header' => 'platform.h',
       'Line' => '935',
       'Name' => 'get_sensor_state_field',
       'Size' => '4',
       'Type' => 'Typedef'
     },
-    '93278' => {
+    '93299' => {
       'Header' => 'platform.h',
       'Line' => '941',
       'Memb' => {
@@ -12175,15 +12176,15 @@
       'Size' => '3',
       'Type' => 'Struct'
     },
-    '93335' => {
-      'BaseType' => '93278',
+    '93356' => {
+      'BaseType' => '93299',
       'Header' => 'platform.h',
       'Line' => '945',
       'Name' => 'get_effecter_state_field',
       'Size' => '3',
       'Type' => 'Typedef'
     },
-    '94064' => {
+    '94085' => {
       'Header' => 'platform.h',
       'Line' => '1090',
       'Memb' => {
@@ -12200,20 +12201,20 @@
         '2' => {
           'name' => 'field',
           'offset' => '2',
-          'type' => '94121'
+          'type' => '94142'
         }
       },
       'Name' => 'struct pldm_get_state_effecter_states_resp',
       'Size' => '26',
       'Type' => 'Struct'
     },
-    '94121' => {
-      'BaseType' => '93335',
+    '94142' => {
+      'BaseType' => '93356',
       'Name' => 'get_effecter_state_field[8]',
       'Size' => '24',
       'Type' => 'Array'
     },
-    '94137' => {
+    '94158' => {
       'Header' => 'platform.h',
       'Line' => '1100',
       'Memb' => {
@@ -12237,7 +12238,7 @@
       'Size' => '4',
       'Type' => 'Struct'
     },
-    '94251' => {
+    '94272' => {
       'Header' => 'platform.h',
       'Line' => '1140',
       'Memb' => {
@@ -12261,7 +12262,7 @@
       'Size' => '8',
       'Type' => 'Struct'
     },
-    '94426' => {
+    '94447' => {
       'Header' => 'platform.h',
       'Line' => '1191',
       'Memb' => {
@@ -12285,133 +12286,133 @@
       'Size' => '3',
       'Type' => 'Struct'
     },
-    '95912' => {
-      'BaseType' => '92942',
+    '95933' => {
+      'BaseType' => '92963',
       'Name' => 'struct pldm_entity_auxiliary_names_pdr*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '104030' => {
-      'BaseType' => '94064',
+    '104051' => {
+      'BaseType' => '94085',
       'Name' => 'struct pldm_get_state_effecter_states_resp*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '160560' => {
+    '160581' => {
       'BaseType' => '13058',
       'Name' => 'size_t*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '162878' => {
-      'BaseType' => '94251',
+    '162899' => {
+      'BaseType' => '94272',
       'Name' => 'struct pldm_message_poll_event*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '164084' => {
-      'BaseType' => '164094',
+    '164105' => {
+      'BaseType' => '164115',
       'Name' => 'uint32_t const*const*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '164089' => {
+    '164110' => {
       'BaseType' => '29985',
       'Name' => 'uint32_t const*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '164094' => {
-      'BaseType' => '164089',
+    '164115' => {
+      'BaseType' => '164110',
       'Name' => 'uint32_t const*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '164099' => {
-      'BaseType' => '94426',
+    '164120' => {
+      'BaseType' => '94447',
       'Name' => 'struct pldm_pdr_repository_chg_event_data*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '228610' => {
-      'BaseType' => '92289',
+    '228631' => {
+      'BaseType' => '92310',
       'Name' => 'struct pldm_numeric_sensor_value_pdr*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '244082' => {
-      'BaseType' => '94137',
+    '244103' => {
+      'BaseType' => '94158',
       'Name' => 'struct pldm_sensor_event_data*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '244087' => {
-      'BaseType' => '244082',
+    '244108' => {
+      'BaseType' => '244103',
       'Name' => 'struct pldm_sensor_event_data*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '247023' => {
-      'BaseType' => '93265',
+    '247044' => {
+      'BaseType' => '93286',
       'Name' => 'get_sensor_state_field*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '260485' => {
-      'BaseType' => '93181',
+    '260506' => {
+      'BaseType' => '93202',
       'Name' => 'set_effecter_state_field*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '261451' => {
-      'BaseType' => '90969',
+    '261472' => {
+      'BaseType' => '90990',
       'Name' => 'struct pldm_state_sensor_pdr*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '261456' => {
-      'BaseType' => '261451',
+    '261477' => {
+      'BaseType' => '261472',
       'Name' => 'struct pldm_state_sensor_pdr*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '261461' => {
-      'BaseType' => '91180',
+    '261482' => {
+      'BaseType' => '91201',
       'Name' => 'struct state_sensor_possible_states const*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '261466' => {
-      'BaseType' => '261461',
+    '261487' => {
+      'BaseType' => '261482',
       'Name' => 'struct state_sensor_possible_states const*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '261855' => {
-      'BaseType' => '91201',
+    '261876' => {
+      'BaseType' => '91222',
       'Name' => 'struct pldm_state_effecter_pdr*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '261860' => {
-      'BaseType' => '261855',
+    '261881' => {
+      'BaseType' => '261876',
       'Name' => 'struct pldm_state_effecter_pdr*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '261865' => {
-      'BaseType' => '93133',
+    '261886' => {
+      'BaseType' => '93154',
       'Name' => 'struct state_effecter_possible_states const*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '261870' => {
-      'BaseType' => '261865',
+    '261891' => {
+      'BaseType' => '261886',
       'Name' => 'struct state_effecter_possible_states const*const',
       'Size' => '8',
       'Type' => 'Const'
     },
-    '268099' => {
+    '268120' => {
       'Line' => '19',
       'Memb' => {
         '0' => {
@@ -12431,13 +12432,13 @@
       'Source' => 'instance-id.c',
       'Type' => 'Struct'
     },
-    '268138' => {
+    '268159' => {
       'Line' => '24',
       'Memb' => {
         '0' => {
           'name' => 'state',
           'offset' => '0',
-          'type' => '268180'
+          'type' => '268201'
         },
         '1' => {
           'name' => 'lock_db_fd',
@@ -12451,31 +12452,31 @@
       'Source' => 'instance-id.c',
       'Type' => 'Struct'
     },
-    '268180' => {
-      'BaseType' => '268099',
+    '268201' => {
+      'BaseType' => '268120',
       'Name' => 'struct pldm_tid_state[256]',
       'Size' => '2048',
       'Type' => 'Array'
     },
-    '268736' => {
-      'BaseType' => '268138',
+    '268757' => {
+      'BaseType' => '268159',
       'Name' => 'struct pldm_instance_db*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '269123' => {
+    '269144' => {
       'BaseType' => '187',
       'Name' => 'pldm_instance_id_t*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '269299' => {
-      'BaseType' => '268736',
+    '269320' => {
+      'BaseType' => '268757',
       'Name' => 'struct pldm_instance_db**',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '270056' => {
+    '270077' => {
       'BaseType' => '121',
       'Header' => 'pldm.h',
       'Line' => '13',
@@ -12483,7 +12484,7 @@
       'Size' => '1',
       'Type' => 'Typedef'
     },
-    '270171' => {
+    '270192' => {
       'BaseType' => '284',
       'Header' => 'pldm.h',
       'Line' => '30',
@@ -12491,13 +12492,13 @@
       'Size' => '4',
       'Type' => 'Typedef'
     },
-    '270189' => {
+    '270210' => {
       'Line' => '25',
       'Memb' => {
         '0' => {
           'name' => 'transport',
           'offset' => '0',
-          'type' => '270262'
+          'type' => '270283'
         },
         '1' => {
           'name' => 'socket',
@@ -12507,12 +12508,12 @@
         '2' => {
           'name' => 'tid_eid_map',
           'offset' => '68',
-          'type' => '273923'
+          'type' => '273944'
         },
         '3' => {
           'name' => 'socket_send_buf',
           'offset' => '768',
-          'type' => '272843'
+          'type' => '272864'
         }
       },
       'Name' => 'struct pldm_transport_mctp_demux',
@@ -12521,19 +12522,19 @@
       'Source' => 'mctp-demux.c',
       'Type' => 'Struct'
     },
-    '270215' => {
-      'BaseType' => '270189',
+    '270236' => {
+      'BaseType' => '270210',
       'Name' => 'struct pldm_transport_mctp_demux*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '270257' => {
-      'BaseType' => '270262',
+    '270278' => {
+      'BaseType' => '270283',
       'Name' => 'struct pldm_transport*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '270262' => {
+    '270283' => {
       'Header' => 'transport.h',
       'Line' => '18',
       'Memb' => {
@@ -12550,17 +12551,17 @@
         '2' => {
           'name' => 'recv',
           'offset' => '22',
-          'type' => '273154'
+          'type' => '273175'
         },
         '3' => {
           'name' => 'send',
           'offset' => '36',
-          'type' => '273195'
+          'type' => '273216'
         },
         '4' => {
           'name' => 'init_pollfd',
           'offset' => '50',
-          'type' => '273275'
+          'type' => '273296'
         }
       },
       'Name' => 'struct pldm_transport',
@@ -12568,19 +12569,19 @@
       'Size' => '40',
       'Type' => 'Struct'
     },
-    '270398' => {
+    '270419' => {
       'BaseType' => '175',
       'Name' => 'pldm_tid_t*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '270501' => {
-      'BaseType' => '270215',
+    '270522' => {
+      'BaseType' => '270236',
       'Name' => 'struct pldm_transport_mctp_demux**',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '272563' => {
+    '272584' => {
       'BaseType' => '46',
       'Header' => 'int-ll64.h',
       'Line' => '21',
@@ -12589,7 +12590,7 @@
       'Size' => '1',
       'Type' => 'Typedef'
     },
-    '272575' => {
+    '272596' => {
       'BaseType' => '53',
       'Header' => 'int-ll64.h',
       'Line' => '24',
@@ -12598,7 +12599,7 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '272843' => {
+    '272864' => {
       'Header' => 'socket.h',
       'Line' => '5',
       'Memb' => {
@@ -12623,14 +12624,14 @@
       'Size' => '12',
       'Type' => 'Struct'
     },
-    '273154' => {
+    '273175' => {
       'Name' => 'pldm_requester_rc_t(*)(struct pldm_transport*, pldm_tid_t*, void**, size_t*)',
       'Param' => {
         '0' => {
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
-          'type' => '270398'
+          'type' => '270419'
         },
         '2' => {
           'type' => '55278'
@@ -12639,15 +12640,15 @@
           'type' => '13058'
         }
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'Size' => '8',
       'Type' => 'FuncPtr'
     },
-    '273195' => {
+    '273216' => {
       'Name' => 'pldm_requester_rc_t(*)(struct pldm_transport*, pldm_tid_t, void const*, size_t)',
       'Param' => {
         '0' => {
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
           'type' => '175'
@@ -12659,17 +12660,17 @@
           'type' => '1145'
         }
       },
-      'Return' => '270171',
+      'Return' => '270192',
       'Size' => '8',
       'Type' => 'FuncPtr'
     },
-    '273220' => {
-      'BaseType' => '273225',
+    '273241' => {
+      'BaseType' => '273246',
       'Name' => 'struct pollfd*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '273225' => {
+    '273246' => {
       'Header' => 'poll.h',
       'Line' => '36',
       'Memb' => {
@@ -12694,21 +12695,21 @@
       'Size' => '8',
       'Type' => 'Struct'
     },
-    '273275' => {
+    '273296' => {
       'Name' => 'int(*)(struct pldm_transport*, struct pollfd*)',
       'Param' => {
         '0' => {
-          'type' => '270257'
+          'type' => '270278'
         },
         '1' => {
-          'type' => '273220'
+          'type' => '273241'
         }
       },
       'Return' => '100',
       'Size' => '8',
       'Type' => 'FuncPtr'
     },
-    '273280' => {
+    '273301' => {
       'BaseType' => '53',
       'Header' => 'socket.h',
       'Line' => '10',
@@ -12717,14 +12718,14 @@
       'Size' => '2',
       'Type' => 'Typedef'
     },
-    '273657' => {
+    '273678' => {
       'Header' => 'mctp.h',
       'Line' => '18',
       'Memb' => {
         '0' => {
           'name' => 's_addr',
           'offset' => '0',
-          'type' => '270056'
+          'type' => '270077'
         }
       },
       'Name' => 'struct mctp_addr',
@@ -12732,19 +12733,19 @@
       'Size' => '1',
       'Type' => 'Struct'
     },
-    '273683' => {
+    '273704' => {
       'Header' => 'mctp.h',
       'Line' => '22',
       'Memb' => {
         '0' => {
           'name' => 'smctp_family',
           'offset' => '0',
-          'type' => '273280'
+          'type' => '273301'
         },
         '1' => {
           'name' => '__smctp_pad0',
           'offset' => '2',
-          'type' => '272575'
+          'type' => '272596'
         },
         '2' => {
           'name' => 'smctp_network',
@@ -12754,22 +12755,22 @@
         '3' => {
           'name' => 'smctp_addr',
           'offset' => '8',
-          'type' => '273657'
+          'type' => '273678'
         },
         '4' => {
           'name' => 'smctp_type',
           'offset' => '9',
-          'type' => '272563'
+          'type' => '272584'
         },
         '5' => {
           'name' => 'smctp_tag',
           'offset' => '16',
-          'type' => '272563'
+          'type' => '272584'
         },
         '6' => {
           'name' => '__smctp_pad1',
           'offset' => '17',
-          'type' => '272563'
+          'type' => '272584'
         }
       },
       'Name' => 'struct sockaddr_mctp',
@@ -12777,19 +12778,19 @@
       'Size' => '12',
       'Type' => 'Struct'
     },
-    '273787' => {
-      'BaseType' => '273683',
+    '273808' => {
+      'BaseType' => '273704',
       'Name' => 'struct sockaddr_mctp const',
       'Size' => '12',
       'Type' => 'Const'
     },
-    '273830' => {
+    '273851' => {
       'Line' => '34',
       'Memb' => {
         '0' => {
           'name' => 'transport',
           'offset' => '0',
-          'type' => '270262'
+          'type' => '270283'
         },
         '1' => {
           'name' => 'socket',
@@ -12799,12 +12800,12 @@
         '2' => {
           'name' => 'tid_eid_map',
           'offset' => '68',
-          'type' => '273923'
+          'type' => '273944'
         },
         '3' => {
           'name' => 'socket_send_buf',
           'offset' => '768',
-          'type' => '272843'
+          'type' => '272864'
         },
         '4' => {
           'name' => 'bound',
@@ -12823,26 +12824,26 @@
       'Source' => 'af-mctp.c',
       'Type' => 'Struct'
     },
-    '273923' => {
+    '273944' => {
       'BaseType' => '175',
       'Name' => 'pldm_tid_t[256]',
       'Size' => '256',
       'Type' => 'Array'
     },
-    '274724' => {
-      'BaseType' => '273830',
+    '274745' => {
+      'BaseType' => '273851',
       'Name' => 'struct pldm_transport_af_mctp*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '274729' => {
-      'BaseType' => '273787',
+    '274750' => {
+      'BaseType' => '273808',
       'Name' => 'struct sockaddr_mctp const*',
       'Size' => '8',
       'Type' => 'Pointer'
     },
-    '275042' => {
-      'BaseType' => '274724',
+    '275063' => {
+      'BaseType' => '274745',
       'Name' => 'struct pldm_transport_af_mctp**',
       'Size' => '8',
       'Type' => 'Pointer'
diff --git a/evolutions/current/pldm_pdr_add_check.yaml b/evolutions/current/pldm_pdr_add_check.yaml
new file mode 100644
index 0000000..67753b4
--- /dev/null
+++ b/evolutions/current/pldm_pdr_add_check.yaml
@@ -0,0 +1,2 @@
+- QualifiedName: pldm_pdr_add_check
+  NewName: pldm_pdr_add
diff --git a/include/libpldm/pdr.h b/include/libpldm/pdr.h
index e829717..a25c07a 100644
--- a/include/libpldm/pdr.h
+++ b/include/libpldm/pdr.h
@@ -76,6 +76,9 @@
  *  @return 0 on success, -EINVAL if the arguments are invalid, -ENOMEM if an internal memory
  *  allocation fails, or -EOVERFLOW if a record handle could not be allocated
  */
+int pldm_pdr_add(pldm_pdr *repo, const uint8_t *data, uint32_t size,
+		 bool is_remote, uint16_t terminus_handle,
+		 uint32_t *record_handle);
 int pldm_pdr_add_check(pldm_pdr *repo, const uint8_t *data, uint32_t size,
 		       bool is_remote, uint16_t terminus_handle,
 		       uint32_t *record_handle);
diff --git a/meson.build b/meson.build
index fff2c0d..dfd1cb2 100644
--- a/meson.build
+++ b/meson.build
@@ -34,6 +34,7 @@
   add_project_arguments('-DLIBPLDM_API_DEPRECATED', language: ['c', 'cpp'])
   libpldm_deprecated_aliases += [
     ['get_fru_record_by_option_check', 'get_fru_record_by_option'],
+    ['pldm_pdr_add_check', 'pldm_pdr_add'],
   ]
 else
   conf.set('LIBPLDM_ABI_DEPRECATED', '')
diff --git a/src/dsp/pdr.c b/src/dsp/pdr.c
index 3f80d6a..ec95468 100644
--- a/src/dsp/pdr.c
+++ b/src/dsp/pdr.c
@@ -42,9 +42,9 @@
 }
 
 LIBPLDM_ABI_STABLE
-int pldm_pdr_add_check(pldm_pdr *repo, const uint8_t *data, uint32_t size,
-		       bool is_remote, uint16_t terminus_handle,
-		       uint32_t *record_handle)
+int pldm_pdr_add(pldm_pdr *repo, const uint8_t *data, uint32_t size,
+		 bool is_remote, uint16_t terminus_handle,
+		 uint32_t *record_handle)
 {
 	uint32_t curr;
 
@@ -312,8 +312,8 @@
 	fru->entity_instance_num = htole16(entity_instance_num);
 	fru->container_id = htole16(container_id);
 
-	return pldm_pdr_add_check(repo, data, size, false, terminus_handle,
-				  bmc_record_handle);
+	return pldm_pdr_add(repo, data, size, false, terminus_handle,
+			    bmc_record_handle);
 }
 
 LIBPLDM_ABI_STABLE
@@ -836,8 +836,8 @@
 		node = node->next_sibling;
 	}
 
-	return pldm_pdr_add_check(repo, pdr, size, is_remote, terminus_handle,
-				  &record_handle);
+	return pldm_pdr_add(repo, pdr, size, is_remote, terminus_handle,
+			    &record_handle);
 }
 
 static int entity_association_pdr_add_entry(pldm_entity_node *curr,
diff --git a/tests/dsp/pdr.cpp b/tests/dsp/pdr.cpp
index a75184f..0894a3f 100644
--- a/tests/dsp/pdr.cpp
+++ b/tests/dsp/pdr.cpp
@@ -24,29 +24,25 @@
 
     std::array<uint8_t, 10> data{};
     uint32_t handle = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle),
+              0);
     EXPECT_EQ(handle, 1u);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), data.size());
 
     handle = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle),
+              0);
     EXPECT_EQ(handle, 2u);
 
     handle = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle),
+              0);
     EXPECT_EQ(handle, 3u);
 
     handle = 0xdeeddeedu;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle),
+              0);
     EXPECT_EQ(handle, 0xdeeddeed);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), data.size() * 4u);
@@ -60,41 +56,32 @@
 
     auto repo = pldm_pdr_init();
 
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_pdrs_by_terminus_handle(repo, 1);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 0u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 2, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 2, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
     pldm_pdr_remove_pdrs_by_terminus_handle(repo, 1);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 2, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 2, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 2, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 2, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
     pldm_pdr_remove_pdrs_by_terminus_handle(repo, 2);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 2, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 2, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
@@ -115,237 +102,165 @@
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 0u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 0u);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 6u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 5u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 5u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 5u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 3u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     pldm_pdr_destroy(repo);
 
     repo = pldm_pdr_init();
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, NULL), 0);
-    EXPECT_EQ(pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, NULL),
-              0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, NULL), 0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, NULL), 0);
     pldm_pdr_remove_remote_pdrs(repo);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 2u);
     uint32_t handle = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle),
+              0);
     EXPECT_EQ(handle, 3u);
     handle = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, &handle),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, &handle),
+              0);
     EXPECT_EQ(handle, 4u);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     pldm_pdr_destroy(repo);
@@ -357,8 +272,8 @@
 
     std::array<uint32_t, 10> in{100, 345, 3, 6, 89, 0, 11, 45, 23434, 123123};
     uint32_t handle = 1;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in.data()),
-                                 sizeof(in), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in.data()),
+                           sizeof(in), false, 1, &handle),
               0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), sizeof(in));
@@ -391,16 +306,16 @@
     std::array<uint32_t, 10> in2{1000, 3450, 30,  60,     890,
                                  0,    110,  450, 234034, 123123};
     handle = 2;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), false, 1, &handle),
               0);
     handle = 3;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), false, 1, &handle),
               0);
     handle = 4;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), true, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), true, 1, &handle),
               0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), sizeof(in2) * 4);
@@ -447,8 +362,8 @@
 
     std::array<uint32_t, 10> in{100, 345, 3, 6, 89, 0, 11, 45, 23434, 123123};
     uint32_t handle = 1;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in.data()),
-                                 sizeof(in), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in.data()),
+                           sizeof(in), false, 1, &handle),
               0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 1u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), sizeof(in));
@@ -465,16 +380,16 @@
     std::array<uint32_t, 10> in2{1000, 3450, 30,  60,     890,
                                  0,    110,  450, 234034, 123123};
     handle = 2;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), false, 1, &handle),
               0);
     handle = 3;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), false, 1, &handle),
               0);
     handle = 4;
-    EXPECT_EQ(pldm_pdr_add_check(repo, reinterpret_cast<uint8_t*>(in2.data()),
-                                 sizeof(in2), false, 1, &handle),
+    EXPECT_EQ(pldm_pdr_add(repo, reinterpret_cast<uint8_t*>(in2.data()),
+                           sizeof(in2), false, 1, &handle),
               0);
     EXPECT_EQ(pldm_pdr_get_record_count(repo), 4u);
     EXPECT_EQ(pldm_pdr_get_repo_size(repo), sizeof(in2) * 4);
@@ -508,24 +423,20 @@
     pldm_pdr_hdr* hdr = reinterpret_cast<pldm_pdr_hdr*>(data.data());
     hdr->type = 1;
     uint32_t first = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &first),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &first),
+              0);
     hdr->type = 2;
     uint32_t second = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &second),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &second),
+              0);
     hdr->type = 3;
     uint32_t third = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &third),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &third),
+              0);
     hdr->type = 4;
     uint32_t fourth = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &fourth),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &fourth),
+              0);
 
     uint8_t* outData = nullptr;
     uint32_t size{};
@@ -690,25 +601,20 @@
 
     std::array<uint8_t, 10> data{};
     uint32_t handle1 = 0;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle1),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle1),
+              0);
     uint32_t handle2 = 23;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle2),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle2),
+              0);
     uint32_t handle3 = 77;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), false, 1, &handle3),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), false, 1, &handle3),
+              0);
     uint32_t handle4 = 16777325;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, &handle4),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, &handle4),
+              0);
     uint32_t handle5 = 16777344;
-    EXPECT_EQ(
-        pldm_pdr_add_check(repo, data.data(), data.size(), true, 1, &handle5),
-        0);
+    EXPECT_EQ(pldm_pdr_add(repo, data.data(), data.size(), true, 1, &handle5),
+              0);
 
     auto rec1 = pldm_pdr_find_last_in_range(repo, 0, 100);
     auto rec2 = pldm_pdr_find_last_in_range(repo, 16777300, 33554431);
