\hypertarget{g__multipath_8h_source}{}\doxysection{g\+\_\+multipath.\+h}
\label{g__multipath_8h_source}\index{geom/multipath/g\_multipath.h@{geom/multipath/g\_multipath.h}}
\mbox{\hyperlink{g__multipath_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00001}00001 \textcolor{comment}{/*-\/}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00002}00002 \textcolor{comment}{ * SPDX-\/License-\/Identifier: BSD-\/2-\/Clause-\/FreeBSD}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00003}00003 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00004}00004 \textcolor{comment}{ * Copyright (c) 2006-\/2007 Matthew Jacob <mjacob@FreeBSD.org>}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00005}00005 \textcolor{comment}{ * All rights reserved.}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00006}00006 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00007}00007 \textcolor{comment}{ * Redistribution and use in source and binary forms, with or without}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00008}00008 \textcolor{comment}{ * modification, are permitted provided that the following conditions}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00009}00009 \textcolor{comment}{ * are met:}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00010}00010 \textcolor{comment}{ * 1. Redistributions of source code must retain the above copyright}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00011}00011 \textcolor{comment}{ *    notice, this list of conditions and the following disclaimer.}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00012}00012 \textcolor{comment}{ * 2. Redistributions in binary form must reproduce the above copyright}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00013}00013 \textcolor{comment}{ *    notice, this list of conditions and the following disclaimer in the}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00014}00014 \textcolor{comment}{ *    documentation and/or other materials provided with the distribution.}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00015}00015 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00016}00016 \textcolor{comment}{ * THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00017}00017 \textcolor{comment}{ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00018}00018 \textcolor{comment}{ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00019}00019 \textcolor{comment}{ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00020}00020 \textcolor{comment}{ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00021}00021 \textcolor{comment}{ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00022}00022 \textcolor{comment}{ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00023}00023 \textcolor{comment}{ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00024}00024 \textcolor{comment}{ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00025}00025 \textcolor{comment}{ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00026}00026 \textcolor{comment}{ * SUCH DAMAGE.}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00027}00027 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00028}00028 \textcolor{comment}{ * \$FreeBSD\$}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00029}00029 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00030}00030 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00031}00031 \textcolor{comment}{ * Based upon work by Pawel Jakub Dawidek <pjd@FreeBSD.org> for all of the}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00032}00032 \textcolor{comment}{ * fine geom examples, and by Poul Henning Kamp <phk@FreeBSD.org> for GEOM}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00033}00033 \textcolor{comment}{ * itself, all of which is most gratefully acknowledged.}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00034}00034 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00035}00035 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00036}00036 \textcolor{preprocessor}{\#ifndef \_G\_MULTIPATH\_H\_}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00037}00037 \textcolor{preprocessor}{\#define \_G\_MULTIPATH\_H\_}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00038}00038 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00039}\mbox{\hyperlink{g__multipath_8h_a14a8e22fa7a7b9fb426260504ee48a7c}{00039}} \textcolor{preprocessor}{\#define G\_MULTIPATH\_CLASS\_NAME  "{}MULTIPATH"{}}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00040}\mbox{\hyperlink{g__multipath_8h_a4a677fd79bb2bb8000057c9355ba830c}{00040}} \textcolor{preprocessor}{\#define G\_MULTIPATH\_VERSION     1}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00041}\mbox{\hyperlink{g__multipath_8h_a2bac3f7167fe9b210c135064f8182672}{00041}} \textcolor{preprocessor}{\#define G\_MULTIPATH\_MAGIC       "{}GEOM::MULTIPATH"{}}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00042}00042 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00043}00043 \textcolor{preprocessor}{\#include <sys/endian.h>}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00044}00044 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00045}00045 \textcolor{preprocessor}{\#ifdef  \_KERNEL}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00046}00046 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00047}\mbox{\hyperlink{structg__multipath__softc}{00047}} \textcolor{keyword}{struct }\mbox{\hyperlink{structg__multipath__softc}{g\_multipath\_softc}} \{}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00048}\mbox{\hyperlink{structg__multipath__softc_a35ccd45423b5babeab1fd1d9ae84af0d}{00048}}         \textcolor{keyword}{struct }\mbox{\hyperlink{structg__provider}{g\_provider}} *   \mbox{\hyperlink{structg__multipath__softc_a35ccd45423b5babeab1fd1d9ae84af0d}{sc\_pp}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00049}\mbox{\hyperlink{structg__multipath__softc_a131b6508d83ca4ed2ad2db92425e6d40}{00049}}         \textcolor{keyword}{struct }\mbox{\hyperlink{structg__consumer}{g\_consumer}} *   \mbox{\hyperlink{structg__multipath__softc_a131b6508d83ca4ed2ad2db92425e6d40}{sc\_active}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00050}\mbox{\hyperlink{structg__multipath__softc_a000284907ee5e92f8e1d3351e15b96c2}{00050}}         \textcolor{keyword}{struct }mtx              \mbox{\hyperlink{structg__multipath__softc_a000284907ee5e92f8e1d3351e15b96c2}{sc\_mtx}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00051}\mbox{\hyperlink{structg__multipath__softc_a4f2e9d56a9becb38fb315efe93d4a0b2}{00051}}         \textcolor{keywordtype}{char}                    \mbox{\hyperlink{structg__multipath__softc_a4f2e9d56a9becb38fb315efe93d4a0b2}{sc\_name}}[16];}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00052}\mbox{\hyperlink{structg__multipath__softc_a73c639bb6d64a68e60b7ba6d05ec45bd}{00052}}         \textcolor{keywordtype}{char}                    \mbox{\hyperlink{structg__multipath__softc_a73c639bb6d64a68e60b7ba6d05ec45bd}{sc\_uuid}}[40];}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00053}\mbox{\hyperlink{structg__multipath__softc_a945211a752aaa59ab94c18f1cfb33857}{00053}}         off\_t                   \mbox{\hyperlink{structg__multipath__softc_a945211a752aaa59ab94c18f1cfb33857}{sc\_size}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00054}\mbox{\hyperlink{structg__multipath__softc_a5d3089977494aa90f1785cf341d2e1b3}{00054}}         \textcolor{keywordtype}{int}                     \mbox{\hyperlink{structg__multipath__softc_a5d3089977494aa90f1785cf341d2e1b3}{sc\_opened}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00055}\mbox{\hyperlink{structg__multipath__softc_a498545b141bfdffc42df55992d484911}{00055}}         \textcolor{keywordtype}{int}                     \mbox{\hyperlink{structg__multipath__softc_a498545b141bfdffc42df55992d484911}{sc\_stopping}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00056}\mbox{\hyperlink{structg__multipath__softc_a1f4ba31c3bd849e76623c671d8b593e0}{00056}}         \textcolor{keywordtype}{int}                     \mbox{\hyperlink{structg__multipath__softc_a1f4ba31c3bd849e76623c671d8b593e0}{sc\_ndisks}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00057}\mbox{\hyperlink{structg__multipath__softc_a0684dd21858531f80e057c72163b96c1}{00057}}         \textcolor{keywordtype}{int}                     \mbox{\hyperlink{structg__multipath__softc_a0684dd21858531f80e057c72163b96c1}{sc\_active\_active}}; \textcolor{comment}{/* Active/Active mode */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00058}00058 \};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00059}00059 \textcolor{preprocessor}{\#endif  }\textcolor{comment}{/* \_KERNEL */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00060}00060 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00061}\mbox{\hyperlink{structg__multipath__metadata}{00061}} \textcolor{keyword}{struct }\mbox{\hyperlink{structg__multipath__metadata}{g\_multipath\_metadata}} \{}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00062}\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{00062}}         \textcolor{keywordtype}{char}            \mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}}[16];   \textcolor{comment}{/* Magic Value */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00063}\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{00063}}         \textcolor{keywordtype}{char}            \mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}}[40];     \textcolor{comment}{/* more magic */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00064}\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{00064}}         \textcolor{keywordtype}{char}            \mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}}[16];     \textcolor{comment}{/* a friendly name */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00065}\mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{00065}}         uint32\_t        \mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{md\_version}};   \textcolor{comment}{/* version */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00066}\mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{00066}}         uint32\_t        \mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{md\_sectorsize}};     \textcolor{comment}{/* sectorsize of provider */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00067}\mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{00067}}         uint64\_t        \mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{md\_size}}; \textcolor{comment}{/* absolute size of provider */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00068}\mbox{\hyperlink{structg__multipath__metadata_a20d5449832d2760bbcfceb7e758d7100}{00068}}         \mbox{\hyperlink{binstream_8h_ab077fa1127453be2bd9d4c3c8a768fa7}{uint8\_t}}          \mbox{\hyperlink{structg__multipath__metadata_a20d5449832d2760bbcfceb7e758d7100}{md\_active\_active}}; \textcolor{comment}{/* Active/Active mode */}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00069}00069 \};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00070}00070 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00071}00071 \textcolor{keyword}{static} \_\_inline \textcolor{keywordtype}{void}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00072}00072 \mbox{\hyperlink{g__multipath_8h_a6c27804f9272b21beb7dc4e75435915b}{multipath\_metadata\_encode}}(\textcolor{keyword}{const} \textcolor{keyword}{struct} \mbox{\hyperlink{structg__multipath__metadata}{g\_multipath\_metadata}} *, u\_char *);}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00073}00073 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00074}00074 \textcolor{keyword}{static} \_\_inline \textcolor{keywordtype}{void}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00075}00075 \mbox{\hyperlink{g__multipath_8h_ad89f2d7b4c2708e3d2712db0f801705e}{multipath\_metadata\_decode}}(u\_char *, \textcolor{keyword}{struct} \mbox{\hyperlink{structg__multipath__metadata}{g\_multipath\_metadata}} *);}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00076}00076 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00077}00077 \textcolor{keyword}{static} \_\_inline \textcolor{keywordtype}{void}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00078}\mbox{\hyperlink{g__multipath_8h_a6c27804f9272b21beb7dc4e75435915b}{00078}} \mbox{\hyperlink{g__multipath_8h_a6c27804f9272b21beb7dc4e75435915b}{multipath\_metadata\_encode}}(\textcolor{keyword}{const} \textcolor{keyword}{struct} \mbox{\hyperlink{structg__multipath__metadata}{g\_multipath\_metadata}} *md, u\_char *\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}})}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00079}00079 \{}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00080}00080         bcopy(md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}}, \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00081}00081         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00082}00082         bcopy(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}}, \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00083}00083         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00084}00084         bcopy(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}}, \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00085}00085         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00086}00086         le32enc(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{md\_version}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00087}00087         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{md\_version}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00088}00088         le32enc(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{md\_sectorsize}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00089}00089         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{md\_sectorsize}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00090}00090         le64enc(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{md\_size}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00091}00091         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{md\_size}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00092}00092         *\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} = md-\/>\mbox{\hyperlink{structg__multipath__metadata_a20d5449832d2760bbcfceb7e758d7100}{md\_active\_active}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00093}00093 \}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00094}00094 }
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00095}00095 \textcolor{keyword}{static} \_\_inline \textcolor{keywordtype}{void}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00096}\mbox{\hyperlink{g__multipath_8h_ad89f2d7b4c2708e3d2712db0f801705e}{00096}} \mbox{\hyperlink{g__multipath_8h_ad89f2d7b4c2708e3d2712db0f801705e}{multipath\_metadata\_decode}}(u\_char *\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, \textcolor{keyword}{struct} \mbox{\hyperlink{structg__multipath__metadata}{g\_multipath\_metadata}} *md)}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00097}00097 \{}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00098}00098         bcopy(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00099}00099         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_ac19dd6d626a374e4e339f4accd256b9b}{md\_magic}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00100}00100         bcopy(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00101}00101         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a1189e6dec8389ac4129deae3e2d8ad8d}{md\_uuid}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00102}00102         bcopy(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}, md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}}, \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}}));}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00103}00103         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a261b8109d4a3a195e7b9f5d14cc4bf74}{md\_name}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00104}00104         md-\/>\mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{md\_version}} = le32dec(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00105}00105         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a6ff7baabf1e99f0a9a220d9922c77d70}{md\_version}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00106}00106         md-\/>\mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{md\_sectorsize}} = le32dec(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00107}00107         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_a25f17bddb7b2e1f4c57e1f7fe35917d7}{md\_sectorsize}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00108}00108         md-\/>\mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{md\_size}} = le64dec(\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00109}00109         \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}} += \textcolor{keyword}{sizeof}(md-\/>\mbox{\hyperlink{structg__multipath__metadata_aa3decf92e53c0632f80581f858485b5a}{md\_size}});}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00110}00110         md-\/>\mbox{\hyperlink{structg__multipath__metadata_a20d5449832d2760bbcfceb7e758d7100}{md\_active\_active}} = *\mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}};}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00111}00111 \}}
\DoxyCodeLine{\Hypertarget{g__multipath_8h_source_l00112}00112 \textcolor{preprocessor}{\#endif  }\textcolor{comment}{/* \_G\_MULTIPATH\_H\_ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
