I think it would be nicer to use a helper func here, so instead of this loop we'd have something like:
AppLayerProbingParserPort *pp_port = PPGetByName(protostr);