   {    ZoneSpec * zoneSpec;     zoneSpec = ( ZoneSpec* ) malloc( sizeof( ZoneSpec ) );     if ( !zoneSpec )     {     LogMsg("ERROR: memory allocation failure");     YYABORT;     }     strncpy( zoneSpec->name, $0, sizeof( zoneSpec->name ) );    zoneSpec->type = g_zoneSpec.type;    strcpy( zoneSpec->key, g_zoneSpec.key );    zoneSpec->allowUpdate = g_zoneSpec.allowUpdate;    zoneSpec->allowQuery = g_zoneSpec.allowQuery;     zoneSpec->next = g_zones;    g_zones = zoneSpec;   }   