Commit 580e01b5 authored by Jan Moskyto Matejka's avatar Jan Moskyto Matejka
Browse files

Flowspec: portability fixes in action formatting

parent ea8bf6d8
Loading
Loading
Loading
Loading
+9 −11
Original line number Diff line number Diff line
@@ -83,16 +83,14 @@ flow_type_str(enum flow_type type, int ipv6)
const char *
flow_action_str(uint action)
{
#define C(c, s) case c: return s
  switch(action) {
    C(FLOW_ACTION_TRAFFIC_BYTERATE, "byterate");
    C(FLOW_ACTION_TRAFFIC_ACTION, "action");
    C(FLOW_ACTION_REDIRECT_AS2, "redirect");
    C(FLOW_ACTION_REDIRECT_AS4, "redirect");
    C(FLOW_ACTION_REDIRECT_IP4, "redirect");
    C(FLOW_ACTION_TRAFFIC_MARKING, "mark");
  }
#undef C
    case FLOW_ACTION_TRAFFIC_BYTERATE: return "byterate";
    case FLOW_ACTION_TRAFFIC_ACTION: return "action";
    case FLOW_ACTION_REDIRECT_AS2: return "redirect";
    case FLOW_ACTION_REDIRECT_AS4: return "redirect";
    case FLOW_ACTION_REDIRECT_IP4: return "redirect";
    case FLOW_ACTION_TRAFFIC_MARKING: return "mark";
  }
  return NULL;
}

@@ -1265,11 +1263,11 @@ flow_action_format_part(char *buf, uint blen, u64 ec)
	return total;
      }
    case FLOW_ACTION_REDIRECT_AS2:
      return bsnprintf(buf, blen, "rt %d,%d;", ((ec >> 32) & 0xffff), (ec & 0xffffffff));
      return bsnprintf(buf, blen, "rt %lu,%lu;", ((ec >> 32) & 0xffff), (ec & 0xffffffff));
    case FLOW_ACTION_REDIRECT_AS4:
      return bsnprintf(buf, blen, "rt %d,%d;", ((ec >> 16) & 0xffffffff), (ec & 0xffff));
      return bsnprintf(buf, blen, "rt %lu,%lu;", ((ec >> 16) & 0xffffffff), (ec & 0xffff));
    case FLOW_ACTION_TRAFFIC_MARKING:
      return bsnprintf(buf, blen, "dscp %d;", (ec & 0x3f));
      return bsnprintf(buf, blen, "dscp %lu;", (ec & 0x3f));
    default:
      return 0;
  }
+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ int bvsnprintf(char *buf, int size, const char *fmt, va_list args)
	char ipbuf[NET_MAX_TEXT_LENGTH+1];
	struct iface *iface;
	const char *percent;
	char fmtbuf[strlen(fmt)];
	char fmtbuf[13];

	int flags;		/* flags to number() */