On Tue, Nov 06, 2018 at 11:01:37PM -0800, Ayaka Koshibe wrote:
> Hi all,
>
> Currently, switchd(8) defaults to listening on port 6633, which was
> the defacto port value used by OpenFlow. A decent chunk of OpenFlow
> controllers have switched over to the IANA standardized OpenFlow port,
> 6653. While testing the change, I noticed that switchd(8) will listen on
> random ports if one isn't specified in switchd.conf(5), e.g:
>
> listen on 127.0.0.1
>
> The following consolidates the #defines for port values, and also sets a
> default listen port when it isn't specified in switchd.conf(5).
>
> Comments/OKs?
>
OK claudio@
> Thanks,
> Ayaka
>
> Index: parse.y
> ===================================================================
> RCS file: /cvs/src/usr.sbin/switchd/parse.y,v
> retrieving revision 1.12
> diff -u -p -u -r1.12 parse.y
> --- parse.y 1 Nov 2018 00:18:44 -0000 1.12
> +++ parse.y 7 Nov 2018 06:35:03 -0000
> @@ -146,6 +146,8 @@ listen : LISTEN ON STRING opttls port {
> YYERROR;
> }
> free($3);
> + ((struct sockaddr_in *)&conf->sc_server.srv_addr)
> + ->sin_port = htons(SWITCHD_CTLR_PORT);
> }
> ;
>
> @@ -627,7 +629,7 @@ parse_config(const char *filename, struc
>
> conf = sc;
>
> - /* Set the default 0.0.0.0 6633/tcp */
> + /* Set the default 0.0.0.0 6653/tcp */
> memset(&conf->sc_server.srv_addr, 0, sizeof(conf->sc_server.srv_addr));
> sin4 = (struct sockaddr_in *)&conf->sc_server.srv_addr;
> sin4->sin_family = AF_INET;
> Index: types.h
> ===================================================================
> RCS file: /cvs/src/usr.sbin/switchd/types.h,v
> retrieving revision 1.10
> diff -u -p -u -r1.10 types.h
> --- types.h 18 Nov 2016 16:49:35 -0000 1.10
> +++ types.h 7 Nov 2018 06:35:03 -0000
> @@ -37,8 +37,7 @@
> #define SWITCHD_MAX_TAP 256
> #define SWITCHD_MAX_SESSIONS 0xffff
>
> -#define SWITCHD_CTLR_PORT 6633 /* Previously used by OpenFlow */
> -#define SWITCHD_CTLR_IANA_PORT 6653 /* Assigned by IANA for
> OpenFlow */
> +#define SWITCHD_CTLR_PORT 6653 /* Assigned by IANA for OpenFlow */
>
> #define SWITCHD_CACHE_MAX 4096 /* Default MAC address cache limit */
> #define SWITCHD_CACHE_TIMEOUT 240 /* t/o in seconds for learned
> MACs */
>
--
:wq Claudio