1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<HTML>
3<HEAD>
4<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
5<META name="GENERATOR" content="IBM WebSphere Studio Homepage Builder Version 7.0.0.0 for Windows">
6<META http-equiv="Content-Style-Type" content="text/css">
7<TITLE>SVC_CalcHMACSHA1</TITLE>
8<LINK rel="stylesheet" href="../css/nitro.css" type="text/css">
9</HEAD>
10<BODY>
11<H1 align="left">SVC_CalcHMACSHA1 <IMG src="../image/BPT.gif" align="middle"><IMG src="../image/TWL.gif" align="middle"></H1>
12<H2>Syntax</H2>
13<DL>
14  <DD>
15  <PRE><CODE>#include &lt;twl/os/common/systemCall.h&gt;</CODE></PRE>
16  <PRE><CODE>void SVC_CalcHMACSHA1( void* md,
17                    const void* data,
18                    u32 len,
19                    const void* key,
20                    u32 keylen );</CODE></PRE>
21</DL>
22<H2>Arguments</H2>
23<TABLE border="1">
24  <TBODY>
25    <TR>
26      <TD><B><I>md</I></B></TD>
27      <TD>Pointer to the memory location that holds the calculated SHA-1 value.</TD>
28    </TR>
29    <TR>
30      <TD><B><I>data</I></B></TD>
31      <TD>Pointer to the input data.</TD>
32    </TR>
33    <TR>
34      <TD><B><I>len</I></B></TD>
35      <TD>Size of the input data.</TD>
36    </TR>
37    <TR>
38      <TD><B><I>key</I></B></TD>
39      <TD>Pointer to key text string</TD>
40    </TR>
41    <TR>
42      <TD><B><I>keylen</I></B></TD>
43      <TD>Size of the key string.</TD>
44    </TR>
45  </TBODY>
46</TABLE>
47<H2>Return Values</H2>
48<P>None.</P>
49<H2>Description</H2>
50<P>Performs HMAC-SHA1 calculations.</P>
51<P>This is a utility function that successively calls the <CODE><A href="SVC_HMACSHA1Init.html">SVC_HMACSHA1Init()</A></CODE>, <CODE><A href="SVC_HMACSHA1Update.html">SVC_HMACSHA1Update()</A></CODE>, and <CODE><A href="SVC_HMACSHA1GetHash.html">SVC_HMACSHA1GetHash()</A></CODE> functions. Internally, the <CODE><A href="SVC_HMACSHA1Init.html">SVCHMACSHA1Context</A></CODE> structure is allocated to the stack, so make sure you have sufficient stack space when calling the function.</P>
52<P>The length of the generated SHA-1 value is 160 bits, or <CODE>SVC_SHA1_DIGEST_SIZE</CODE> (= 20) bytes. Use the <B><I>md</I></B> argument to pass an area that can store a value of this size.</P>
53<P>Specify the input data using <B><I>data</I></B> and <B><I>len</I></B>. Any size and alignment position can be used.</P>
54<P>Specify the key string using  <B><I>key</I></B> and <B><I>keylen</I></B>.</P>
55<H2>See Also</H2>
56<P><A href="SVC_SHA1Init.html"><CODE>SVC_HMACSHA1Init</CODE></A><CODE>, <A href="SVC_SHA1Update.html">SVC_HMACSHA1Update</A>, <A href="SVC_SHA1GetHash.html">SVC_HMACSHA1GetHash</A>, <A href="SVC_CalcSHA1.html">SVC_CalcSHA1</A></CODE></P>
57<H2>Revision History</H2>
58<P>2007/10/24 Initial version.</P>
59<hr><p>CONFIDENTIAL</p></body>
60</HTML>