Skip to content
Snippets Groups Projects
Select Git revision
  • 18eaed2fc539e3bfc5ee3f718de79a10eda67ed3
  • master default protected
  • streebog
  • gost28147
  • master-updates
  • ed448
  • shake256
  • curve448
  • ecc-sqrt
  • gosthash94cp
  • cmac64
  • block16-refactor
  • siv-mode
  • cmac-layout
  • delete-des-compat
  • delete-rsa_blind
  • aes-struct-layout
  • release-3.4-fixes
  • struct-layout
  • attribute-deprecated
  • rename-data-symbols
  • nettle_3.5.1_release_20190627
  • nettle_3.5_release_20190626
  • nettle_3.5rc1
  • nettle_3.4.1_release_20181204
  • nettle_3.4.1rc1
  • nettle_3.4_release_20171119
  • nettle_3.4rc2
  • nettle_3.4rc1
  • nettle_3.3_release_20161001
  • nettle_3.2_release_20160128
  • nettle_3.1.1_release_20150424
  • nettle_3.1_release_20150407
  • nettle_3.1rc3
  • nettle_3.1rc2
  • nettle_3.1rc1
  • nettle_3.0_release_20140607
  • nettle_2.7.1_release_20130528
  • nettle_2.7_release_20130424
  • nettle_2.6_release_20130116
  • nettle_2.5_release_20120707
41 results

serpentsboxes.h

Blame
  • Forked from Nettle / nettle
    Source project has a limited visibility.
    pike_memory.h 1.44 KiB
    /*\
    ||| This file a part of Pike, and is copyright by Fredrik Hubinette
    ||| Pike is distributed as GPL (General Public License)
    ||| See the files COPYING and DISCLAIMER for more information.
    \*/
    
    /*
     * $Id: pike_memory.h,v 1.4 1998/03/28 15:05:02 grubba Exp $
     */
    #ifndef MEMORY_H
    #define MEMORY_H
    
    #include "global.h"
    
    #define MEMSEARCH_LINKS 512
    
    struct link
    {
      struct link *next;
      INT32 key, offset;
    };
    
    enum methods {
      no_search,
      use_memchr,
      memchr_and_memcmp,
      hubbe_search
    };
    
    struct mem_searcher
    {
      enum methods method;
      char *needle;
      SIZE_T needlelen;
      unsigned INT32 hsize, max;
      struct link links[MEMSEARCH_LINKS];
      struct link *set[MEMSEARCH_LINKS];
    };
    
    /* Prototypes begin here */
    extern char *debug_xalloc(long);
    void swap(char *a, char *b, INT32 size);
    void reverse(char *memory, INT32 nitems, INT32 size);
    void reorder(char *memory, INT32 nitems, INT32 size,INT32 *order);
    unsigned INT32 hashmem(const unsigned char *a,INT32 len,INT32 mlen);
    unsigned INT32 hashstr(const unsigned char *str,INT32 maxn);
    void init_memsearch(struct mem_searcher *s,
    		    char *needle,
    		    SIZE_T needlelen,
    		    SIZE_T max_haystacklen);
    char *memory_search(struct mem_searcher *s,
    		    char *haystack,
    		    SIZE_T haystacklen);
    char *my_memmem(char *needle,
    		SIZE_T needlelen,
    		char *haystack,
    		SIZE_T haystacklen);
    void memfill(char *to,
    	     INT32 tolen,
    	     char *from,
    	     INT32 fromlen,
    	     INT32 offset);
    /* Prototypes end here */
    
    #endif