CVS commit: src/sys/netcan
Module Name:src Committed By: thorpej Date: Wed Jan 29 05:20:27 UTC 2020 Modified Files: src/sys/netcan: can.c if_canloop.c Log Message: Adopt . To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/sys/netcan/can.c src/sys/netcan/if_canloop.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/can.c diff -u src/sys/netcan/can.c:1.8 src/sys/netcan/can.c:1.9 --- src/sys/netcan/can.c:1.8 Mon Aug 19 03:24:38 2019 +++ src/sys/netcan/can.c Wed Jan 29 05:20:26 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: can.c,v 1.8 2019/08/19 03:24:38 ozaki-r Exp $ */ +/* $NetBSD: can.c,v 1.9 2020/01/29 05:20:26 thorpej Exp $ */ /*- * Copyright (c) 2003, 2017 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: can.c,v 1.8 2019/08/19 03:24:38 ozaki-r Exp $"); +__KERNEL_RCSID(0, "$NetBSD: can.c,v 1.9 2020/01/29 05:20:26 thorpej Exp $"); #include #include @@ -249,7 +249,7 @@ can_output(struct mbuf *m, struct canpcb sotag = m_tag_get(PACKET_TAG_SO, sizeof(struct socket *), PR_NOWAIT); if (sotag == NULL) { - ifp->if_oerrors++; + if_statinc(ifp, if_oerrors); return ENOMEM; } mutex_enter(&canp->canp_mtx); @@ -307,8 +307,7 @@ can_input(struct ifnet *ifp, struct mbuf } else { IF_ENQUEUE(inq, m); IFQ_UNLOCK(inq); - ifp->if_ipackets++; - ifp->if_ibytes += m->m_pkthdr.len; + if_statadd2(ifp, if_ipackets, 1, if_ibytes, m->m_pkthdr.len); schednetisr(NETISR_CAN); } } Index: src/sys/netcan/if_canloop.c diff -u src/sys/netcan/if_canloop.c:1.8 src/sys/netcan/if_canloop.c:1.9 --- src/sys/netcan/if_canloop.c:1.8 Sat Apr 27 08:49:19 2019 +++ src/sys/netcan/if_canloop.c Wed Jan 29 05:20:26 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: if_canloop.c,v 1.8 2019/04/27 08:49:19 pgoyette Exp $ */ +/* $NetBSD: if_canloop.c,v 1.9 2020/01/29 05:20:26 thorpej Exp $ */ /*- * Copyright (c) 2017 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.8 2019/04/27 08:49:19 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.9 2020/01/29 05:20:26 thorpej Exp $"); #ifdef _KERNEL_OPT #include "opt_can.h" @@ -170,8 +170,7 @@ canloop_ifstart(struct ifnet *ifp) can_bpf_mtap(ifp, m, 0); pktlen = m->m_pkthdr.len; - ifp->if_opackets++; - ifp->if_obytes += pktlen; + if_statadd2(ifp, if_opackets, 1, if_obytes, pktlen); #ifdef CAN can_mbuf_tag_clean(m);
CVS commit: src/sys/netcan
Module Name:src Committed By: pgoyette Date: Sat Apr 27 08:49:19 UTC 2019 Modified Files: src/sys/netcan: if_canloop.c Log Message: Semicolon not needed To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/sys/netcan/if_canloop.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/if_canloop.c diff -u src/sys/netcan/if_canloop.c:1.7 src/sys/netcan/if_canloop.c:1.8 --- src/sys/netcan/if_canloop.c:1.7 Sat Apr 27 08:48:31 2019 +++ src/sys/netcan/if_canloop.c Sat Apr 27 08:49:19 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_canloop.c,v 1.7 2019/04/27 08:48:31 pgoyette Exp $ */ +/* $NetBSD: if_canloop.c,v 1.8 2019/04/27 08:49:19 pgoyette Exp $ */ /*- * Copyright (c) 2017 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.7 2019/04/27 08:48:31 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.8 2019/04/27 08:49:19 pgoyette Exp $"); #ifdef _KERNEL_OPT #include "opt_can.h" @@ -222,4 +222,4 @@ canloop_ioctl(struct ifnet *ifp, u_long */ #include "../net/if_module.h" -IF_MODULE(MODULE_CLASS_DRIVER, canloop, NULL); +IF_MODULE(MODULE_CLASS_DRIVER, canloop, NULL)
CVS commit: src/sys/netcan
Module Name:src Committed By: pgoyette Date: Sat Apr 27 08:48:31 UTC 2019 Modified Files: src/sys/netcan: if_canloop.c Log Message: Oooppss - deleted too many chars. Put them back. Should fix the build break. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/netcan/if_canloop.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/if_canloop.c diff -u src/sys/netcan/if_canloop.c:1.6 src/sys/netcan/if_canloop.c:1.7 --- src/sys/netcan/if_canloop.c:1.6 Sat Apr 27 06:18:15 2019 +++ src/sys/netcan/if_canloop.c Sat Apr 27 08:48:31 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_canloop.c,v 1.6 2019/04/27 06:18:15 pgoyette Exp $ */ +/* $NetBSD: if_canloop.c,v 1.7 2019/04/27 08:48:31 pgoyette Exp $ */ /*- * Copyright (c) 2017 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.6 2019/04/27 06:18:15 pgoyette Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_canloop.c,v 1.7 2019/04/27 08:48:31 pgoyette Exp $"); #ifdef _KERNEL_OPT #include "opt_can.h" @@ -222,4 +222,4 @@ canloop_ioctl(struct ifnet *ifp, u_long */ #include "../net/if_module.h" -IF_MODULE(MODULE_CLASS_DRIVER, canloop, NULL +IF_MODULE(MODULE_CLASS_DRIVER, canloop, NULL);
CVS commit: src/sys/netcan
Module Name:src Committed By: bouyer Date: Fri Jun 9 08:21:41 UTC 2017 Modified Files: src/sys/netcan: can_pcb.c Log Message: Refuse to bind to a non-CAN interface. Also release the lock in the error branch. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/netcan/can_pcb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/can_pcb.c diff -u src/sys/netcan/can_pcb.c:1.5 src/sys/netcan/can_pcb.c:1.6 --- src/sys/netcan/can_pcb.c:1.5 Thu Jun 1 02:45:14 2017 +++ src/sys/netcan/can_pcb.c Fri Jun 9 08:21:41 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: can_pcb.c,v 1.5 2017/06/01 02:45:14 chs Exp $ */ +/* $NetBSD: can_pcb.c,v 1.6 2017/06/09 08:21:41 bouyer Exp $ */ /*- * Copyright (c) 2003, 2017 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.5 2017/06/01 02:45:14 chs Exp $"); +__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.6 2017/06/09 08:21:41 bouyer Exp $"); #include #include @@ -127,8 +127,12 @@ can_pcbbind(void *v, struct sockaddr_can mutex_enter(&canp->canp_mtx); if (scan->can_ifindex != 0) { canp->canp_ifp = if_byindex(scan->can_ifindex); - if (canp->canp_ifp == NULL) + if (canp->canp_ifp == NULL || + canp->canp_ifp->if_dlt != DLT_CAN_SOCKETCAN) { + canp->canp_ifp = NULL; + mutex_exit(&canp->canp_mtx); return (EADDRNOTAVAIL); + } soisconnected(canp->canp_socket); } else { canp->canp_ifp = NULL;
CVS commit: src/sys/netcan
Module Name:src Committed By: bouyer Date: Tue May 30 13:33:16 UTC 2017 Modified Files: src/sys/netcan: can_pcb.c Log Message: Forced commit for previous (1.2) rev commit message: don't dereference a NULL pointer in can_setsockaddr() if we didn't bind to an interface. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/netcan/can_pcb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/can_pcb.c diff -u src/sys/netcan/can_pcb.c:1.3 src/sys/netcan/can_pcb.c:1.4 --- src/sys/netcan/can_pcb.c:1.3 Tue May 30 13:30:51 2017 +++ src/sys/netcan/can_pcb.c Tue May 30 13:33:16 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: can_pcb.c,v 1.3 2017/05/30 13:30:51 bouyer Exp $ */ +/* $NetBSD: can_pcb.c,v 1.4 2017/05/30 13:33:16 bouyer Exp $ */ /*- * Copyright (c) 2003, 2017 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.3 2017/05/30 13:30:51 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.4 2017/05/30 13:33:16 bouyer Exp $"); #include #include
CVS commit: src/sys/netcan
Module Name:src Committed By: bouyer Date: Tue May 30 13:30:51 UTC 2017 Modified Files: src/sys/netcan: can.h can_pcb.c Log Message: Needs not To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/netcan/can.h src/sys/netcan/can_pcb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/netcan/can.h diff -u src/sys/netcan/can.h:1.2 src/sys/netcan/can.h:1.3 --- src/sys/netcan/can.h:1.2 Sat May 27 21:02:56 2017 +++ src/sys/netcan/can.h Tue May 30 13:30:51 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: can.h,v 1.2 2017/05/27 21:02:56 bouyer Exp $ */ +/* $NetBSD: can.h,v 1.3 2017/05/30 13:30:51 bouyer Exp $ */ /*- * Copyright (c) 2003, 2017 The NetBSD Foundation, Inc. @@ -33,7 +33,7 @@ #define _NETCAN_CAN_H #include -#include +#include /* Definitions compatible (as much as possible) with socketCAN */ Index: src/sys/netcan/can_pcb.c diff -u src/sys/netcan/can_pcb.c:1.2 src/sys/netcan/can_pcb.c:1.3 --- src/sys/netcan/can_pcb.c:1.2 Sat May 27 21:02:56 2017 +++ src/sys/netcan/can_pcb.c Tue May 30 13:30:51 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: can_pcb.c,v 1.2 2017/05/27 21:02:56 bouyer Exp $ */ +/* $NetBSD: can_pcb.c,v 1.3 2017/05/30 13:30:51 bouyer Exp $ */ /*- * Copyright (c) 2003, 2017 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.2 2017/05/27 21:02:56 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: can_pcb.c,v 1.3 2017/05/30 13:30:51 bouyer Exp $"); #include #include @@ -223,7 +223,10 @@ can_setsockaddr(struct canpcb *canp, str memset(scan, 0, sizeof (*scan)); scan->can_family = AF_CAN; scan->can_len = sizeof(*scan); - scan->can_ifindex = canp->canp_ifp->if_index; + if (canp->canp_ifp) + scan->can_ifindex = canp->canp_ifp->if_index; + else + scan->can_ifindex = 0; mutex_exit(&canp->canp_mtx); }