Skip to content

Commit

Permalink
[nfcd] Expose nfc_system_language() to plugins. JB#43873
Browse files Browse the repository at this point in the history
  • Loading branch information
monich committed Jul 18, 2019
1 parent 57f2687 commit 62331ee
Show file tree
Hide file tree
Showing 8 changed files with 70 additions and 18 deletions.
62 changes: 62 additions & 0 deletions core/include/nfc_system.h
@@ -0,0 +1,62 @@
/*
* Copyright (C) 2019 Jolla Ltd.
* Copyright (C) 2019 Slava Monich <slava.monich@jolla.com>
*
* You may use this file under the terms of BSD license as follows:
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the names of the copyright holders nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/

#ifndef NFC_SYSTEM_H
#define NFC_SYSTEM_H

#include "nfc_types.h"

/*
* Note: locale syntax is language[_territory] and ISO/IANA syntax is
* language[-territory].
*
* Caller should free NfcLanguage returned by nfc_system_language() with
* g_free() - the whole thing gets allocated from a single memory block.
*/
struct nfc_language {
const char* language;
const char* territory;
};

NfcLanguage*
nfc_system_language(
void); /* Since 1.0.15 */

#endif /* NFC_SYSTEM_H */

/*
* Local Variables:
* mode: C
* c-basic-offset: 4
* indent-tabs-mode: nil
* End:
*/
1 change: 1 addition & 0 deletions core/include/nfc_types.h
Expand Up @@ -40,6 +40,7 @@ G_BEGIN_DECLS
/* Types */

typedef struct nfc_adapter NfcAdapter;
typedef struct nfc_language NfcLanguage; /* Since 1.0.15 */
typedef struct nfc_ndef_rec NfcNdefRec;
typedef struct nfc_manager NfcManager;
typedef struct nfc_plugin NfcPlugin;
Expand Down
1 change: 1 addition & 0 deletions core/src/nfc_ndef_rec_t.c
Expand Up @@ -32,6 +32,7 @@

#include "nfc_ndef_p.h"
#include "nfc_util.h"
#include "nfc_system.h"
#include "nfc_log.h"

#include <gutil_misc.h>
Expand Down
1 change: 1 addition & 0 deletions core/src/nfc_util.c
Expand Up @@ -31,6 +31,7 @@
*/

#include "nfc_util.h"
#include "nfc_system.h"
#include "nfc_log.h"

#include <gutil_misc.h>
Expand Down
17 changes: 2 additions & 15 deletions core/src/nfc_util.h
Expand Up @@ -35,17 +35,8 @@

#include "nfc_types_p.h"

/*
* Note: locale syntax is language[_territory] and ISO/IANA syntax is
* language[-territory].
*
* Caller should free NfcLanguage returned by nfc_system_language() with
* g_free() - the whole thing gets allocated from a single memory block.
*/
typedef struct nfc_language {
const char* language;
const char* territory;
} NfcLanguage;
/* Add _ prefix so that these don't get exported */
#define nfc_system_locale _nfc_system_locale

void
nfc_hexdump(
Expand All @@ -56,10 +47,6 @@ void
nfc_hexdump_data(
const GUtilData* data);

NfcLanguage*
nfc_system_language(
void);

const char*
nfc_system_locale(
void);
Expand Down
1 change: 1 addition & 0 deletions src/nfcd.map
Expand Up @@ -7,6 +7,7 @@
nfc_plugin_*;
nfc_tag_*;
nfc_target_*;
nfc_system_*;
local:
*;
};
4 changes: 1 addition & 3 deletions unit/core_ndef_rec_t/test_core_ndef_rec_t.c
Expand Up @@ -33,11 +33,9 @@

#include "test_common.h"

#include "nfc_ndef.h"
#include "nfc_util.h"
#include "nfc_ndef_p.h"

#include <locale.h>

static TestOpt test_opt;
static const char* test_system_locale = NULL;

Expand Down
1 change: 1 addition & 0 deletions unit/core_util/test_core_util.c
Expand Up @@ -33,6 +33,7 @@
#include "test_common.h"

#include "nfc_util.h"
#include "nfc_system.h"
#include "nfc_log.h"

static TestOpt test_opt;
Expand Down

0 comments on commit 62331ee

Please sign in to comment.