PageRenderTime 11ms CodeModel.GetById 7ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/security/nss/lib/freebl/mpi/utils/dec2hex.c

http://github.com/zpao/v8monkey
C | 71 lines | 22 code | 8 blank | 41 comment | 1 complexity | 29b8c998791a366c7b71951ea78bf73b MD5 | raw file
 1/*
 2 *  dec2hex.c
 3 *
 4 *  Convert decimal integers into hexadecimal
 5 *
 6 * ***** BEGIN LICENSE BLOCK *****
 7 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
 8 *
 9 * The contents of this file are subject to the Mozilla Public License Version
10 * 1.1 (the "License"); you may not use this file except in compliance with
11 * the License. You may obtain a copy of the License at
12 * http://www.mozilla.org/MPL/
13 *
14 * Software distributed under the License is distributed on an "AS IS" basis,
15 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
16 * for the specific language governing rights and limitations under the
17 * License.
18 *
19 * The Original Code is the MPI Arbitrary Precision Integer Arithmetic library.
20 *
21 * The Initial Developer of the Original Code is
22 * Michael J. Fromberger.
23 * Portions created by the Initial Developer are Copyright (C) 1998
24 * the Initial Developer. All Rights Reserved.
25 *
26 * Contributor(s):
27 *
28 * Alternatively, the contents of this file may be used under the terms of
29 * either the GNU General Public License Version 2 or later (the "GPL"), or
30 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
31 * in which case the provisions of the GPL or the LGPL are applicable instead
32 * of those above. If you wish to allow use of your version of this file only
33 * under the terms of either the GPL or the LGPL, and not to allow others to
34 * use your version of this file under the terms of the MPL, indicate your
35 * decision by deleting the provisions above and replace them with the notice
36 * and other provisions required by the GPL or the LGPL. If you do not delete
37 * the provisions above, a recipient may use your version of this file under
38 * the terms of any one of the MPL, the GPL or the LGPL.
39 *
40 * ***** END LICENSE BLOCK ***** */
41/* $Id: dec2hex.c,v 1.3 2004/04/27 23:04:37 gerv%gerv.net Exp $ */
42
43#include <stdio.h>
44#include <stdlib.h>
45#include <string.h>
46
47#include "mpi.h"
48
49int main(int argc, char *argv[])
50{
51  mp_int  a;
52  char   *buf;
53  int     len;
54
55  if(argc < 2) {
56    fprintf(stderr, "Usage: %s <a>\n", argv[0]);
57    return 1;
58  }
59
60  mp_init(&a); mp_read_radix(&a, argv[1], 10);
61  len = mp_radix_size(&a, 16);
62  buf = malloc(len);
63  mp_toradix(&a, buf, 16);
64
65  printf("%s\n", buf);
66
67  free(buf);
68  mp_clear(&a);
69
70  return 0;
71}