Skip to content

Commit

Permalink
add 'random-mac' option for injector
Browse files Browse the repository at this point in the history
  • Loading branch information
jiangzp committed Sep 17, 2022
1 parent 1ff1600 commit 473d9bc
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
10 changes: 9 additions & 1 deletion plugin-echoprobe/EchoProbeInitiator.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -276,11 +276,19 @@ std::shared_ptr<PicoScenesFrameBuilder> EchoProbeInitiator::buildBasicFrame(uint
fp->addExtraInfo();
}

fp->setSourceAddress(PicoScenesFrameBuilder::magicIntel123456.data());
auto sourceAddr = nic->getFrontEnd()->getMacAddressPhy();
if (parameters.randomMAC) {
sourceAddr[0] = SystemTools::Math::uniformRandomNumberWithinRange<uint8_t>(0, UINT8_MAX);
sourceAddr[1] = SystemTools::Math::uniformRandomNumberWithinRange<uint8_t>(0, UINT8_MAX);
}
fp->setSourceAddress(sourceAddr.data());
fp->setDestinationAddress(PicoScenesFrameBuilder::magicIntel123456.data());
fp->set3rdAddress(nic->getFrontEnd()->getMacAddressPhy().data());

if (parameters.inj_for_intel5300.value_or(false)) {
fp->setSourceAddress(PicoScenesFrameBuilder::magicIntel123456.data());
fp->setDestinationAddress(PicoScenesFrameBuilder::magicIntel123456.data());
fp->set3rdAddress(nic->getFrontEnd()->getMacAddressPhy().data());
fp->setForceSounding(false);
fp->setChannelCoding(ChannelCodingEnum::BCC); // IWL5300 doesn't support LDPC coding.
}
Expand Down
1 change: 1 addition & 0 deletions plugin-echoprobe/EchoProbePlugin.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ void EchoProbePlugin::initialization() {
echoProbeOptions = std::make_shared<po::options_description>("Echo Probe Options");
echoProbeOptions->add_options()
("mode", po::value<std::string>(), "Working mode [injector, logger, initiator, responder]")
("random-mac", po::value<bool>()->default_value(false), "Random MAC address for Injector or Initiator")
("output", po::value<std::string>(), "Output CSI file name w/o .csi extension");
echoProbeOptions->add(*injectionOptions).add(*echoOptions);
}
Expand Down

0 comments on commit 473d9bc

Please sign in to comment.