xor.h 652 B

1234567891011121314151617181920212223
  1. #ifndef _XOR_H
  2. #define _XOR_H
  3. #define MAX_XOR_BLOCKS 4
  4. extern void xor_blocks(unsigned int count, unsigned int bytes,
  5. void *dest, void **srcs);
  6. struct xor_block_template {
  7. struct xor_block_template *next;
  8. const char *name;
  9. int speed;
  10. void (*do_2)(unsigned long, unsigned long *, unsigned long *);
  11. void (*do_3)(unsigned long, unsigned long *, unsigned long *,
  12. unsigned long *);
  13. void (*do_4)(unsigned long, unsigned long *, unsigned long *,
  14. unsigned long *, unsigned long *);
  15. void (*do_5)(unsigned long, unsigned long *, unsigned long *,
  16. unsigned long *, unsigned long *, unsigned long *);
  17. };
  18. #endif