meta/serialize.pm (24 lines): - line 72: # TODO we need version with like snprintf to write only N characters since - line 106: # TODO for lists we need countOnly param, as separate version - line 111: # TODO on s32/s32_list in struct we could declare enum type - line 293: # # TODO object_list check if object is defined - line 743: # TODO if member is struct with extraparam passparam is required - line 765: # TODO add tag "noserialize" - line 880: # TODO each expect should free memory current object recursivly on exit - line 927: # TODO revisit params - line 947: # TODO pointers - line 1181: # TODO in case of failure we need to recursivly free memory that we allocated - line 1195: # TODO add tag "noserialize" - line 1323: # TODO deserialize notifications - line 1336: # TODO we could also generate deserialize and call notifation where - line 1340: # TODO generate notifications metadata, if param is object id then objects must - line 1346: # TODO validate if "validonly" param is not validonly struct/union and in union - line 1349: # TODO support enum_list 32 - on unions and acl capability list force to add - line 1352: # TODO generate deserialize - line 1354: # TODO generate validate - object types and enums, also objecttype in union - line 1358: # TODO generate transfer methods - line 1360: # TODO since we need object type for validation on notification params, then we - line 1364: # TODO generate serialize and deserialize versions with only count - line 1366: # TODO force unions to serialize something + add exception on serialize for - line 1369: # TODO validate if count is not pointer when serializing counts - line 1371: # TODO we could generate serialize methods for all api functions since we have meta/parse.pl (7 lines): - line 648: # TODO stable sort values based on calculated values from initializer (https://perldoc.perl.org/sort) - line 649: # TODO add param to disable this - line 714: # TODO put to SAI_ATTR_ENUMS - line 877: # TODO add callback handling - line 1454: # TODO this is temporary solution, since mask should have it's own attribute type - line 2807: # TODO allow null - line 3849: # TODO we could not pass handle and functions, but load functions internally flexsai/p4/backend/json_stage/control.cpp (5 lines): - line 67: // FIXME: ALAN CUSTOM table key offsets - line 299: // TODO - ALAN Add annotation for hw vs flex tables - line 373: // TODO ALAN table insert custom byte offset and size to table key - line 682: // TODO ALAN - do not hard code UDP payload - line 701: // FIXME - ALAN changes for Sai 2? flexsai/p4/backend/output_stage/P4_api_SAI.py (4 lines): - line 109: isvlan = 1 #TODO check for 2 - line 126: # if op == 'hit_counter': # TODO Counter - line 134: isvlan = 1 # TODO: add check if needs vlan true - line 361: # TODO - take paths in \ out of lib for all paths meta/utils.pm (4 lines): - line 88: my $ident = ""; # TODO tests should have it's own ident, since it's different file GetIdent($content); - line 268: # TODO must support experimental extensions - line 274: # TODO there should be better way to extract those - line 304: # TODO there should be better way to extract those meta/style.pm (3 lines): - line 754: # TODO we should know if type is simple or struct/union - line 766: LogWarning "Not supported param prefixes, FIXME: $header:$n $line"; - line 1227: # TODO we should dedice later whether use <> or "" on all includes to make it consistent meta/saisanitycheck.c (3 lines): - line 1714: * TODO can validonly attribute depend on condition attribute which is not provided? - line 1715: * TODO can validonly depend on other validonly? - line 1983: * KEY in any attribute, this is TODO action to get rid of flexsai/p4/backend/output_stage/P4_compiler.py (3 lines): - line 21: parser.add_argument('-o', '--output_path', help='output dir', nargs='?', default='use_json_path') # TODO remove, p4c support output path, sojson path is output path. - line 57: # TODO: self.app_name = app_name - line 251: # TODO (readability) make dict prio to prevent the below loop flexsai/p4/backend/json_stage/JsonObjects.cpp (2 lines): - line 208: /// FIXME: ALAN find_header_field - line 230: // FIXME - ALAN need to use CB only if this is not a pre-defined extraction meta/saiserializetest.c (2 lines): - line 1403: * TODO we set to zero, since attr serialize is not supported yet, after - line 1736: /* TODO test int/uint serialize/deserialize */ flexsai/p4/backend/json_stage/sai.cpp (2 lines): - line 126: static int py_argc = 8; //TODO find a better way to use this - line 132: // py_argv[4] = (char*) "output"; //TODO: add possibility to change output path(?) ptf/saisanity.py (2 lines): - line 91: #TODO resove the error for fdb entry not equals to init one - line 162: #TODO resove the error for fdb entry not equals to init one meta/saimetadatalogger.h (2 lines): - line 58: * TODO: add a set function to update this? - line 67: * TODO: add a set function to update this? meta/saimetadatatypes.h (2 lines): - line 812: /* TODO extension type? */ - line 1298: * TODO since non object id members can have different type and can be located flexsai/p4/backend/json_stage/expression.cpp (2 lines): - line 232: // TODO: deal with references that return bool - line 364: // TODO: is this case still necessary after eliminating nested structs? ptf/platform_helper/common_sai_helper.py (2 lines): - line 30: #TODO move the common methods from the sai_base_test. - line 52: #TODO confirm the SPEC. Related to RFC9014 and RFC7432 ptf/saiacl.py (1 line): - line 5034: self.aclIPFragmentTest(self.table_stage_egress) # TODO: requires additional verification ptf/saiswitch.py (1 line): - line 2753: # TODO: test requires additional verification flexsai/p4/backend/json_stage/bmv2stf.py (1 line): - line 231: # TODO -- we really need to know the size of the key to make the mask properly, meta/cap.pm (1 line): - line 89: # TODO numbers 0xA and 10 and 0xa should be considered the same vendor id ptf/platform_helper/brcm_sai_helper.py (1 line): - line 123: #TODO confirm the SPEC. Related to RFC9014 and RFC7432 meta/xmlutils.pm (1 line): - line 387: # TODO field type must be enum type or uintX_t flexsai/p4/p4src/example/metadata.p4 (1 line): - line 1: // TODO: add support to costum metadata and change metadata to costum user name ptf/sairif.py (1 line): - line 1561: # TODO: test requires additional verification flexsai/p4/backend/json_stage/header.cpp (1 line): - line 182: // FIXME - ALAN attributes on fields meta/rpc/SAI/RPC/Function/Argument.pm (1 line): - line 94: # TODO: Remove this method inc/saitypes.h (1 line): - line 1532: /* TODO UDF also we need flag for UDF */ meta/gensairpc.pl (1 line): - line 63: # TODO: move some of them to common package (e.g. PREFIX or RETVAL) so that they can be shared ptf/platform_helper/mrvl_sai_helper.py (1 line): - line 126: #TODO confirm the SPEC. Related to RFC9014 and RFC7432 meta/structs.pl (1 line): - line 59: # TODO: union should be treated as hash map, since order don't matter