Home | History | Annotate | Download | only in dfsan
      1 fun:main=uninstrumented
      2 fun:main=discard
      3 
      4 ###############################################################################
      5 # DFSan interface functions
      6 ###############################################################################
      7 fun:dfsan_union=uninstrumented
      8 fun:dfsan_union=discard
      9 fun:dfsan_create_label=uninstrumented
     10 fun:dfsan_create_label=discard
     11 fun:dfsan_set_label=uninstrumented
     12 fun:dfsan_set_label=discard
     13 fun:dfsan_add_label=uninstrumented
     14 fun:dfsan_add_label=discard
     15 fun:dfsan_get_label=uninstrumented
     16 fun:dfsan_get_label=custom
     17 fun:dfsan_read_label=uninstrumented
     18 fun:dfsan_read_label=discard
     19 fun:dfsan_get_label_count=uninstrumented
     20 fun:dfsan_get_label_count=discard
     21 fun:dfsan_get_label_info=uninstrumented
     22 fun:dfsan_get_label_info=discard
     23 fun:dfsan_has_label=uninstrumented
     24 fun:dfsan_has_label=discard
     25 fun:dfsan_has_label_with_desc=uninstrumented
     26 fun:dfsan_has_label_with_desc=discard
     27 fun:dfsan_set_write_callback=uninstrumented
     28 fun:dfsan_set_write_callback=custom
     29 
     30 ###############################################################################
     31 # glibc
     32 ###############################################################################
     33 fun:malloc=discard
     34 fun:realloc=discard
     35 fun:free=discard
     36 
     37 # Functions that return a value that depends on the input, but the output might
     38 # not be necessarily data-dependent on the input.
     39 fun:isalpha=functional
     40 fun:isdigit=functional
     41 fun:isprint=functional
     42 fun:isxdigit=functional
     43 fun:isalnum=functional
     44 fun:ispunct=functional
     45 fun:isspace=functional
     46 fun:tolower=functional
     47 fun:toupper=functional
     48 
     49 # Functions that return a value that is data-dependent on the input.
     50 fun:btowc=functional
     51 fun:exp=functional
     52 fun:exp2=functional
     53 fun:fabs=functional
     54 fun:finite=functional
     55 fun:floor=functional
     56 fun:fmod=functional
     57 fun:isinf=functional
     58 fun:isnan=functional
     59 fun:log=functional
     60 fun:modf=functional
     61 fun:pow=functional
     62 fun:round=functional
     63 fun:sqrt=functional
     64 fun:wctob=functional
     65 
     66 # Functions that produce an output that does not depend on the input (shadow is
     67 # zeroed automatically).
     68 fun:__assert_fail=discard
     69 fun:__ctype_b_loc=discard
     70 fun:__cxa_atexit=discard
     71 fun:__errno_location=discard
     72 fun:__newlocale=discard
     73 fun:__sbrk=discard
     74 fun:__sigsetjmp=discard
     75 fun:__uselocale=discard
     76 fun:__wctype_l=discard
     77 fun:access=discard
     78 fun:alarm=discard
     79 fun:atexit=discard
     80 fun:bind=discard
     81 fun:chdir=discard
     82 fun:close=discard
     83 fun:closedir=discard
     84 fun:connect=discard
     85 fun:dladdr=discard
     86 fun:dlclose=discard
     87 fun:fclose=discard
     88 fun:feof=discard
     89 fun:ferror=discard
     90 fun:fflush=discard
     91 fun:fileno=discard
     92 fun:fopen=discard
     93 fun:fprintf=discard
     94 fun:fputc=discard
     95 fun:fputc=discard
     96 fun:fputs=discard
     97 fun:fputs=discard
     98 fun:fseek=discard
     99 fun:ftell=discard
    100 fun:fwrite=discard
    101 fun:getenv=discard
    102 fun:getuid=discard
    103 fun:geteuid=discard
    104 fun:getpagesize=discard
    105 fun:getpid=discard
    106 fun:kill=discard
    107 fun:listen=discard
    108 fun:lseek=discard
    109 fun:mkdir=discard
    110 fun:mmap=discard
    111 fun:munmap=discard
    112 fun:open=discard
    113 fun:pipe=discard
    114 fun:posix_fadvise=discard
    115 fun:posix_memalign=discard
    116 fun:prctl=discard
    117 fun:printf=discard
    118 fun:pthread_sigmask=discard
    119 fun:putc=discard
    120 fun:putchar=discard
    121 fun:puts=discard
    122 fun:rand=discard
    123 fun:random=discard
    124 fun:remove=discard
    125 fun:sched_getcpu=discard
    126 fun:sched_get_priority_max=discard
    127 fun:sched_setaffinity=discard
    128 fun:sched_yield=discard
    129 fun:sem_destroy=discard
    130 fun:sem_init=discard
    131 fun:sem_post=discard
    132 fun:sem_wait=discard
    133 fun:send=discard
    134 fun:sendmsg=discard
    135 fun:sendto=discard
    136 fun:setsockopt=discard
    137 fun:shutdown=discard
    138 fun:sleep=discard
    139 fun:socket=discard
    140 fun:strerror=discard
    141 fun:strspn=discard
    142 fun:strcspn=discard
    143 fun:symlink=discard
    144 fun:syscall=discard
    145 fun:unlink=discard
    146 fun:uselocale=discard
    147 
    148 # Functions that produce output does not depend on the input (need to zero the
    149 # shadow manually).
    150 fun:calloc=custom
    151 fun:clock_gettime=custom
    152 fun:dlopen=custom
    153 fun:fgets=custom
    154 fun:fstat=custom
    155 fun:getcwd=custom
    156 fun:get_current_dir_name=custom
    157 fun:gethostname=custom
    158 fun:getrlimit=custom
    159 fun:getrusage=custom
    160 fun:nanosleep=custom
    161 fun:pread=custom
    162 fun:read=custom
    163 fun:socketpair=custom
    164 fun:stat=custom
    165 fun:time=custom
    166 
    167 # Functions that produce an output that depend on the input (propagate the
    168 # shadow manually).
    169 fun:ctime_r=custom
    170 fun:inet_pton=custom
    171 fun:localtime_r=custom
    172 fun:memcpy=custom
    173 fun:memset=custom
    174 fun:strcpy=custom
    175 fun:strdup=custom
    176 fun:strncpy=custom
    177 fun:strtod=custom
    178 fun:strtol=custom
    179 fun:strtoll=custom
    180 fun:strtoul=custom
    181 fun:strtoull=custom
    182 
    183 # Functions that produce an output that is computed from the input, but is not
    184 # necessarily data dependent.
    185 fun:memchr=custom
    186 fun:memcmp=custom
    187 fun:strcasecmp=custom
    188 fun:strchr=custom
    189 fun:strcmp=custom
    190 fun:strlen=custom
    191 fun:strncasecmp=custom
    192 fun:strncmp=custom
    193 fun:strrchr=custom
    194 fun:strstr=custom
    195 
    196 # Functions which take action based on global state, such as running a callback
    197 # set by a sepperate function.
    198 fun:write=custom
    199 
    200 # Functions that take a callback (wrap the callback manually).
    201 fun:dl_iterate_phdr=custom
    202 
    203 fun:getpwuid_r=custom
    204 fun:poll=custom
    205 fun:sched_getaffinity=custom
    206 fun:select=custom
    207 fun:sigemptyset=custom
    208 fun:sigaction=custom
    209 fun:gettimeofday=custom
    210 
    211 # TODO: custom
    212 fun:snprintf=discard
    213 fun:vsnprintf=discard
    214 fun:asprintf=discard
    215 fun:qsort=discard
    216 
    217 ###############################################################################
    218 # pthread
    219 ###############################################################################
    220 fun:pthread_equal=discard
    221 fun:pthread_getspecific=discard
    222 fun:pthread_key_create=discard
    223 fun:pthread_key_delete=discard
    224 fun:pthread_mutex_destroy=discard
    225 fun:pthread_mutex_init=discard
    226 fun:pthread_mutex_lock=discard
    227 fun:pthread_mutex_trylock=discard
    228 fun:pthread_mutex_unlock=discard
    229 fun:pthread_mutexattr_destroy=discard
    230 fun:pthread_mutexattr_init=discard
    231 fun:pthread_mutexattr_settype=discard
    232 fun:pthread_once=discard
    233 fun:pthread_self=discard
    234 fun:pthread_setspecific=discard
    235 
    236 # Functions that take a callback (wrap the callback manually).
    237 fun:pthread_create=custom
    238