This commit is contained in:
huoji
2023-05-07 22:49:11 +08:00
parent e8a3b9fa98
commit b00e51fdc7
38 changed files with 860 additions and 954 deletions

View File

@@ -2,4 +2,4 @@ cmake_minimum_required(VERSION 3.10)
project(safe_duck)
add_executable(safe_duck safe_duck.cpp)
add_executable(safe_duck safe_duck.cpp msg.cpp tools.cpp global.cpp)

View File

@@ -4,7 +4,8 @@
# 设定变量
MODULE_NAME=safe_duck
TARGET_DIR="/run/user/1000/gvfs/smb-share:server=192.168.1.2,share=dev_share"
cmake build;
cd build;
# 编译模块
if make; then
@@ -24,3 +25,4 @@ else
echo "Failed to build ${MODULE_NAME}"
fi
make clean

View File

@@ -81,12 +81,12 @@ clean: CMakeFiles/safe_duck.dir/clean
CMakeFiles/safe_duck.dir/all:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/depend
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/build
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=1,2 "Built target safe_duck"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=1,2,3,4,5 "Built target safe_duck"
.PHONY : CMakeFiles/safe_duck.dir/all
# Build rule for subdir invocation for target.
CMakeFiles/safe_duck.dir/rule: cmake_check_build_system
$(CMAKE_COMMAND) -E cmake_progress_start /home/duck/project/linux_service/build/CMakeFiles 2
$(CMAKE_COMMAND) -E cmake_progress_start /home/duck/project/linux_service/build/CMakeFiles 5
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/safe_duck.dir/all
$(CMAKE_COMMAND) -E cmake_progress_start /home/duck/project/linux_service/build/CMakeFiles 0
.PHONY : CMakeFiles/safe_duck.dir/rule

View File

@@ -1 +1 @@
2
5

View File

@@ -8,7 +8,10 @@ set(CMAKE_DEPENDS_LANGUAGES
# The set of dependency files which are needed:
set(CMAKE_DEPENDS_DEPENDENCY_FILES
"/home/duck/project/linux_service/global.cpp" "CMakeFiles/safe_duck.dir/global.cpp.o" "gcc" "CMakeFiles/safe_duck.dir/global.cpp.o.d"
"/home/duck/project/linux_service/msg.cpp" "CMakeFiles/safe_duck.dir/msg.cpp.o" "gcc" "CMakeFiles/safe_duck.dir/msg.cpp.o.d"
"/home/duck/project/linux_service/safe_duck.cpp" "CMakeFiles/safe_duck.dir/safe_duck.cpp.o" "gcc" "CMakeFiles/safe_duck.dir/safe_duck.cpp.o.d"
"/home/duck/project/linux_service/tools.cpp" "CMakeFiles/safe_duck.dir/tools.cpp.o" "gcc" "CMakeFiles/safe_duck.dir/tools.cpp.o.d"
)
# Targets to which this target links.

View File

@@ -83,17 +83,65 @@ CMakeFiles/safe_duck.dir/safe_duck.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/safe_duck.dir/safe_duck.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duck/project/linux_service/safe_duck.cpp -o CMakeFiles/safe_duck.dir/safe_duck.cpp.s
CMakeFiles/safe_duck.dir/msg.cpp.o: CMakeFiles/safe_duck.dir/flags.make
CMakeFiles/safe_duck.dir/msg.cpp.o: ../msg.cpp
CMakeFiles/safe_duck.dir/msg.cpp.o: CMakeFiles/safe_duck.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/safe_duck.dir/msg.cpp.o"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/safe_duck.dir/msg.cpp.o -MF CMakeFiles/safe_duck.dir/msg.cpp.o.d -o CMakeFiles/safe_duck.dir/msg.cpp.o -c /home/duck/project/linux_service/msg.cpp
CMakeFiles/safe_duck.dir/msg.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/safe_duck.dir/msg.cpp.i"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duck/project/linux_service/msg.cpp > CMakeFiles/safe_duck.dir/msg.cpp.i
CMakeFiles/safe_duck.dir/msg.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/safe_duck.dir/msg.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duck/project/linux_service/msg.cpp -o CMakeFiles/safe_duck.dir/msg.cpp.s
CMakeFiles/safe_duck.dir/tools.cpp.o: CMakeFiles/safe_duck.dir/flags.make
CMakeFiles/safe_duck.dir/tools.cpp.o: ../tools.cpp
CMakeFiles/safe_duck.dir/tools.cpp.o: CMakeFiles/safe_duck.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/safe_duck.dir/tools.cpp.o"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/safe_duck.dir/tools.cpp.o -MF CMakeFiles/safe_duck.dir/tools.cpp.o.d -o CMakeFiles/safe_duck.dir/tools.cpp.o -c /home/duck/project/linux_service/tools.cpp
CMakeFiles/safe_duck.dir/tools.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/safe_duck.dir/tools.cpp.i"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duck/project/linux_service/tools.cpp > CMakeFiles/safe_duck.dir/tools.cpp.i
CMakeFiles/safe_duck.dir/tools.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/safe_duck.dir/tools.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duck/project/linux_service/tools.cpp -o CMakeFiles/safe_duck.dir/tools.cpp.s
CMakeFiles/safe_duck.dir/global.cpp.o: CMakeFiles/safe_duck.dir/flags.make
CMakeFiles/safe_duck.dir/global.cpp.o: ../global.cpp
CMakeFiles/safe_duck.dir/global.cpp.o: CMakeFiles/safe_duck.dir/compiler_depend.ts
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building CXX object CMakeFiles/safe_duck.dir/global.cpp.o"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/safe_duck.dir/global.cpp.o -MF CMakeFiles/safe_duck.dir/global.cpp.o.d -o CMakeFiles/safe_duck.dir/global.cpp.o -c /home/duck/project/linux_service/global.cpp
CMakeFiles/safe_duck.dir/global.cpp.i: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/safe_duck.dir/global.cpp.i"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/duck/project/linux_service/global.cpp > CMakeFiles/safe_duck.dir/global.cpp.i
CMakeFiles/safe_duck.dir/global.cpp.s: cmake_force
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/safe_duck.dir/global.cpp.s"
/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/duck/project/linux_service/global.cpp -o CMakeFiles/safe_duck.dir/global.cpp.s
# Object files for target safe_duck
safe_duck_OBJECTS = \
"CMakeFiles/safe_duck.dir/safe_duck.cpp.o"
"CMakeFiles/safe_duck.dir/safe_duck.cpp.o" \
"CMakeFiles/safe_duck.dir/msg.cpp.o" \
"CMakeFiles/safe_duck.dir/tools.cpp.o" \
"CMakeFiles/safe_duck.dir/global.cpp.o"
# External object files for target safe_duck
safe_duck_EXTERNAL_OBJECTS =
safe_duck: CMakeFiles/safe_duck.dir/safe_duck.cpp.o
safe_duck: CMakeFiles/safe_duck.dir/msg.cpp.o
safe_duck: CMakeFiles/safe_duck.dir/tools.cpp.o
safe_duck: CMakeFiles/safe_duck.dir/global.cpp.o
safe_duck: CMakeFiles/safe_duck.dir/build.make
safe_duck: CMakeFiles/safe_duck.dir/link.txt
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX executable safe_duck"
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/duck/project/linux_service/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Linking CXX executable safe_duck"
$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/safe_duck.dir/link.txt --verbose=$(VERBOSE)
# Rule to build all files generated by this target.

View File

@@ -1,6 +1,12 @@
file(REMOVE_RECURSE
"CMakeFiles/safe_duck.dir/global.cpp.o"
"CMakeFiles/safe_duck.dir/global.cpp.o.d"
"CMakeFiles/safe_duck.dir/msg.cpp.o"
"CMakeFiles/safe_duck.dir/msg.cpp.o.d"
"CMakeFiles/safe_duck.dir/safe_duck.cpp.o"
"CMakeFiles/safe_duck.dir/safe_duck.cpp.o.d"
"CMakeFiles/safe_duck.dir/tools.cpp.o"
"CMakeFiles/safe_duck.dir/tools.cpp.o.d"
"safe_duck"
"safe_duck.pdb"
)

View File

@@ -1,175 +0,0 @@
# CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 3.22
CMakeFiles/safe_duck.dir/safe_duck.cpp.o
/home/duck/project/linux_service/safe_duck.cpp
/usr/include/stdc-predef.h
/usr/include/fcntl.h
/usr/include/features.h
/usr/include/features-time64.h
/usr/include/x86_64-linux-gnu/bits/wordsize.h
/usr/include/x86_64-linux-gnu/bits/timesize.h
/usr/include/x86_64-linux-gnu/sys/cdefs.h
/usr/include/x86_64-linux-gnu/bits/long-double.h
/usr/include/x86_64-linux-gnu/gnu/stubs.h
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/x86_64-linux-gnu/bits/typesizes.h
/usr/include/x86_64-linux-gnu/bits/time64.h
/usr/include/x86_64-linux-gnu/bits/fcntl.h
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h
/usr/include/linux/falloc.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h
/usr/include/x86_64-linux-gnu/bits/endian.h
/usr/include/x86_64-linux-gnu/bits/endianness.h
/usr/include/x86_64-linux-gnu/bits/types/time_t.h
/usr/include/x86_64-linux-gnu/bits/stat.h
/usr/include/x86_64-linux-gnu/bits/struct_stat.h
/usr/include/poll.h
/usr/include/x86_64-linux-gnu/sys/poll.h
/usr/include/x86_64-linux-gnu/bits/poll.h
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h
/usr/include/stdio.h
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h
/usr/include/x86_64-linux-gnu/bits/types/FILE.h
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h
/usr/include/x86_64-linux-gnu/bits/floatn.h
/usr/include/x86_64-linux-gnu/bits/floatn-common.h
/usr/include/c++/11/stdlib.h
/usr/include/c++/11/cstdlib
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h
/usr/include/x86_64-linux-gnu/c++/11/bits/os_defines.h
/usr/include/x86_64-linux-gnu/c++/11/bits/cpu_defines.h
/usr/include/c++/11/pstl/pstl_config.h
/usr/include/stdlib.h
/usr/include/x86_64-linux-gnu/bits/waitflags.h
/usr/include/x86_64-linux-gnu/bits/waitstatus.h
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h
/usr/include/x86_64-linux-gnu/sys/types.h
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h
/usr/include/endian.h
/usr/include/x86_64-linux-gnu/bits/byteswap.h
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h
/usr/include/x86_64-linux-gnu/sys/select.h
/usr/include/x86_64-linux-gnu/bits/select.h
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h
/usr/include/alloca.h
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h
/usr/include/c++/11/bits/std_abs.h
/usr/include/c++/11/string
/usr/include/c++/11/bits/stringfwd.h
/usr/include/c++/11/bits/memoryfwd.h
/usr/include/c++/11/bits/char_traits.h
/usr/include/c++/11/bits/stl_algobase.h
/usr/include/c++/11/bits/functexcept.h
/usr/include/c++/11/bits/exception_defines.h
/usr/include/c++/11/bits/cpp_type_traits.h
/usr/include/c++/11/ext/type_traits.h
/usr/include/c++/11/ext/numeric_traits.h
/usr/include/c++/11/bits/stl_pair.h
/usr/include/c++/11/bits/move.h
/usr/include/c++/11/type_traits
/usr/include/c++/11/bits/stl_iterator_base_types.h
/usr/include/c++/11/bits/stl_iterator_base_funcs.h
/usr/include/c++/11/bits/concept_check.h
/usr/include/c++/11/debug/assertions.h
/usr/include/c++/11/bits/stl_iterator.h
/usr/include/c++/11/bits/ptr_traits.h
/usr/include/c++/11/debug/debug.h
/usr/include/c++/11/bits/predefined_ops.h
/usr/include/c++/11/bits/postypes.h
/usr/include/c++/11/cwchar
/usr/include/wchar.h
/usr/include/x86_64-linux-gnu/bits/wchar.h
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h
/usr/include/c++/11/cstdint
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h
/usr/include/stdint.h
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h
/usr/include/c++/11/bits/allocator.h
/usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h
/usr/include/c++/11/ext/new_allocator.h
/usr/include/c++/11/new
/usr/include/c++/11/bits/exception.h
/usr/include/c++/11/bits/localefwd.h
/usr/include/x86_64-linux-gnu/c++/11/bits/c++locale.h
/usr/include/c++/11/clocale
/usr/include/locale.h
/usr/include/x86_64-linux-gnu/bits/locale.h
/usr/include/c++/11/iosfwd
/usr/include/c++/11/cctype
/usr/include/ctype.h
/usr/include/c++/11/bits/ostream_insert.h
/usr/include/c++/11/bits/cxxabi_forced.h
/usr/include/c++/11/bits/stl_function.h
/usr/include/c++/11/backward/binders.h
/usr/include/c++/11/bits/range_access.h
/usr/include/c++/11/initializer_list
/usr/include/c++/11/bits/basic_string.h
/usr/include/c++/11/ext/atomicity.h
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr.h
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h
/usr/include/pthread.h
/usr/include/sched.h
/usr/include/x86_64-linux-gnu/bits/sched.h
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h
/usr/include/x86_64-linux-gnu/bits/cpu-set.h
/usr/include/time.h
/usr/include/x86_64-linux-gnu/bits/time.h
/usr/include/x86_64-linux-gnu/bits/timex.h
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h
/usr/include/x86_64-linux-gnu/bits/setjmp.h
/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h
/usr/include/x86_64-linux-gnu/c++/11/bits/atomic_word.h
/usr/include/x86_64-linux-gnu/sys/single_threaded.h
/usr/include/c++/11/ext/alloc_traits.h
/usr/include/c++/11/bits/alloc_traits.h
/usr/include/c++/11/bits/stl_construct.h
/usr/include/c++/11/string_view
/usr/include/c++/11/bits/functional_hash.h
/usr/include/c++/11/bits/hash_bytes.h
/usr/include/c++/11/bits/string_view.tcc
/usr/include/c++/11/ext/string_conversions.h
/usr/include/c++/11/cstdio
/usr/include/c++/11/cerrno
/usr/include/errno.h
/usr/include/x86_64-linux-gnu/bits/errno.h
/usr/include/linux/errno.h
/usr/include/x86_64-linux-gnu/asm/errno.h
/usr/include/asm-generic/errno.h
/usr/include/asm-generic/errno-base.h
/usr/include/x86_64-linux-gnu/bits/types/error_t.h
/usr/include/c++/11/bits/charconv.h
/usr/include/c++/11/bits/basic_string.tcc
/usr/include/unistd.h
/usr/include/x86_64-linux-gnu/bits/posix_opt.h
/usr/include/x86_64-linux-gnu/bits/environments.h
/usr/include/x86_64-linux-gnu/bits/confname.h
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h
/usr/include/x86_64-linux-gnu/bits/getopt_core.h
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h
/usr/include/linux/close_range.h

View File

@@ -1,514 +1,2 @@
# CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 3.22
CMakeFiles/safe_duck.dir/safe_duck.cpp.o: ../safe_duck.cpp \
/usr/include/stdc-predef.h \
/usr/include/fcntl.h \
/usr/include/features.h \
/usr/include/features-time64.h \
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
/usr/include/x86_64-linux-gnu/bits/timesize.h \
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
/usr/include/x86_64-linux-gnu/bits/long-double.h \
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
/usr/include/x86_64-linux-gnu/bits/types.h \
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
/usr/include/x86_64-linux-gnu/bits/time64.h \
/usr/include/x86_64-linux-gnu/bits/fcntl.h \
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h \
/usr/include/linux/falloc.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
/usr/include/x86_64-linux-gnu/bits/endian.h \
/usr/include/x86_64-linux-gnu/bits/endianness.h \
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
/usr/include/x86_64-linux-gnu/bits/stat.h \
/usr/include/x86_64-linux-gnu/bits/struct_stat.h \
/usr/include/poll.h \
/usr/include/x86_64-linux-gnu/sys/poll.h \
/usr/include/x86_64-linux-gnu/bits/poll.h \
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
/usr/include/stdio.h \
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h \
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
/usr/include/x86_64-linux-gnu/bits/floatn.h \
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
/usr/include/c++/11/stdlib.h \
/usr/include/c++/11/cstdlib \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/os_defines.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/cpu_defines.h \
/usr/include/c++/11/pstl/pstl_config.h \
/usr/include/stdlib.h \
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
/usr/include/x86_64-linux-gnu/sys/types.h \
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h \
/usr/include/endian.h \
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
/usr/include/x86_64-linux-gnu/sys/select.h \
/usr/include/x86_64-linux-gnu/bits/select.h \
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \
/usr/include/alloca.h \
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
/usr/include/c++/11/bits/std_abs.h \
/usr/include/c++/11/string \
/usr/include/c++/11/bits/stringfwd.h \
/usr/include/c++/11/bits/memoryfwd.h \
/usr/include/c++/11/bits/char_traits.h \
/usr/include/c++/11/bits/stl_algobase.h \
/usr/include/c++/11/bits/functexcept.h \
/usr/include/c++/11/bits/exception_defines.h \
/usr/include/c++/11/bits/cpp_type_traits.h \
/usr/include/c++/11/ext/type_traits.h \
/usr/include/c++/11/ext/numeric_traits.h \
/usr/include/c++/11/bits/stl_pair.h \
/usr/include/c++/11/bits/move.h \
/usr/include/c++/11/type_traits \
/usr/include/c++/11/bits/stl_iterator_base_types.h \
/usr/include/c++/11/bits/stl_iterator_base_funcs.h \
/usr/include/c++/11/bits/concept_check.h \
/usr/include/c++/11/debug/assertions.h \
/usr/include/c++/11/bits/stl_iterator.h \
/usr/include/c++/11/bits/ptr_traits.h \
/usr/include/c++/11/debug/debug.h \
/usr/include/c++/11/bits/predefined_ops.h \
/usr/include/c++/11/bits/postypes.h \
/usr/include/c++/11/cwchar \
/usr/include/wchar.h \
/usr/include/x86_64-linux-gnu/bits/wchar.h \
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h \
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \
/usr/include/c++/11/cstdint \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h \
/usr/include/stdint.h \
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \
/usr/include/c++/11/bits/allocator.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h \
/usr/include/c++/11/ext/new_allocator.h \
/usr/include/c++/11/new \
/usr/include/c++/11/bits/exception.h \
/usr/include/c++/11/bits/localefwd.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++locale.h \
/usr/include/c++/11/clocale \
/usr/include/locale.h \
/usr/include/x86_64-linux-gnu/bits/locale.h \
/usr/include/c++/11/iosfwd \
/usr/include/c++/11/cctype \
/usr/include/ctype.h \
/usr/include/c++/11/bits/ostream_insert.h \
/usr/include/c++/11/bits/cxxabi_forced.h \
/usr/include/c++/11/bits/stl_function.h \
/usr/include/c++/11/backward/binders.h \
/usr/include/c++/11/bits/range_access.h \
/usr/include/c++/11/initializer_list \
/usr/include/c++/11/bits/basic_string.h \
/usr/include/c++/11/ext/atomicity.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h \
/usr/include/pthread.h \
/usr/include/sched.h \
/usr/include/x86_64-linux-gnu/bits/sched.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \
/usr/include/x86_64-linux-gnu/bits/cpu-set.h \
/usr/include/time.h \
/usr/include/x86_64-linux-gnu/bits/time.h \
/usr/include/x86_64-linux-gnu/bits/timex.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \
/usr/include/x86_64-linux-gnu/bits/setjmp.h \
/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/atomic_word.h \
/usr/include/x86_64-linux-gnu/sys/single_threaded.h \
/usr/include/c++/11/ext/alloc_traits.h \
/usr/include/c++/11/bits/alloc_traits.h \
/usr/include/c++/11/bits/stl_construct.h \
/usr/include/c++/11/string_view \
/usr/include/c++/11/bits/functional_hash.h \
/usr/include/c++/11/bits/hash_bytes.h \
/usr/include/c++/11/bits/string_view.tcc \
/usr/include/c++/11/ext/string_conversions.h \
/usr/include/c++/11/cstdio \
/usr/include/c++/11/cerrno \
/usr/include/errno.h \
/usr/include/x86_64-linux-gnu/bits/errno.h \
/usr/include/linux/errno.h \
/usr/include/x86_64-linux-gnu/asm/errno.h \
/usr/include/asm-generic/errno.h \
/usr/include/asm-generic/errno-base.h \
/usr/include/x86_64-linux-gnu/bits/types/error_t.h \
/usr/include/c++/11/bits/charconv.h \
/usr/include/c++/11/bits/basic_string.tcc \
/usr/include/unistd.h \
/usr/include/x86_64-linux-gnu/bits/posix_opt.h \
/usr/include/x86_64-linux-gnu/bits/environments.h \
/usr/include/x86_64-linux-gnu/bits/confname.h \
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h \
/usr/include/linux/close_range.h
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:
/usr/include/x86_64-linux-gnu/bits/getopt_core.h:
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h:
/usr/include/x86_64-linux-gnu/bits/environments.h:
/usr/include/x86_64-linux-gnu/bits/posix_opt.h:
/usr/include/c++/11/bits/basic_string.tcc:
/usr/include/c++/11/bits/charconv.h:
/usr/include/x86_64-linux-gnu/bits/types/error_t.h:
/usr/include/asm-generic/errno.h:
/usr/include/x86_64-linux-gnu/bits/errno.h:
/usr/include/errno.h:
/usr/include/c++/11/cerrno:
/usr/include/c++/11/cstdio:
/usr/include/c++/11/ext/string_conversions.h:
/usr/include/c++/11/bits/string_view.tcc:
/usr/include/c++/11/bits/hash_bytes.h:
/usr/include/c++/11/bits/functional_hash.h:
/usr/include/c++/11/bits/stl_construct.h:
/usr/include/c++/11/bits/alloc_traits.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/atomic_word.h:
/usr/include/linux/errno.h:
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h:
/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h:
/usr/include/time.h:
/usr/include/x86_64-linux-gnu/bits/cpu-set.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h:
/usr/include/x86_64-linux-gnu/bits/sched.h:
/usr/include/sched.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h:
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h:
/usr/include/endian.h:
/usr/include/x86_64-linux-gnu/bits/waitflags.h:
/usr/include/c++/11/bits/localefwd.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/os_defines.h:
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h:
/usr/include/c++/11/stdlib.h:
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h:
/usr/include/stdio.h:
/usr/include/x86_64-linux-gnu/bits/setjmp.h:
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h:
/usr/include/c++/11/bits/std_abs.h:
/usr/include/c++/11/cstdlib:
/usr/include/c++/11/bits/stl_iterator_base_types.h:
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h:
/usr/include/pthread.h:
/usr/include/c++/11/bits/cpp_type_traits.h:
/usr/include/c++/11/string_view:
../safe_duck.cpp:
/usr/include/x86_64-linux-gnu/bits/confname.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h:
/usr/include/c++/11/bits/ostream_insert.h:
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h:
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h:
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h:
/usr/include/x86_64-linux-gnu/bits/types/FILE.h:
/usr/include/features.h:
/usr/include/c++/11/ext/numeric_traits.h:
/usr/include/x86_64-linux-gnu/bits/long-double.h:
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h:
/usr/include/x86_64-linux-gnu/bits/byteswap.h:
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h:
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h:
/usr/include/x86_64-linux-gnu/sys/cdefs.h:
/usr/include/x86_64-linux-gnu/asm/errno.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h:
/usr/include/wchar.h:
/usr/include/x86_64-linux-gnu/bits/time64.h:
/usr/include/c++/11/iosfwd:
/usr/include/c++/11/debug/debug.h:
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h:
/usr/include/stdlib.h:
/usr/include/x86_64-linux-gnu/bits/wordsize.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h:
/usr/include/x86_64-linux-gnu/bits/floatn.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h:
/usr/include/fcntl.h:
/usr/include/c++/11/bits/exception_defines.h:
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h:
/usr/include/stdc-predef.h:
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h:
/usr/include/c++/11/bits/functexcept.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr.h:
/usr/include/c++/11/ext/type_traits.h:
/usr/include/x86_64-linux-gnu/sys/types.h:
/usr/include/x86_64-linux-gnu/bits/types/time_t.h:
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h:
/usr/include/c++/11/string:
/usr/include/x86_64-linux-gnu/bits/timex.h:
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h:
/usr/include/poll.h:
/usr/include/features-time64.h:
/usr/include/x86_64-linux-gnu/bits/poll.h:
/usr/include/x86_64-linux-gnu/bits/types.h:
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h:
/usr/include/c++/11/cctype:
/usr/include/linux/falloc.h:
/usr/include/x86_64-linux-gnu/bits/typesizes.h:
/usr/include/x86_64-linux-gnu/bits/endianness.h:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/cpu_defines.h:
/usr/include/x86_64-linux-gnu/bits/timesize.h:
/usr/include/x86_64-linux-gnu/sys/single_threaded.h:
/usr/include/c++/11/bits/allocator.h:
/usr/include/c++/11/pstl/pstl_config.h:
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h:
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h:
/usr/include/c++/11/bits/stl_iterator_base_funcs.h:
/usr/include/ctype.h:
/usr/include/x86_64-linux-gnu/bits/locale.h:
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h:
/usr/include/x86_64-linux-gnu/sys/poll.h:
/usr/include/c++/11/ext/new_allocator.h:
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h:
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h:
/usr/include/alloca.h:
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h:
/usr/include/c++/11/bits/stringfwd.h:
/usr/include/c++/11/bits/memoryfwd.h:
/usr/include/asm-generic/errno-base.h:
/usr/include/c++/11/bits/char_traits.h:
/usr/include/x86_64-linux-gnu/bits/stat.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/c++locale.h:
/usr/include/c++/11/initializer_list:
/usr/include/x86_64-linux-gnu/bits/fcntl.h:
/usr/include/c++/11/bits/stl_function.h:
/usr/include/x86_64-linux-gnu/bits/time.h:
/usr/include/c++/11/bits/stl_pair.h:
/usr/include/c++/11/ext/atomicity.h:
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h:
/usr/include/c++/11/bits/move.h:
/usr/include/c++/11/type_traits:
/usr/include/c++/11/bits/concept_check.h:
/usr/include/stdint.h:
/usr/include/linux/close_range.h:
/usr/include/c++/11/debug/assertions.h:
/usr/include/c++/11/new:
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h:
/usr/include/c++/11/bits/stl_iterator.h:
/usr/include/c++/11/bits/ptr_traits.h:
/usr/include/c++/11/clocale:
/usr/include/c++/11/bits/predefined_ops.h:
/usr/include/x86_64-linux-gnu/bits/waitstatus.h:
/usr/include/c++/11/bits/postypes.h:
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h:
/usr/include/c++/11/bits/stl_algobase.h:
/usr/include/c++/11/cwchar:
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h:
/usr/include/x86_64-linux-gnu/bits/wchar.h:
/usr/include/c++/11/bits/exception.h:
/usr/include/c++/11/bits/range_access.h:
/usr/include/x86_64-linux-gnu/bits/floatn-common.h:
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h:
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h:
/usr/include/c++/11/cstdint:
/usr/include/unistd.h:
/usr/include/x86_64-linux-gnu/sys/select.h:
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h:
/usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h:
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h:
/usr/include/locale.h:
/usr/include/c++/11/ext/alloc_traits.h:
/usr/include/c++/11/bits/cxxabi_forced.h:
/usr/include/x86_64-linux-gnu/bits/struct_stat.h:
/usr/include/x86_64-linux-gnu/bits/select.h:
/usr/include/c++/11/backward/binders.h:
/usr/include/x86_64-linux-gnu/gnu/stubs.h:
/usr/include/x86_64-linux-gnu/bits/endian.h:
/usr/include/c++/11/bits/basic_string.h:
# Empty compiler generated dependencies file for safe_duck.
# This may be replaced when dependencies are built.

View File

@@ -1 +1 @@
/usr/bin/c++ CMakeFiles/safe_duck.dir/safe_duck.cpp.o -o safe_duck
/usr/bin/c++ CMakeFiles/safe_duck.dir/safe_duck.cpp.o CMakeFiles/safe_duck.dir/msg.cpp.o CMakeFiles/safe_duck.dir/tools.cpp.o CMakeFiles/safe_duck.dir/global.cpp.o -o safe_duck

View File

@@ -1,3 +1,6 @@
CMAKE_PROGRESS_1 = 1
CMAKE_PROGRESS_2 = 2
CMAKE_PROGRESS_3 = 3
CMAKE_PROGRESS_4 = 4
CMAKE_PROGRESS_5 = 5

View File

@@ -1,146 +0,0 @@
CMakeFiles/safe_duck.dir/safe_duck.cpp.o: \
/home/duck/project/linux_service/safe_duck.cpp \
/usr/include/stdc-predef.h /usr/include/fcntl.h /usr/include/features.h \
/usr/include/features-time64.h \
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
/usr/include/x86_64-linux-gnu/bits/timesize.h \
/usr/include/x86_64-linux-gnu/sys/cdefs.h \
/usr/include/x86_64-linux-gnu/bits/long-double.h \
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
/usr/include/x86_64-linux-gnu/bits/types.h \
/usr/include/x86_64-linux-gnu/bits/typesizes.h \
/usr/include/x86_64-linux-gnu/bits/time64.h \
/usr/include/x86_64-linux-gnu/bits/fcntl.h \
/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stddef.h \
/usr/include/linux/falloc.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \
/usr/include/x86_64-linux-gnu/bits/endian.h \
/usr/include/x86_64-linux-gnu/bits/endianness.h \
/usr/include/x86_64-linux-gnu/bits/types/time_t.h \
/usr/include/x86_64-linux-gnu/bits/stat.h \
/usr/include/x86_64-linux-gnu/bits/struct_stat.h /usr/include/poll.h \
/usr/include/x86_64-linux-gnu/sys/poll.h \
/usr/include/x86_64-linux-gnu/bits/poll.h \
/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \
/usr/include/stdio.h \
/usr/include/x86_64-linux-gnu/bits/libc-header-start.h \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdarg.h \
/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \
/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
/usr/include/x86_64-linux-gnu/bits/floatn.h \
/usr/include/x86_64-linux-gnu/bits/floatn-common.h \
/usr/include/c++/11/stdlib.h /usr/include/c++/11/cstdlib \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++config.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/os_defines.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/cpu_defines.h \
/usr/include/c++/11/pstl/pstl_config.h /usr/include/stdlib.h \
/usr/include/x86_64-linux-gnu/bits/waitflags.h \
/usr/include/x86_64-linux-gnu/bits/waitstatus.h \
/usr/include/x86_64-linux-gnu/bits/types/locale_t.h \
/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \
/usr/include/x86_64-linux-gnu/sys/types.h \
/usr/include/x86_64-linux-gnu/bits/types/clock_t.h \
/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \
/usr/include/x86_64-linux-gnu/bits/types/timer_t.h \
/usr/include/x86_64-linux-gnu/bits/stdint-intn.h /usr/include/endian.h \
/usr/include/x86_64-linux-gnu/bits/byteswap.h \
/usr/include/x86_64-linux-gnu/bits/uintn-identity.h \
/usr/include/x86_64-linux-gnu/sys/select.h \
/usr/include/x86_64-linux-gnu/bits/select.h \
/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \
/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \
/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \
/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \
/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \
/usr/include/x86_64-linux-gnu/bits/struct_mutex.h \
/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h /usr/include/alloca.h \
/usr/include/x86_64-linux-gnu/bits/stdlib-float.h \
/usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/string \
/usr/include/c++/11/bits/stringfwd.h \
/usr/include/c++/11/bits/memoryfwd.h \
/usr/include/c++/11/bits/char_traits.h \
/usr/include/c++/11/bits/stl_algobase.h \
/usr/include/c++/11/bits/functexcept.h \
/usr/include/c++/11/bits/exception_defines.h \
/usr/include/c++/11/bits/cpp_type_traits.h \
/usr/include/c++/11/ext/type_traits.h \
/usr/include/c++/11/ext/numeric_traits.h \
/usr/include/c++/11/bits/stl_pair.h /usr/include/c++/11/bits/move.h \
/usr/include/c++/11/type_traits \
/usr/include/c++/11/bits/stl_iterator_base_types.h \
/usr/include/c++/11/bits/stl_iterator_base_funcs.h \
/usr/include/c++/11/bits/concept_check.h \
/usr/include/c++/11/debug/assertions.h \
/usr/include/c++/11/bits/stl_iterator.h \
/usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \
/usr/include/c++/11/bits/predefined_ops.h \
/usr/include/c++/11/bits/postypes.h /usr/include/c++/11/cwchar \
/usr/include/wchar.h /usr/include/x86_64-linux-gnu/bits/wchar.h \
/usr/include/x86_64-linux-gnu/bits/types/wint_t.h \
/usr/include/x86_64-linux-gnu/bits/types/mbstate_t.h \
/usr/include/c++/11/cstdint \
/usr/lib/gcc/x86_64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \
/usr/include/c++/11/bits/allocator.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h \
/usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \
/usr/include/c++/11/bits/exception.h \
/usr/include/c++/11/bits/localefwd.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/c++locale.h \
/usr/include/c++/11/clocale /usr/include/locale.h \
/usr/include/x86_64-linux-gnu/bits/locale.h /usr/include/c++/11/iosfwd \
/usr/include/c++/11/cctype /usr/include/ctype.h \
/usr/include/c++/11/bits/ostream_insert.h \
/usr/include/c++/11/bits/cxxabi_forced.h \
/usr/include/c++/11/bits/stl_function.h \
/usr/include/c++/11/backward/binders.h \
/usr/include/c++/11/bits/range_access.h \
/usr/include/c++/11/initializer_list \
/usr/include/c++/11/bits/basic_string.h \
/usr/include/c++/11/ext/atomicity.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h \
/usr/include/pthread.h /usr/include/sched.h \
/usr/include/x86_64-linux-gnu/bits/sched.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h \
/usr/include/x86_64-linux-gnu/bits/cpu-set.h /usr/include/time.h \
/usr/include/x86_64-linux-gnu/bits/time.h \
/usr/include/x86_64-linux-gnu/bits/timex.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h \
/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h \
/usr/include/x86_64-linux-gnu/bits/setjmp.h \
/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h \
/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h \
/usr/include/x86_64-linux-gnu/c++/11/bits/atomic_word.h \
/usr/include/x86_64-linux-gnu/sys/single_threaded.h \
/usr/include/c++/11/ext/alloc_traits.h \
/usr/include/c++/11/bits/alloc_traits.h \
/usr/include/c++/11/bits/stl_construct.h /usr/include/c++/11/string_view \
/usr/include/c++/11/bits/functional_hash.h \
/usr/include/c++/11/bits/hash_bytes.h \
/usr/include/c++/11/bits/string_view.tcc \
/usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdio \
/usr/include/c++/11/cerrno /usr/include/errno.h \
/usr/include/x86_64-linux-gnu/bits/errno.h /usr/include/linux/errno.h \
/usr/include/x86_64-linux-gnu/asm/errno.h \
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
/usr/include/x86_64-linux-gnu/bits/types/error_t.h \
/usr/include/c++/11/bits/charconv.h \
/usr/include/c++/11/bits/basic_string.tcc /usr/include/unistd.h \
/usr/include/x86_64-linux-gnu/bits/posix_opt.h \
/usr/include/x86_64-linux-gnu/bits/environments.h \
/usr/include/x86_64-linux-gnu/bits/confname.h \
/usr/include/x86_64-linux-gnu/bits/getopt_posix.h \
/usr/include/x86_64-linux-gnu/bits/getopt_core.h \
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h \
/usr/include/linux/close_range.h

View File

@@ -129,6 +129,54 @@ safe_duck/fast:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/build
.PHONY : safe_duck/fast
global.o: global.cpp.o
.PHONY : global.o
# target to build an object file
global.cpp.o:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/global.cpp.o
.PHONY : global.cpp.o
global.i: global.cpp.i
.PHONY : global.i
# target to preprocess a source file
global.cpp.i:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/global.cpp.i
.PHONY : global.cpp.i
global.s: global.cpp.s
.PHONY : global.s
# target to generate assembly for a file
global.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/global.cpp.s
.PHONY : global.cpp.s
msg.o: msg.cpp.o
.PHONY : msg.o
# target to build an object file
msg.cpp.o:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/msg.cpp.o
.PHONY : msg.cpp.o
msg.i: msg.cpp.i
.PHONY : msg.i
# target to preprocess a source file
msg.cpp.i:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/msg.cpp.i
.PHONY : msg.cpp.i
msg.s: msg.cpp.s
.PHONY : msg.s
# target to generate assembly for a file
msg.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/msg.cpp.s
.PHONY : msg.cpp.s
safe_duck.o: safe_duck.cpp.o
.PHONY : safe_duck.o
@@ -153,6 +201,30 @@ safe_duck.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/safe_duck.cpp.s
.PHONY : safe_duck.cpp.s
tools.o: tools.cpp.o
.PHONY : tools.o
# target to build an object file
tools.cpp.o:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/tools.cpp.o
.PHONY : tools.cpp.o
tools.i: tools.cpp.i
.PHONY : tools.i
# target to preprocess a source file
tools.cpp.i:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/tools.cpp.i
.PHONY : tools.cpp.i
tools.s: tools.cpp.s
.PHONY : tools.s
# target to generate assembly for a file
tools.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/safe_duck.dir/build.make CMakeFiles/safe_duck.dir/tools.cpp.s
.PHONY : tools.cpp.s
# Help Target
help:
@echo "The following are some of the valid targets for this Makefile:"
@@ -162,9 +234,18 @@ help:
@echo "... edit_cache"
@echo "... rebuild_cache"
@echo "... safe_duck"
@echo "... global.o"
@echo "... global.i"
@echo "... global.s"
@echo "... msg.o"
@echo "... msg.i"
@echo "... msg.s"
@echo "... safe_duck.o"
@echo "... safe_duck.i"
@echo "... safe_duck.s"
@echo "... tools.o"
@echo "... tools.i"
@echo "... tools.s"
.PHONY : help

2
linux_service/global.cpp Normal file
View File

@@ -0,0 +1,2 @@
#include "global.h"
namespace global {};

3
linux_service/global.h Normal file
View File

@@ -0,0 +1,3 @@
#pragma once
#include "head.h"
namespace global {};

10
linux_service/head.h Normal file
View File

@@ -0,0 +1,10 @@
#include <fcntl.h>
#include <poll.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string>
#include "global.h"
#include "msg.h"
#include "tools.h"

90
linux_service/msg.cpp Normal file
View File

@@ -0,0 +1,90 @@
#include "msg.h"
namespace client_msg {
int driver_read;
int driver_write;
auto call_driver(client_msg_t msg) -> bool {
int is_success = write(driver_write, &msg, sizeof(client_msg_t));
if (is_success == 0) {
perror("Failed to write message to safe_duck device");
return false;
}
return true;
}
auto block_ip(size_t ip_address, size_t time_sec) -> bool {
client_msg_t msg;
msg.check_sum = MSG_CHECK_SUM;
msg.type = SD_MSG_TYPE_CLIENT_BLOCK_IP;
msg.u.ip_address.src_ip = ip_address;
msg.u.ip_address.block_time = time_sec;
return call_driver(msg);
}
auto dispath_kernel_msg_i(_msg_type type, kernel_msg_t msg) -> void {
switch (type) {
case SD_MSG_TYPE_NEW_IP_CONNECT: {
auto ip_str = tools::cover_ip(msg.u.ip_action.src_ip);
printf("New IP connection: %s\n", ip_str.c_str());
} break;
case SD_MSG_TYPE_SYN_ATTACK: {
auto ip_str = tools::cover_ip(msg.u.ip_action.src_ip);
printf("Block ip for syn attack: %s \n", ip_str.c_str());
} break;
case SD_MSG_TYPE_SSH_BF_ATTACK: {
auto ip_str = tools::cover_ip(msg.u.ip_action.src_ip);
printf("Block ip for SSH brute force attack: %s \n",
ip_str.c_str());
} break;
default:
printf("Unknown message type: %d\n", msg.type);
break;
}
}
auto dispath_kernel_msg() -> void {
int fd = driver_read;
while (1) {
struct pollfd fds[1];
fds[0].fd = fd;
fds[0].events = POLLIN;
printf("Waiting for message from safe_duck device...\n");
int ret = poll(fds, 1, -1);
if (ret < 0) {
perror("poll failed");
close(fd);
return;
}
printf("Got message from safe_duck device\n");
if (fds[0].revents & POLLIN) {
kernel_msg_t msg;
int is_success = read(fd, &msg, sizeof(kernel_msg_t));
if (is_success == 0 && msg.check_sum == MSG_CHECK_SUM) {
dispath_kernel_msg_i((_msg_type)msg.type, msg);
} else {
perror("Failed to read message from safe_duck device");
}
}
}
}
auto init() -> bool {
driver_read = open("/dev/safe_duck", O_RDWR);
if (driver_read < 0) {
perror("Failed to open safe_duck device");
return false;
}
driver_write = open("/dev/safe_duck", O_RDWR);
if (driver_write < 0) {
perror("Failed to open safe_duck device");
return false;
}
return true;
}
auto uninstall() -> void {
if (driver_write) {
close(driver_write);
driver_write = 0;
}
if (driver_read) {
close(driver_read);
driver_read = 0;
}
}
} // namespace client_msg

37
linux_service/msg.h Normal file
View File

@@ -0,0 +1,37 @@
#pragma once
#include "head.h"
#define MSG_CHECK_SUM 1337
typedef enum _msg_type {
SD_MSG_TYPE_ERROR = -1,
SD_MSG_TYPE_NEW_IP_CONNECT = 0,
SD_MSG_TYPE_SYN_ATTACK = 1,
SD_MSG_TYPE_CLIENT_BLOCK_IP = 2,
SD_MSG_TYPE_SSH_BF_ATTACK = 3,
};
typedef struct kernel_msg_t {
unsigned long check_sum;
int type;
union {
struct {
unsigned long src_ip;
} ip_action;
} u;
};
typedef struct client_msg_t {
unsigned long check_sum;
int type;
union {
struct {
unsigned long src_ip;
unsigned long block_time;
} ip_address;
} u;
};
namespace client_msg {
auto dispath_kernel_msg() -> void;
auto block_ip(size_t ip_address, size_t time_sec) -> bool;
auto init() -> bool;
auto call_driver(client_msg_t msg) -> bool;
auto uninstall() -> void;
} // namespace client_msg

View File

@@ -1,68 +1,8 @@
#include <fcntl.h>
#include <poll.h>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <unistd.h>
#define MSG_CHECK_SUM 1337
typedef enum _msg_type {
SD_MSG_TYPE_ERROR = -1,
SD_MSG_TYPE_NEW_IP_CONNECT = 0,
};
#include "head.h"
typedef struct kernel_msg_t {
unsigned long check_sum;
int type;
union {
struct {
unsigned int src_ip;
} poll_req;
} u;
};
auto cover_ip(unsigned int ip) -> std::string {
std::string ip_str;
ip_str = std::to_string(ip & 0xff) + "." +
std::to_string((ip >> 8) & 0xff) + "." +
std::to_string((ip >> 16) & 0xff) + "." +
std::to_string((ip >> 24) & 0xff);
return ip_str;
}
int main() {
int fd = open("/dev/safe_duck", O_RDWR);
if (fd < 0) {
perror("Failed to open safe_duck device");
return 1;
auto main() -> int {
if (client_msg::init()) {
client_msg::dispath_kernel_msg();
}
while (1) {
struct pollfd fds[1];
fds[0].fd = fd;
fds[0].events = POLLIN;
printf("Waiting for message from safe_duck device...\n");
int ret = poll(fds, 1, -1);
if (ret < 0) {
perror("poll failed");
close(fd);
return 1;
}
printf("Got message from safe_duck device\n");
if (fds[0].revents & POLLIN) {
kernel_msg_t msg;
int is_success = read(fd, &msg, sizeof(kernel_msg_t));
if (is_success == 0 && msg.check_sum == MSG_CHECK_SUM) {
if (msg.type == SD_MSG_TYPE_NEW_IP_CONNECT) {
auto ip_str = cover_ip(msg.u.poll_req.src_ip);
printf("New IP connection: %s\n", ip_str.c_str());
} else {
printf("Unknown message type: %d\n", msg.type);
}
} else {
perror("Failed to read message from safe_duck device");
}
}
}
close(fd);
return 0;
}

11
linux_service/tools.cpp Normal file
View File

@@ -0,0 +1,11 @@
#include "tools.h"
namespace tools {
auto cover_ip(unsigned int ip) -> std::string {
std::string ip_str;
ip_str = std::to_string(ip & 0xff) + "." +
std::to_string((ip >> 8) & 0xff) + "." +
std::to_string((ip >> 16) & 0xff) + "." +
std::to_string((ip >> 24) & 0xff);
return ip_str;
}
} // namespace tools

5
linux_service/tools.h Normal file
View File

@@ -0,0 +1,5 @@
#pragma once
#include "head.h"
namespace tools {
auto cover_ip(unsigned int ip) -> std::string;
} // namespace tools