49 lines
1.3 KiB
C
49 lines
1.3 KiB
C
|
/*
|
||
|
* Copyright 2010 Kshitij Kulshreshtha <kkhere.geo@gmail.com>
|
||
|
*
|
||
|
* 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.
|
||
|
*
|
||
|
* Compatibility file for Linux wireless for kernels 2.6.35.
|
||
|
*/
|
||
|
|
||
|
#include <linux/compat.h>
|
||
|
#include <linux/ctype.h>
|
||
|
|
||
|
/**
|
||
|
* hex_to_bin - convert a hex digit to its real value
|
||
|
* @ch: ascii character represents hex digit
|
||
|
*
|
||
|
* hex_to_bin() converts one hex digit to its actual value or -1 in case of bad
|
||
|
* input.
|
||
|
*/
|
||
|
int compat_hex_to_bin(char ch)
|
||
|
{
|
||
|
if ((ch >= '0') && (ch <= '9'))
|
||
|
return ch - '0';
|
||
|
ch = tolower(ch);
|
||
|
if ((ch >= 'a') && (ch <= 'f'))
|
||
|
return ch - 'a' + 10;
|
||
|
return -1;
|
||
|
}
|
||
|
EXPORT_SYMBOL_GPL(compat_hex_to_bin);
|
||
|
|
||
|
/**
|
||
|
* noop_llseek - No Operation Performed llseek implementation
|
||
|
* @file: file structure to seek on
|
||
|
* @offset: file offset to seek to
|
||
|
* @origin: type of seek
|
||
|
*
|
||
|
* This is an implementation of ->llseek useable for the rare special case when
|
||
|
* userspace expects the seek to succeed but the (device) file is actually not
|
||
|
* able to perform the seek. In this case you use noop_llseek() instead of
|
||
|
* falling back to the default implementation of ->llseek.
|
||
|
*/
|
||
|
loff_t noop_llseek(struct file *file, loff_t offset, int origin)
|
||
|
{
|
||
|
return file->f_pos;
|
||
|
}
|
||
|
EXPORT_SYMBOL_GPL(noop_llseek);
|
||
|
|