std::ostringstream stream;
stream << "perfdhcp";
int num_mac_list_files = 0;
+ int num_subnet_list_files = 0;
struct option long_options[] = {
{"scenario", required_argument, 0, LONG_OPT_SCENARIO},
break;
case 'J':
+ check(num_subnet_list_files >= 1, "only one -J option can be specified");
+ num_subnet_list_files++;
giaddr_list_file_ = std::string(optarg);
loadGiaddr();
break;
break;
case 'M':
- check(num_mac_list_files >= 1, "only -M option can be specified");
+ check(num_mac_list_files >= 1, "only one -M option can be specified");
num_mac_list_files++;
mac_list_file_ = std::string(optarg);
loadMacs();
/// \brief Check if multi subnet mode is enabled
///
- /// \return true if multisubnet mode is enabled.
+ /// \return true if multi subnet mode is enabled.
bool checkMultiSubnet() { return multi_subnet_; }
/// \brief Find if diagnostic flag has been set.
/// mac_list_ vector.
bool decodeMacString(const std::string& line);
- /// \brief Opens the text file containgin list of addresses (one per line).
+ /// \brief Opens the text file containing list of addresses (one per line).
void loadGiaddr();
/// \brief Checks if loaded giaddr from text file are correct,
/// List of MAC addresses loaded from a file.
std::vector<std::vector<uint8_t> > mac_list_;
+ /// Location of a file containing a list of subnet addresses, one per line.
std::string giaddr_list_file_;
+ /// List of validated subnet addresses.
std::vector<std::string> giaddr_list_;
bool multi_subnet_;
Pkt4Ptr msg = createRequestFromAck(ack);
setDefaults4(msg);
+ // Override relay address
+ msg->setGiaddr(ack->getGiaddr());
+
// Add any extra options that user may have specified.
addExtraOpts(msg);
TEST_F(CommandOptionsTest, LoadGiaddrFromFile) {
CommandOptions opt;
- std::string giaddr_list_full_path = getFullPath("giaddr");
+ std::string giaddr_list_full_path = getFullPath("giaddr.txt");
std::ostringstream cmd;
cmd << "perfdhcp -J " << giaddr_list_full_path << " abc";
EXPECT_NO_THROW(process(opt, cmd.str()));
EXTRA_DIST = discover-example.hex request4-example.hex
EXTRA_DIST += solicit-example.hex request6-example.hex
-EXTRA_DIST += mac-list.txt giaddr
+EXTRA_DIST += mac-list.txt giaddr.txt
--- /dev/null
+100.95.0.1
+20.86.12.1
+101.64.4.1
+1.86.0.1
+92.86.238.1