external.c revision 8cd45542f2a452ca0dab13d8b2d5cfa876ccbebc