Marc Kleine-Budde and GitHub
14245b7c79
Merge pull request #627 from SamantazFox/patch-2
...
J1939: Handle localtime_r() failure in TD PG
2026-05-11 10:16:48 +02:00
Marc Kleine-Budde and GitHub
99ab67143a
Merge pull request #625 from marckleinebudde/bcmserver-fix-buffer-overflow
...
bcmserver: fix buffer overflow
2026-03-10 10:58:56 +01:00
Marc Kleine-Budde
a0aeaed234
bcmserver: main(): rxmsg: increase buffer size to hold long network interface names
...
Message-ID: <DM6PR17MB28748DA25E52E1BD3EC593E6937AA@DM6PR17MB2874.namprd17.prod.outlook.com >
2026-03-10 10:46:12 +01:00
Marc Kleine-Budde
3cae8a449b
bcmserver: main(): convert from sprintf() to snprintf() to avoid buffer overflow
...
Message-ID: <DM6PR17MB28748DA25E52E1BD3EC593E6937AA@DM6PR17MB2874.namprd17.prod.outlook.com >
2026-03-10 10:46:11 +01:00
Marc Kleine-Budde and GitHub
44e6eb45e3
Merge pull request #624 from marckleinebudde/canerrsim-fix-buffer-overflow
...
canerrsim: main(): avoid buffer overflow: check length of interface name
2026-03-09 12:27:28 +01:00
Marc Kleine-Budde
9e444073b1
canerrsim: main(): avoid buffer overflow: check length of interface name
...
Closes: https://github.com/linux-can/can-utils/issues/623
2026-03-09 12:23:29 +01:00
Marc Kleine-Budde
9d4f3c82a2
canerrsim: add missing \n at end of error messages
2026-03-09 12:21:33 +01:00
Marc Kleine-Budde
7e8e247b2f
canerrsim: convert from show_custom_format_and_exit() to err_exit()
2026-03-09 12:20:50 +01:00
Marc Kleine-Budde
3fe1c42bbf
canerrsim: err_exit(): add support for printf style formats
2026-03-09 12:18:10 +01:00
Marc Kleine-Budde and GitHub
1520ab5b98
Merge pull request #620 from marckleinebudde/mcp251xfd-fix-strchr
...
mcp251xfd: mcp251xfd_regmap_read(): don't assign return value of `strchr()` to `char *`
2026-03-04 11:38:43 +01:00
Marc Kleine-Budde
aa902ae2af
mcp251xfd: mcp251xfd_regmap_read(): don't assign return value of strchr() to char *
...
The `file_path` of `strchr(file_path, '/')` is a `const char *`. In this
case the `strchr()` in debian experimental returns a `const char *`,
leading to this error message:
```
mcp251xfd/mcp251xfd-regmap.c:75:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
75 | tmp = strchr(file_path, '/');
| ^
```
Fix the error by using the return value from `strchr()` directly in the
`if()`.
Link: https://github.com/linux-can/can-utils/actions/runs/22649777324/job/65679726209?pr=619
2026-03-04 11:35:38 +01:00
Marc Kleine-Budde and GitHub
a0b592178e
Merge pull request #621 from marckleinebudde/remove-mips
...
github-actions: remove mips for now
Closes: https://github.com/linux-can/can-utils/issues/611
2026-03-04 11:34:12 +01:00
Marc Kleine-Budde
4f2fdecfba
github-actions: remove mips for now
...
It's being phased out on Ubuntu rolling release.
2026-03-04 11:30:14 +01:00
Marc Kleine-Budde and GitHub
cbbe4b41ea
Merge pull request #616 from pastalian/cmake-compat
...
cmake: set policy version to 3.10
2026-01-19 09:49:51 +01:00
Marc Kleine-Budde and GitHub
1f038b3cd8
Merge pull request #614 from hartkopp/master
...
canxl extension: use plain union instead of typedef
2025-12-18 19:26:31 +01:00
Marc Kleine-Budde and GitHub
88a0417a6b
Merge pull request #609 from dphipps-qnx/fix_cmsg_types
...
candump: Use SCM_* consts instead of SO_* for cmsg_type
2025-12-05 16:26:30 +01:00
Marc Kleine-Budde and GitHub
e9ea9d1168
Merge pull request #607 from marckleinebudde/cansend-fix-typo
...
cansend: fix typo in CANFD_FDF flag name
2025-11-07 12:55:39 +01:00
Marc Kleine-Budde
2d793d38d2
cansend: fix typo in CANFD_FDF flag name
...
Closes: https://github.com/linux-can/can-utils/issues/606
Fixes: 3e0e6ae3a4 ("cansend: print canfd_frame.flags in help text")
2025-11-07 12:51:19 +01:00
Marc Kleine-Budde and GitHub
340a3b8c92
Merge pull request #605 from marckleinebudde/lib_h-selfcontained
...
lib.h: include linux/can.h
2025-11-07 12:34:08 +01:00
Marc Kleine-Budde and GitHub
8838ce80fc
Merge pull request #604 from marckleinebudde/cansend-canfd-flags
...
cansend: print canfd_frame.flags in help text
2025-11-07 12:33:02 +01:00
Marc Kleine-Budde
d6c57240ed
lib.h: include linux/can.h
...
Make lib.h self contained, so that language servers can parse it without
errors.
2025-11-07 12:30:15 +01:00
Marc Kleine-Budde
3e0e6ae3a4
cansend: print canfd_frame.flags in help text
2025-11-07 12:05:04 +01:00
Marc Kleine-Budde and GitHub
93a7b2dfd3
Merge pull request #596 from inomotech-foss/master
...
Allow more fine-grained control over CMake targets
2025-05-22 10:22:19 +02:00
Marc Kleine-Budde and GitHub
3698814740
Merge pull request #595 from marckleinebudde/can-calc-bittiming-more-data-bitrates
...
can-calc-bit-timing: common_data_bitrates: add some slower bitrates
2025-05-03 15:02:56 +02:00
Marc Kleine-Budde
6ed0f0ea7f
can-calc-bit-timing: common_data_bitrates: add some slower bitrates
...
There are real world use cases for CAN-FD data bitrates below 1
MBit/s. Add some to the common_data_bitrates array.
Link: https://lore.kernel.org/79BCE02A-D4EC-4362-B0D3-3FE76FB17B78@vpprocess.com
2025-05-03 14:53:54 +02:00
Marc Kleine-Budde and GitHub
287469245c
Merge pull request #123 from twasilczyk/slcand-android
...
Don't fail when it wasn't possible to fetch the interface name.
2025-04-06 10:11:38 +02:00
Marc Kleine-Budde and GitHub
7fb81e6779
Merge pull request #593 from yegorich/static-libs
...
CMakeLists.txt: add an option to control shared library creation
2025-03-12 09:27:14 +01:00
Marc Kleine-Budde and GitHub
e2172546aa
Merge pull request #591 from zeljkoavramovic/master
...
README.md : mention new canerrsim tool and add a link to existing J1939 kernel module installation document
2025-03-03 15:47:02 +01:00
Marc Kleine-Budde and GitHub
31a59be02f
Merge pull request #588 from marckleinebudde/makefile-detect-libgps
...
Makefile: rely on pkg-config to detect presence of libgps
2025-03-03 13:24:18 +01:00
Marc Kleine-Budde and GitHub
4d908bd7cf
Merge pull request #590 from marckleinebudde/fix-makefile-into-ci
...
github-actions: fix used compiler
2025-03-03 13:22:57 +01:00
Marc Kleine-Budde
837e2bb343
github-actions: fix used compiler
...
Fixes: 130e0dced2 ("github-actions: compile with gcc and clang using Makefile")
2025-03-03 13:20:50 +01:00
Marc Kleine-Budde
ec16ef97ff
Makefile: rely on pkg-config to detect presence of libgps
...
Link: https://github.com/linux-can/can-utils/commit/71b2aec834e74d57c643e7a6776f21a1448ef17a#commitcomment-153191516
Fixes: 71b2aec ("j1939-vehicle-position-srv: Introduce J1939 and NMEA 2000 Vehicle Position Server")
2025-03-03 13:14:05 +01:00
Marc Kleine-Budde and GitHub
651c8818dd
Merge pull request #589 from marckleinebudde/integrate-makefile-into-ci
...
github-actions: compile with gcc and clang using Makefile
2025-03-03 13:13:02 +01:00
Marc Kleine-Budde
130e0dced2
github-actions: compile with gcc and clang using Makefile
2025-03-03 13:08:26 +01:00
Marc Kleine-Budde and GitHub
ff90f4ec21
Merge pull request #586 from marckleinebudde/fix-typo-update-gitignore
...
Fix typos and update gitignore
2025-03-03 10:24:07 +01:00
Marc Kleine-Budde
e3ee283443
gitignore: ignore new tools if building with Makefile
2025-03-03 10:18:25 +01:00
Marc Kleine-Budde
e8130a3575
treewide: fix typos
2025-03-03 10:18:25 +01:00
Marc Kleine-Budde and GitHub
1250c12a30
Merge pull request #585 from marckleinebudde/fix-makefile
...
Makefile: remove erroneous '\'
2025-03-03 10:14:53 +01:00
Marc Kleine-Budde
9b5b030877
Makefile: remove erroneous '\'
...
This should at least fix the `No rule to make target` error:
```
cc -O2 -Wall -Wno-parentheses -Wsign-compare -I. -Iinclude -DAF_CAN=PF_CAN -DPF_CAN=29 -DSO_RXQ_OVFL=40 -DSCM_TIMESTAMPING_OPT_STATS=54 -DCLOCK_TAI=11 -DSO_TXTIME=61 -DSCM_TXTIME=SO_TXTIME -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -c -o j1939_vehicle_position/j1939_vehicle_position_srv.o j1939_vehicle_position/j1939_vehicle_position_srv.c
j1939_vehicle_position/j1939_vehicle_position_srv.c:7:10: fatal error: gps.h: No such file or directory
7 | #include <gps.h>
| ^~~~~~~
compilation terminated.
make: *** [<builtin>: j1939_vehicle_position/j1939_vehicle_position_srv.o] Error 1
make: *** No rule to make target 'cc', needed by 'j1939-vehicle-position-srv'.
make: *** No rule to make target '-lgps', needed by 'j1939-vehicle-position-srv'.
make: *** No rule to make target '-o', needed by 'j1939-vehicle-position-srv'.
```
Link: https://github.com/linux-can/can-utils/commit/71b2aec834e74d57c643e7a6776f21a1448ef17a#commitcomment-153191516
Fixes: 71b2aec834 ("j1939-vehicle-position-srv: Introduce J1939 and NMEA 2000 Vehicle Position Server")
2025-03-03 10:09:48 +01:00
Marc Kleine-Budde and GitHub
da3914c491
Merge pull request #528 from marckleinebudde/canerrsim
...
canerrsim
2025-03-02 17:19:38 +01:00
Marc Kleine-Budde and GitHub
18b1e7970a
Merge pull request #553 from olerem/j1939_vehicle_position
...
J1939 vehicle position
2025-03-02 17:19:09 +01:00
Marc Kleine-Budde and GitHub
f1cea504a4
Merge pull request #583 from yegorich/typos
...
isobusfs: fix typos
2025-03-02 17:09:17 +01:00
Marc Kleine-Budde and GitHub
900c7e9f6e
Merge pull request #584 from yegorich/fix-switch-case
...
slcand.c: add the missing case colon
2025-03-02 17:08:23 +01:00
Marc Kleine-Budde
e448d542e8
github-actions: install libgps-dev where available
2025-03-01 22:30:29 +01:00
Marc Kleine-Budde and GitHub
a24bff8b08
Merge pull request #582 from yegorich/clangd
...
CMakeLists.txt: enable CMAKE_EXPORT_COMPILE_COMMANDS by default
2025-03-01 16:47:48 +01:00
Marc Kleine-Budde and GitHub
6050aa155d
Merge pull request #581 from yegorich/cmake-linting
...
CMakeLists.txt: remove unneeded spaces
2025-03-01 12:33:50 +01:00
Marc Kleine-Budde and GitHub
4364d655b8
Merge pull request #576 from jengelh/master
...
build: give libisobusfs a version
2025-02-12 16:55:15 +01:00
Marc Kleine-Budde and GitHub
01083a64eb
Merge pull request #573 from hartkopp/canxl-asc-conversion
...
CANXL support for ASC conversion tools
2025-01-24 15:39:01 +01:00
Marc Kleine-Budde and GitHub
0984817438
Merge pull request #571 from marckleinebudde/cangen-canbusload
...
cangen, canbusload: new features
2025-01-22 15:54:06 +01:00
Marc Kleine-Budde and GitHub
fc1f6979c0
Merge pull request #568 from marckleinebudde/j1939
...
can-j1939-install-kernel-module: convert to Unix line endings and remove trailing whitespace
2024-12-11 15:02:35 +01:00
Marc Kleine-Budde
24e0c520b6
can-j1939-install-kernel-module: convert to Unix line endings and remove trailing whitespace
2024-12-11 15:01:58 +01:00
Marc Kleine-Budde and GitHub
06561ac3dc
Merge pull request #566 from marckleinebudde/canfdtest
...
canfdtest: compare_frame: add 0x prefix to indicate hex value
2024-12-11 11:03:12 +01:00
Marc Kleine-Budde
7093a73185
canfdtest: compare_frame: add 0x prefix to indicate hex value
2024-12-11 10:24:33 +01:00
Marc Kleine-Budde and GitHub
6c36d44c83
Merge pull request #555 from marckleinebudde/readme-update-link
...
README: update link to kernel documentation
2024-08-08 14:14:10 +02:00
Marc Kleine-Budde
7260844b73
README: update link to kernel documentation
...
The can.txt is obsolete, move to rendered html instead.
2024-08-08 14:06:59 +02:00
Marc Kleine-Budde and GitHub
95fe6522c6
Merge pull request #548 from marckleinebudde/workflow-debian-experimental
...
github-actions: add debian:experimental
2024-06-20 09:05:12 +02:00
Marc Kleine-Budde
fe514eedf8
github-actions: add debian:experimental
2024-06-20 08:41:48 +02:00
Marc Kleine-Budde and GitHub
4eb72fd39a
Merge pull request #547 from vuquangtrong/master
...
asc2log::get_date check for AM in en_US time format
2024-06-12 08:58:32 +02:00
Marc Kleine-Budde and GitHub
847486083a
Merge pull request #546 from marckleinebudde/activate-Wsign-compare
...
cmake: add -Wsign-compare
2024-06-07 13:22:32 +02:00
Marc Kleine-Budde
f6db81da68
cmake: add -Wsign-compare
2024-06-07 09:58:13 +02:00
Marc Kleine-Budde and GitHub
cf0091c90c
Merge pull request #524 from olerem/j1939-datetime-2024.05.15
...
Add support for the J1939 TimeDate services
2024-06-06 21:29:13 +02:00
Marc Kleine-Budde and GitHub
72d097b2f9
Merge pull request #527 from marckleinebudde/buildsystems-cleanup
...
build-systems: remove autotools and Android.mk
2024-05-29 21:10:26 +02:00
Marc Kleine-Budde
97bfb2960a
build-systems: remove autotools and Android.mk
...
Remove autotools and Android.mk support. This clauses less friction
when adding new tools.
Link: https://github.com/linux-can/can-utils/issues/526
2024-05-29 21:03:17 +02:00
Marc Kleine-Budde
4597b054e2
github-actions: add cross-compiling
2024-05-29 21:03:16 +02:00
Marc Kleine-Budde
bc88e89caf
github-actions: replace autotools by cmake
2024-05-29 21:02:59 +02:00
Marc Kleine-Budde
db2fe6a605
travis.yml: remove
...
Travis is not used anymore.
2024-05-29 14:38:19 +02:00
Marc Kleine-Budde and GitHub
bfcf548f97
Merge pull request #542 from marckleinebudde/fix-compiler-errors
...
Fix compiler errors
2024-05-29 14:37:21 +02:00
Marc Kleine-Budde
1405a90e8b
j1939spy: main(): fix shift-count-overflow error
...
Fix the following error, by converting recvflags into a 64 bit type.
| /home/j1939spy.c: In function 'main':
| /home/j1939spy.c:248:36: error: left shift count >= width of type [-Werror=shift-count-overflow]
| 248 | if (recvflags & (1 << SCM_TIMESTAMP)) {
| | ^~
2024-05-29 14:30:05 +02:00
Marc Kleine-Budde
e0bb44c908
isobusfs_cmn: isobusfs_print_timestamp(): always use 64-bit for time stamp formatting
...
Using C99 `unsigned long long` to format `struct timeval`'s `tv_sec`
and `tv_usec`, fix incorrect print under some 32bit platform which
using time64.
2024-05-29 14:27:34 +02:00
Marc Kleine-Budde and GitHub
c468568f1e
Merge pull request #540 from olerem/isobusfs_cmn_warning
...
isobusfs: address snprintf truncation warning with explicit limits
2024-05-29 11:17:57 +02:00
Marc Kleine-Budde and GitHub
a7ff280c62
Merge pull request #537 from marckleinebudde/bcmserver-fix-warning-better
...
bcmserver: use pragma to silence unknown pragma option
2024-05-28 12:12:17 +02:00
Marc Kleine-Budde
c98e25334b
bcmserver: use pragma to silence unknown pragma option
...
Silence the following warning by switching it of via a pragma.
| bcmserver.c: In function 'main':
| bcmserver.c:159:32: warning: unknown option after '#pragma GCC diagnostic' kind [-Wpragmas]
| 159 | #pragma GCC diagnostic ignored "-Wgnu-variable-sized-type-not-at-end"
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2024-05-28 12:03:15 +02:00
Marc Kleine-Budde and GitHub
c2e40edd24
Merge pull request #517 from marckleinebudde/bcmserver-fix-warning
...
bcmserver: use pragma to silence gnu-variable-sized-type-not-at-end warning
2024-05-28 11:39:43 +02:00
Marc Kleine-Budde and GitHub
f12a59d780
Merge pull request #534 from yegorich/cmake-format
...
CMake: resolve linting issues
2024-05-27 12:26:59 +02:00
Marc Kleine-Budde and GitHub
465ee7c203
Merge pull request #533 from yegorich/editorconfig
...
Add configuration file for EditorConfig
2024-05-26 22:29:27 +02:00
Marc Kleine-Budde
e865e54490
bcmserver: use pragma to silence gnu-variable-sized-type-not-at-end warning
...
Silence the following warning by switching it of via a pragma.
| bcmserver.c:159:23: warning: field 'msg_head' with variable sized
| type 'struct bcm_msg_head' not at the end of a struct or class is a
| GNU extension [-Wgnu-variable-sized-type-not-at-end]
| struct bcm_msg_head msg_head;
| ^
2024-05-26 16:57:25 +02:00
Marc Kleine-Budde
4d16dc867d
bcmserver: remove trailing whitespace
2024-05-26 16:57:25 +02:00
Marc Kleine-Budde and GitHub
6c893e5c4f
Merge pull request #531 from yegorich/ignore-tags
...
Ignore ctags generated tags file
2024-05-26 16:26:08 +02:00
Marc Kleine-Budde and GitHub
7b6daa3aca
Merge pull request #532 from yegorich/cmake-fixes
...
Cmake fixes
2024-05-26 16:23:31 +02:00
Marc Kleine-Budde and GitHub
b76bb3f66c
Merge pull request #530 from olerem/isobusfs-fixes
...
Isobusfs fixes
2024-05-25 19:23:53 +02:00
Marc Kleine-Budde and GitHub
d05810f5fe
Merge pull request #522 from SECloudUNIMORE/pr-usage
...
Refactor the help/usage message for canplayer
2024-05-15 15:26:36 +02:00
Marc Kleine-Budde and GitHub
185c14f464
Merge pull request #519 from marckleinebudde/can-calc-bit-timing-fix-option-parsing
...
can-calc-bit-timing: in case of invalid option exit with error
2024-05-07 15:34:31 +02:00
Marc Kleine-Budde
4a9c00539b
can-calc-bit-timing: in case of invalid option exit with error
...
Link: https://github.com/linux-can/can-utils/issues/518
Reported-by: https://github.com/EnricoMontecaggi
Fixes: f4a9e5b57d ("can-calc-bit-timing.c: Reformat help/usage output to be compatible with help2man.")
2024-05-07 15:21:39 +02:00
Marc Kleine-Budde and GitHub
30a46d72bd
Merge pull request #510 from olerem/clang-fixes
...
isobusfs: fix clang warnings
2024-03-22 11:09:11 +01:00
Marc Kleine-Budde and GitHub
bbd48cb150
Merge pull request #509 from marckleinebudde/mcp251xfd-regmap-fix-compiler-warning
...
mcp251xfd-regmap: do_mcp251xfd_regmap_read(): fix compiler warning in a more straight forward way
2024-03-19 13:05:06 +01:00
Marc Kleine-Budde
95f12594a6
mcp251xfd-regmap: do_mcp251xfd_regmap_read(): fix compiler warning in a more straight forward way
...
Link: https://github.com/linux-can/can-utils/commit/d294cd928c363965e989863be99d30b50bb07d9f#r139957294
Suggested-by: Oliver Hartkopp <socketcan@hartkopp.net >
2024-03-19 13:01:46 +01:00
Marc Kleine-Budde and GitHub
8c94f3f72a
Merge pull request #508 from marckleinebudde/mcp251xfd-regmap-fix-compiler-warning
...
mcp251xfd-regmap: fix compiler warning
2024-03-19 11:45:32 +01:00
Marc Kleine-Budde
d294cd928c
mcp251xfd-regmap: fix compiler warning
...
Fix the following compiler warning:
| mcp251xfd/mcp251xfd-regmap.c:38:4: warning: ignoring return value of function declared with 'warn_unused_result' attribute [-Wunused-result]
| fscanf(reg_file, "%*[^\n]\n");
| ^~~~~~ ~~~~~~~~~~~~~~~~~~~~~
Reported-by: https://github.com/Chaitanya84
Link: https://github.com/linux-can/can-utils/pull/506
2024-03-19 09:30:59 +01:00
Marc Kleine-Budde and GitHub
c6f4cbcaa7
Merge pull request #501 from gyatskov/master
...
Fix musl armv7 build: Include time.h in isobusfs_{cmn_dh,srv_cm}
2024-02-20 11:29:34 +01:00
Marc Kleine-Budde and GitHub
68e0827fad
Merge pull request #500 from marckleinebudde/isobus
...
isobus: clean up build system integration, fix cmake
2024-02-19 10:17:52 +01:00
Marc Kleine-Budde
50e3d46b8b
cmake: fix build of isobusfs tools
...
Reported-by: https://github.com/pschichtel
Link: https://github.com/linux-can/can-utils/issues/497
Fixes: 42edaeaf52 ("Implement ISOBUS File Server (FS) Interface as a Personal Project")
2024-02-19 09:45:30 +01:00
Marc Kleine-Budde and GitHub
53ea0d0218
Merge pull request #499 from marckleinebudde/cleanups
...
Cleanups
2024-02-19 09:44:58 +01:00
Marc Kleine-Budde
d4712c6c55
GNUmakefile: isobus: include scripts in tarball
...
Fixes: 42edaeaf52 ("Implement ISOBUS File Server (FS) Interface as a Personal Project")
2024-02-19 09:44:32 +01:00
Marc Kleine-Budde
8bdcccf1a1
GNumakefile: isobus: don't link against libj1939
...
Fixes: 42edaeaf52 ("Implement ISOBUS File Server (FS) Interface as a Personal Project")
2024-02-19 09:44:32 +01:00
Marc Kleine-Budde
eb0e0a30d4
makefile: isobus: remove dependencies to libj1939.h
...
Fixes: 42edaeaf52 ("Implement ISOBUS File Server (FS) Interface as a Personal Project")
2024-02-19 09:44:32 +01:00
Marc Kleine-Budde
f5670b41d9
makefile: isobus: don't link against libj1939
2024-02-19 09:44:32 +01:00
Marc Kleine-Budde
9e57777ecd
gitignore: ignore isobusfs dirstamp
...
Fixes: 42edaeaf52 ("Implement ISOBUS File Server (FS) Interface as a Personal Project")
2024-02-19 09:39:39 +01:00
Marc Kleine-Budde
f5ba001bc9
gitignore: sort alphabetically
...
Fixes: 9c38c16437 ("can-calc-bit-timing: move into subdir")
2024-02-19 09:39:21 +01:00
Marc Kleine-Budde
e4ba924b21
slcanpty: print_usage(): factor out help text into separate function
...
...and use single fprintf() call only.
2024-02-19 08:46:31 +01:00
Marc Kleine-Budde
7683efab41
slcanpty: convert towards kernel coding style
2024-02-19 08:45:55 +01:00