[P4-dev] P4 variable fields

Andy Fingerhut andy.fingerhut at gmail.com
Tue Jul 18 10:57:45 EDT 2017


The only ways I know of in P4 programs to fill in the values of
variable-length fields of headers is to extract() them from a packet being
parsed.  From there, they can be copied (without any modifications) to
other instances of the same type of header, by copy_header() in P4_14, or
in P4_16 simply assigning the value of one header to another of the same
type.

I believe it would be nice if P4_16 were extended to include ways to copy
parts of varbit fields and copy them into fixed-width fields/variables, or
vice versa, and I have suggested such a language addition on this Github
issue: https://github.com/p4lang/p4-spec/issues/264   It will probably be
some time before significant-sized changes will be made to the P4_16 spec,
and there is no consensus yet on whether such a change is of interest to a
wider audience.

Andy

On Tue, Jul 18, 2017 at 6:07 AM, shubham bhardwaj <
bhardwajshubham2011 at gmail.com> wrote:

> Dear All,
>
> I am working on a case where a single field in a header can vary in
> length. In that case, is it possible to initialize it using variable fields.
>
> --
> Thanks & Regards
> Shubham Bhardwaj
> *Technical University of Darmstadt*
> +49 17643686394 <+49%20176%2043686394>
>
> _______________________________________________
> P4-dev mailing list
> P4-dev at lists.p4.org
> http://lists.p4.org/mailman/listinfo/p4-dev_lists.p4.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.p4.org/pipermail/p4-dev_lists.p4.org/attachments/20170718/5e4df4e0/attachment-0002.html>


More information about the P4-dev mailing list