FreeRDP
TimeZoneIanaAbbrevMap.c File Reference
#include "TimeZoneIanaAbbrevMap.h"
#include <stdlib.h>
#include <dirent.h>
#include <time.h>
#include <sys/stat.h>
#include <unistd.h>
#include <winpr/string.h>

Functions

static void append (const char *iana, const char *sname)
 
static void append_timezone (const char *dir, const char *name)
 
static void handle_link (const char *base, const char *dir, const char *name)
 
static char * topath (const char *base, const char *bname, const char *name)
 
static void iterate_subdir_recursive (const char *base, const char *bname, const char *name)
 
static char * get_link_target (const char *base, const char *dir, const char *name)
 
static void TimeZoneIanaAbbrevCleanup (void)
 
static void TimeZoneIanaAbbrevInitialize (void)
 
size_t TimeZoneIanaAbbrevGet (const char *abbrev, const char **list, size_t listsize)
 returns a list of IANA names for a short timezone name More...
 

Variables

static const char * zonepath = "/usr/share/zoneinfo"
 
static TimeZoneInanaAbbrevMapEntry * TimeZoneIanaAbbrevMap = NULL
 
static size_t TimeZoneIanaAbbrevMapSize = 0
 

Function Documentation

◆ append()

static void append ( const char *  iana,
const char *  sname 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ append_timezone()

static void append_timezone ( const char *  dir,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_link_target()

static char* get_link_target ( const char *  base,
const char *  dir,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ handle_link()

void handle_link ( const char *  base,
const char *  dir,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ iterate_subdir_recursive()

static void iterate_subdir_recursive ( const char *  base,
const char *  bname,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ TimeZoneIanaAbbrevCleanup()

static void TimeZoneIanaAbbrevCleanup ( void  )
static
Here is the caller graph for this function:

◆ TimeZoneIanaAbbrevGet()

size_t TimeZoneIanaAbbrevGet ( const char *  abbrev,
const char **  list,
size_t  listsize 
)

returns a list of IANA names for a short timezone name

WinPR: Windows Portable Runtime Time Zone

Copyright 2024 Armin Novak anova.nosp@m.k@th.nosp@m.incas.nosp@m.t.co.nosp@m.m Copyright 2024 Thincast Technologies GmbH

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. !

Parameters
abbrevThe short name to look for
listThe list to hold the const IANA names
listsizeThe size of the list. Set to 0 to only get the required size.
Returns
The number of mappings found
Here is the call graph for this function:
Here is the caller graph for this function:

◆ TimeZoneIanaAbbrevInitialize()

static void TimeZoneIanaAbbrevInitialize ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ topath()

static char* topath ( const char *  base,
const char *  bname,
const char *  name 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ TimeZoneIanaAbbrevMap

TimeZoneInanaAbbrevMapEntry* TimeZoneIanaAbbrevMap = NULL
static

◆ TimeZoneIanaAbbrevMapSize

size_t TimeZoneIanaAbbrevMapSize = 0
static

◆ zonepath

const char* zonepath = "/usr/share/zoneinfo"
static