1*c9945492SAndroid Build Coastguard Worker #include <stdlib.h> 2*c9945492SAndroid Build Coastguard Worker #include <string.h> 3*c9945492SAndroid Build Coastguard Worker strndup(const char * s,size_t n)4*c9945492SAndroid Build Coastguard Workerchar *strndup(const char *s, size_t n) 5*c9945492SAndroid Build Coastguard Worker { 6*c9945492SAndroid Build Coastguard Worker size_t l = strnlen(s, n); 7*c9945492SAndroid Build Coastguard Worker char *d = malloc(l+1); 8*c9945492SAndroid Build Coastguard Worker if (!d) return NULL; 9*c9945492SAndroid Build Coastguard Worker memcpy(d, s, l); 10*c9945492SAndroid Build Coastguard Worker d[l] = 0; 11*c9945492SAndroid Build Coastguard Worker return d; 12*c9945492SAndroid Build Coastguard Worker } 13