1*10898Sroland.mainz@nrubsig.org /*********************************************************************** 2*10898Sroland.mainz@nrubsig.org * * 3*10898Sroland.mainz@nrubsig.org * This software is part of the ast package * 4*10898Sroland.mainz@nrubsig.org * Copyright (c) 1985-2009 AT&T Intellectual Property * 5*10898Sroland.mainz@nrubsig.org * and is licensed under the * 6*10898Sroland.mainz@nrubsig.org * Common Public License, Version 1.0 * 7*10898Sroland.mainz@nrubsig.org * by AT&T Intellectual Property * 8*10898Sroland.mainz@nrubsig.org * * 9*10898Sroland.mainz@nrubsig.org * A copy of the License is available at * 10*10898Sroland.mainz@nrubsig.org * http://www.opensource.org/licenses/cpl1.0.txt * 11*10898Sroland.mainz@nrubsig.org * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * 12*10898Sroland.mainz@nrubsig.org * * 13*10898Sroland.mainz@nrubsig.org * Information and Software Systems Research * 14*10898Sroland.mainz@nrubsig.org * AT&T Research * 15*10898Sroland.mainz@nrubsig.org * Florham Park NJ * 16*10898Sroland.mainz@nrubsig.org * * 17*10898Sroland.mainz@nrubsig.org * Glenn Fowler <gsf@research.att.com> * 18*10898Sroland.mainz@nrubsig.org * David Korn <dgk@research.att.com> * 19*10898Sroland.mainz@nrubsig.org * Phong Vo <kpv@research.att.com> * 20*10898Sroland.mainz@nrubsig.org * * 21*10898Sroland.mainz@nrubsig.org ***********************************************************************/ 22*10898Sroland.mainz@nrubsig.org #pragma prototyped 23*10898Sroland.mainz@nrubsig.org 24*10898Sroland.mainz@nrubsig.org #include <ast.h> 25*10898Sroland.mainz@nrubsig.org 26*10898Sroland.mainz@nrubsig.org /* 27*10898Sroland.mainz@nrubsig.org * path prefix strcmp(3) -- longest first! 28*10898Sroland.mainz@nrubsig.org */ 29*10898Sroland.mainz@nrubsig.org 30*10898Sroland.mainz@nrubsig.org int 31*10898Sroland.mainz@nrubsig.org strpcmp(register const char* a, register const char* b) 32*10898Sroland.mainz@nrubsig.org { 33*10898Sroland.mainz@nrubsig.org while (*a == *b) 34*10898Sroland.mainz@nrubsig.org { 35*10898Sroland.mainz@nrubsig.org if (!*a++) 36*10898Sroland.mainz@nrubsig.org return 0; 37*10898Sroland.mainz@nrubsig.org b++; 38*10898Sroland.mainz@nrubsig.org } 39*10898Sroland.mainz@nrubsig.org if (*a == 0 && *b == '/') 40*10898Sroland.mainz@nrubsig.org return 1; 41*10898Sroland.mainz@nrubsig.org if (*a == '/' && *b == 0) 42*10898Sroland.mainz@nrubsig.org return -1; 43*10898Sroland.mainz@nrubsig.org return (a < b) ? -1 : 1; 44*10898Sroland.mainz@nrubsig.org } 45