This patch intrudce libqblock API, libqblock-test is used as a test case. make libqblock-test at root diretory could make it build. Test it with ./libqblock/libqblock-test [FILE] [BACKINGFILE]
V2: Format specific options were brought to API surface. All option were changed to enum type instead of string. ALL flags used were defined in libqblock.h. V3: Introduced broker, which was used for each thread, now it is used only to handle errors. Introduced AIO, it is based on qemu's aio implemetion. Balanced the structure folder depth and extension-bility, now parameters are classed into two kinds: location and formats. Using reserved bytes in structure to make ABI code simpler. Wenchao Xia (5): libqblock, API design libqblock, user example libqblock, implemention major libqblock, implemention minor libqblock, build system Makefile | 23 +- aio.c | 95 ++++ block.c | 2 +- block.h | 1 + libqblock/Makefile | 74 ++++ libqblock/libqblock-test.c | 242 +++++++++++ libqblock/libqblock.c | 1031 ++++++++++++++++++++++++++++++++++++++++++++ libqblock/libqblock.h | 550 +++++++++++++++++++++++ qemu-aio.h | 1 + 9 files changed, 2017 insertions(+), 2 deletions(-) create mode 100644 libqblock/Makefile create mode 100644 libqblock/libqblock-test.c create mode 100644 libqblock/libqblock.c create mode 100644 libqblock/libqblock.h