Introduce EIBC_RETURN_UINT*
[bcusdk.git] / eibd / examples / mread.c
blob068027f9b915317f08c5405543861a7be27f2dbf
1 /*
2 EIB Demo program - read device memory
3 Copyright (C) 2005-2007 Martin Koegler <mkoegler@auto.tuwien.ac.at>
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 #include "common.h"
21 int
22 main (int ac, char *ag[])
24 int len, addr;
25 EIBConnection *con;
26 uchar buf[255];
27 eibaddr_t dest;
28 char *prog = ag[0];
30 parseKey (&ac, &ag);
31 if (ac != 5)
32 die ("usage: %s url [-k key] eibaddr addr count", prog);
33 con = EIBSocketURL (ag[1]);
34 if (!con)
35 die ("Open failed");
36 dest = readaddr (ag[2]);
37 addr = readHex (ag[3]);
38 len = atoi (ag[4]);
40 if (EIB_MC_Connect (con, dest) == -1)
41 die ("Connect failed");
42 auth (con);
44 len = EIB_MC_Read (con, addr, len, buf);
45 if (len == -1)
46 die ("Read failed");
47 printHex (len, buf);
49 EIBClose (con);
50 return 0;