lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 14 Aug 2007 14:59:22 -0700 From: "David Schwartz" <davids@...master.com> To: <linux-kernel@...r.kernel.org> Subject: RE: why use memcpy when memmove is there? > Hi, All > > We were looking at "[kernel]/lib/string.c" > (http://lxr.linux.no/source/lib/string.c#L500) > > memcpy copies a part of memory to some other location > but It will not work for all cases of overlapping > blocks.(if the start of destination block falls > between the source block) > > while memove copes with overlapping areas. > > then why is memcpy present in the sources can't we > simply do > > "#define memcpy memmove" in include/linux/string.h > > or am I missing something? Suppose you have two vehicles, an economy car and a semi truck. The truck can go everyplace the car can go, and the truck can carry a bigger load. So why would you ever use the car? Answer: The car uses less gas and you don't always need a truck. Think about what it takes to be able to copy one block of memory to another location when those locations might overlap. You don't always need that. DS - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists