MCPcopy Create free account
hub / github.com/F-Stack/f-stack / ng_l2tp_seq_adjust

Function ng_l2tp_seq_adjust

freebsd/netgraph/ng_l2tp.c:1238–1262  ·  view source on GitHub ↗

* Adjust sequence number state accordingly after reconfiguration. */

Source from the content-addressed store, hash-verified

1236 * Adjust sequence number state accordingly after reconfiguration.
1237 */
1238static int
1239ng_l2tp_seq_adjust(priv_p priv, const struct ng_l2tp_config *conf)
1240{
1241 struct l2tp_seq *const seq = &priv->seq;
1242 u_int16_t new_wmax;
1243
1244 /* If disabling node, reset state sequence number */
1245 if (!conf->enabled) {
1246 ng_l2tp_seq_reset(priv);
1247 return (0);
1248 }
1249
1250 /* Adjust peer's max recv window; it can only increase */
1251 new_wmax = conf->peer_win;
1252 if (new_wmax > L2TP_MAX_XWIN)
1253 new_wmax = L2TP_MAX_XWIN;
1254 if (new_wmax == 0)
1255 return (EINVAL);
1256 if (new_wmax < seq->wmax)
1257 return (EBUSY);
1258 seq->wmax = new_wmax;
1259
1260 /* Done */
1261 return (0);
1262}
1263
1264/*
1265 * Reset sequence number state.

Callers 1

ng_l2tp_rcvmsgFunction · 0.85

Calls 1

ng_l2tp_seq_resetFunction · 0.85

Tested by

no test coverage detected