common.c File Reference

wpa_supplicant/hostapd / common helper functions, etc. More...

#include "includes.h"
#include "common.h"
Include dependency graph for common.c:

Go to the source code of this file.

Functions

int hwaddr_aton (const char *txt, u8 *addr)
 Convert ASCII string to MAC address.
int hexstr2bin (const char *hex, u8 *buf, size_t len)
 Convert ASCII hex string into binary data.
void inc_byte_array (u8 *counter, size_t len)
 Increment arbitrary length byte array by one.
void wpa_get_ntp_timestamp (u8 *buf)
int wpa_snprintf_hex (char *buf, size_t buf_size, const u8 *data, size_t len)
 Print data as a hex string into a buffer.
int wpa_snprintf_hex_uppercase (char *buf, size_t buf_size, const u8 *data, size_t len)
 Print data as a upper case hex string into buf.
const char * wpa_ssid_txt (const u8 *ssid, size_t ssid_len)
 Convert SSID to a printable string.
void * __hide_aliasing_typecast (void *foo)

Detailed Description

wpa_supplicant/hostapd / common helper functions, etc.

Copyright
Copyright (c) 2002-2007, Jouni Malinen <j@w1.fi>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Alternatively, this software may be distributed under the terms of BSD license.

See README and COPYING for more details.

Definition in file common.c.


Function Documentation

int hexstr2bin ( const char *  hex,
u8 *  buf,
size_t  len 
)

Convert ASCII hex string into binary data.

Parameters:
hex ASCII hex string (e.g., "01ab")
buf Buffer for the binary data
len Length of the text to convert in bytes (of buf); hex will be double this size
Returns:
0 on success, -1 on failure (invalid hex string)

Definition at line 84 of file common.c.

int hwaddr_aton ( const char *  txt,
u8 *  addr 
)

Convert ASCII string to MAC address.

Parameters:
txt MAC address as a string (e.g., "00:11:22:33:44:55")
addr Buffer for the MAC address (ETH_ALEN = 6 bytes)
Returns:
0 on success, -1 on failure (e.g., string not a MAC address)

Definition at line 53 of file common.c.

void inc_byte_array ( u8 *  counter,
size_t  len 
)

Increment arbitrary length byte array by one.

Parameters:
counter Pointer to byte array
len Length of the counter in bytes

This function increments the last byte of the counter by one and continues rolling over to more significant bytes if the byte was incremented from 0xff to 0x00.

Definition at line 112 of file common.c.

int wpa_snprintf_hex ( char *  buf,
size_t  buf_size,
const u8 *  data,
size_t  len 
)

Print data as a hex string into a buffer.

Parameters:
buf Memory area to use as the output buffer
buf_size Maximum buffer size in bytes (should be at least 2 * len + 1)
data Data to be printed
len Length of data in bytes
Returns:
Number of bytes written

Definition at line 173 of file common.c.

int wpa_snprintf_hex_uppercase ( char *  buf,
size_t  buf_size,
const u8 *  data,
size_t  len 
)

Print data as a upper case hex string into buf.

Parameters:
buf Memory area to use as the output buffer
buf_size Maximum buffer size in bytes (should be at least 2 * len + 1)
data Data to be printed
len Length of data in bytes
Returns:
Number of bytes written

Definition at line 188 of file common.c.

const char* wpa_ssid_txt ( const u8 *  ssid,
size_t  ssid_len 
)

Convert SSID to a printable string.

Parameters:
ssid SSID (32-octet string)
ssid_len Length of ssid in octets
Returns:
Pointer to a printable string

This function can be used to convert SSIDs into printable form. In most cases, SSIDs do not use unprintable characters, but IEEE 802.11 standard does not limit the used character set, so anything could be used in an SSID.

This function uses a static buffer, so only one call can be used at the time, i.e., this is not re-entrant and the returned buffer must be used before calling this again.

Definition at line 321 of file common.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on Sat Nov 21 23:23:30 2009 for hostapd by  doxygen 1.6.1