def test_odd_size(self): fmt = IBA.SMPFormatDirected() drPath = bytes("0" * 65) fmt.initialPath[:len(drPath)] = drPath test = bytearray(fmt.MAD_LENGTH) fmt.pack_into(test) assert (len(test) == 257) fmt2 = IBA.SMPFormatDirected(test) fmt.printer(sys.stdout) fmt.printer(sys.stdout, format="dotted") fmt2.printer(sys.stdout) fmt2.printer(sys.stdout, format="dotted")
def _subn_do(self,payload,path,attributeModifier,method): if isinstance(path,rdma.path.IBDRPath): fmt = IBA.SMPFormatDirected(); fmt.drSLID = path.drSLID; fmt.drDLID = path.drDLID; fmt.initialPath[:len(path.drPath)] = path.drPath; fmt.hopCount = len(path.drPath)-1; else: fmt = IBA.SMPFormat(); fmt.MKey = getattr(path,"MKey",0); return self._doMAD(fmt,payload,path,attributeModifier,method);