LCOV - code coverage report
Current view: top level - include/crypto - b128ops.h (source / functions) Hit Total Coverage
Test: Real Lines: 0 2 0.0 %
Date: 2020-10-17 15:46:16 Functions: 0 0 -
Legend: Neither, QEMU, Real, Both Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : /* b128ops.h - common 128-bit block operations
       2                 :            :  *
       3                 :            :  * Copyright (c) 2003, Dr Brian Gladman, Worcester, UK.
       4                 :            :  * Copyright (c) 2006, Rik Snel <rsnel@cube.dyndns.org>
       5                 :            :  *
       6                 :            :  * Based on Dr Brian Gladman's (GPL'd) work published at
       7                 :            :  * http://fp.gladman.plus.com/cryptography_technology/index.htm
       8                 :            :  * See the original copyright notice below.
       9                 :            :  *
      10                 :            :  * This program is free software; you can redistribute it and/or modify it
      11                 :            :  * under the terms of the GNU General Public License as published by the Free
      12                 :            :  * Software Foundation; either version 2 of the License, or (at your option)
      13                 :            :  * any later version.
      14                 :            :  */
      15                 :            : /*
      16                 :            :  ---------------------------------------------------------------------------
      17                 :            :  Copyright (c) 2003, Dr Brian Gladman, Worcester, UK.   All rights reserved.
      18                 :            : 
      19                 :            :  LICENSE TERMS
      20                 :            : 
      21                 :            :  The free distribution and use of this software in both source and binary
      22                 :            :  form is allowed (with or without changes) provided that:
      23                 :            : 
      24                 :            :    1. distributions of this source code include the above copyright
      25                 :            :       notice, this list of conditions and the following disclaimer;
      26                 :            : 
      27                 :            :    2. distributions in binary form include the above copyright
      28                 :            :       notice, this list of conditions and the following disclaimer
      29                 :            :       in the documentation and/or other associated materials;
      30                 :            : 
      31                 :            :    3. the copyright holder's name is not used to endorse products
      32                 :            :       built using this software without specific written permission.
      33                 :            : 
      34                 :            :  ALTERNATIVELY, provided that this notice is retained in full, this product
      35                 :            :  may be distributed under the terms of the GNU General Public License (GPL),
      36                 :            :  in which case the provisions of the GPL apply INSTEAD OF those given above.
      37                 :            : 
      38                 :            :  DISCLAIMER
      39                 :            : 
      40                 :            :  This software is provided 'as is' with no explicit or implied warranties
      41                 :            :  in respect of its properties, including, but not limited to, correctness
      42                 :            :  and/or fitness for purpose.
      43                 :            :  ---------------------------------------------------------------------------
      44                 :            :  Issue Date: 13/06/2006
      45                 :            : */
      46                 :            : 
      47                 :            : #ifndef _CRYPTO_B128OPS_H
      48                 :            : #define _CRYPTO_B128OPS_H
      49                 :            : 
      50                 :            : #include <linux/types.h>
      51                 :            : 
      52                 :            : typedef struct {
      53                 :            :         u64 a, b;
      54                 :            : } u128;
      55                 :            : 
      56                 :            : typedef struct {
      57                 :            :         __be64 a, b;
      58                 :            : } be128;
      59                 :            : 
      60                 :            : typedef struct {
      61                 :            :         __le64 b, a;
      62                 :            : } le128;
      63                 :            : 
      64                 :            : static inline void u128_xor(u128 *r, const u128 *p, const u128 *q)
      65                 :            : {
      66                 :          0 :         r->a = p->a ^ q->a;
      67                 :          0 :         r->b = p->b ^ q->b;
      68                 :            : }
      69                 :            : 
      70                 :            : static inline void be128_xor(be128 *r, const be128 *p, const be128 *q)
      71                 :            : {
      72                 :            :         u128_xor((u128 *)r, (u128 *)p, (u128 *)q);
      73                 :            : }
      74                 :            : 
      75                 :            : static inline void le128_xor(le128 *r, const le128 *p, const le128 *q)
      76                 :            : {
      77                 :            :         u128_xor((u128 *)r, (u128 *)p, (u128 *)q);
      78                 :            : }
      79                 :            : 
      80                 :            : #endif /* _CRYPTO_B128OPS_H */
    

Generated by: LCOV version 1.14