📄 gnet-sha.html
字号:
<HTML><HEAD><TITLE>sha</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.77+"><LINKREL="HOME"TITLE="GNet Network Library Reference Manual"HREF="book1.html"><LINKREL="UP"TITLE="GNet Library Reference"HREF="libgnet-reference.html"><LINKREL="PREVIOUS"TITLE="md5"HREF="gnet-md5.html"><LINKREL="NEXT"TITLE="url"HREF="gnet-url.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLEWIDTH="100%"BORDER="0"BGCOLOR="#000000"CELLPADDING="1"CELLSPACING="0"><TR><THCOLSPAN="4"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="5">GNet Network Library Reference Manual</FONT></TH></TR><TR><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="left"><AHREF="gnet-md5.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B><<< Previous Page</B></FONT></A></TD><TDWIDTH="25%"BGCOLOR="#0000C0"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="book1.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Home</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#00C000"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="libgnet-reference.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Up</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="right"><AHREF="gnet-url.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Next Page >>></B></FONT></A></TD></TR></TABLE></DIV><H1><ANAME="GNET-SHA"></A>sha</H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN3911"></A><H2>Name</H2>sha -- </DIV><DIVCLASS="REFSYNOPSISDIV"><ANAME="AEN3914"></A><H2>Synopsis</H2><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="SYNOPSIS"> struct <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>;#define <AHREF="gnet-sha.html#GNET-SHA-HASH-LENGTH-CAPS">GNET_SHA_HASH_LENGTH</A><AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* <AHREF="gnet-sha.html#GNET-SHA-NEW">gnet_sha_new</A> (const <GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK> *buffer, <GTKDOCLINKHREF="GUINT">guint</GTKDOCLINK> length);<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* <AHREF="gnet-sha.html#GNET-SHA-NEW-STRING">gnet_sha_new_string</A> (const <GTKDOCLINKHREF="GCHAR">gchar</GTKDOCLINK> *str);<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* <AHREF="gnet-sha.html#GNET-SHA-CLONE">gnet_sha_clone</A> (const <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);void <AHREF="gnet-sha.html#GNET-SHA-DELETE">gnet_sha_delete</A> (<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* <AHREF="gnet-sha.html#GNET-SHA-NEW-INCREMENTAL">gnet_sha_new_incremental</A> (void);void <AHREF="gnet-sha.html#GNET-SHA-UPDATE">gnet_sha_update</A> (<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha, const <GTKDOCLINKHREF="GUCHAR">guchar</GTKDOCLINK> *buffer, <GTKDOCLINKHREF="GUINT">guint</GTKDOCLINK> length);void <AHREF="gnet-sha.html#GNET-SHA-FINAL">gnet_sha_final</A> (<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);<GTKDOCLINKHREF="GINT">gint</GTKDOCLINK> <AHREF="gnet-sha.html#GNET-SHA-EQUAL">gnet_sha_equal</A> (<GTKDOCLINKHREF="GCONSTPOINTER">gconstpointer</GTKDOCLINK> p1, <GTKDOCLINKHREF="GCONSTPOINTER">gconstpointer</GTKDOCLINK> p2);<GTKDOCLINKHREF="GUINT">guint</GTKDOCLINK> <AHREF="gnet-sha.html#GNET-SHA-HASH">gnet_sha_hash</A> (<GTKDOCLINKHREF="GCONSTPOINTER">gconstpointer</GTKDOCLINK> p);<GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK>* <AHREF="gnet-sha.html#GNET-SHA-GET-DIGEST">gnet_sha_get_digest</A> (const <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);<GTKDOCLINKHREF="GCHAR">gchar</GTKDOCLINK>* <AHREF="gnet-sha.html#GNET-SHA-GET-STRING">gnet_sha_get_string</A> (const <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);void <AHREF="gnet-sha.html#GNET-SHA-COPY-STRING">gnet_sha_copy_string</A> (const <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha, <GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK> *buffer);</PRE></TD></TR></TABLE></DIV><DIVCLASS="REFSECT1"><ANAME="AEN3955"></A><H2>Description</H2><P></P></DIV><DIVCLASS="REFSECT1"><ANAME="AEN3958"></A><H2>Details</H2><DIVCLASS="REFSECT2"><ANAME="AEN3960"></A><H3><ANAME="GSHA-CAPS"></A>struct GSHA</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">struct GSHA;</PRE></TD></TR></TABLE><P></P></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN3965"></A><H3><ANAME="GNET-SHA-HASH-LENGTH-CAPS"></A>GNET_SHA_HASH_LENGTH</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">#define GNET_SHA_HASH_LENGTH</PRE></TD></TR></TABLE><P>Length of the SHA hash in bytes.</P><P></P></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN3971"></A><H3><ANAME="GNET-SHA-NEW"></A>gnet_sha_new ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* gnet_sha_new (const <GTKDOCLINKHREF="GUINT8">guint8</GTKDOCLINK> *buffer, <GTKDOCLINKHREF="GUINT">guint</GTKDOCLINK> length);</PRE></TD></TR></TABLE><P>Create an SHA hash of the buffer.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN3981"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>buffer</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN3986"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>length</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN3991"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN3996"></A><H3><ANAME="GNET-SHA-NEW-STRING"></A>gnet_sha_new_string ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* gnet_sha_new_string (const <GTKDOCLINKHREF="GCHAR">gchar</GTKDOCLINK> *str);</PRE></TD></TR></TABLE><P>Create an SHA hash from a hexidecimal string. The string must be of length greater than or equal to <TTCLASS="LITERAL">GNET_SHA_HASH_LENGTH</TT> * 2.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4006"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>str</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4011"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN4016"></A><H3><ANAME="GNET-SHA-CLONE"></A>gnet_sha_clone ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* gnet_sha_clone (const <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);</PRE></TD></TR></TABLE><P>Create a SHA from another one.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4025"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>gsha</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P></P></TD></TR><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4030"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN4035"></A><H3><ANAME="GNET-SHA-DELETE"></A>gnet_sha_delete ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void gnet_sha_delete (<AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A> *gsha);</PRE></TD></TR></TABLE><P>Delete a <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>.</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4044"><SPANSTYLE="white-space: nowrap"><TTCLASS="PARAMETER"><I>gsha</I></TT> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P></TD></TR></TBODY></TABLE></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN4049"></A><H3><ANAME="GNET-SHA-NEW-INCREMENTAL"></A>gnet_sha_new_incremental ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>* gnet_sha_new_incremental (void);</PRE></TD></TR></TABLE><P>Create a SHA hash in incremental mode. After creating the <AHREF="gnet-sha.html#GSHA-CAPS">GSHA</A>, call <AHREF="gnet-sha.html#GNET-SHA-UPDATE">gnet_sha_update</A>() and <AHREF="gnet-sha.html#GNET-SHA-FINAL">gnet_sha_final</A>().</P><P></P><P></P><TABLECLASS="VARIABLELIST"BORDER="0"CELLSPACING="0"CELLPADDING="4"WIDTH="100%"BGCOLOR="#FFD0D0"><TBODY><TR><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="20%"><ANAME="AEN4060"><SPANSTYLE="white-space: nowrap"><SPANCLASS="emphasis"><ICLASS="EMPHASIS">Returns</I></SPAN> :</SPAN></TD><TDALIGN="LEFT"VALIGN="TOP"WIDTH="80%"><P> </P
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -