mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-25 09:30:16 +01:00
```bash
readarray -d '' FILES < <(
git ls-files -z \
':(exclude)po' \
':(exclude)shared/c-rbtree' \
':(exclude)shared/c-list' \
':(exclude)shared/c-siphash' \
':(exclude)shared/c-stdaux' \
':(exclude)shared/n-acd' \
':(exclude)shared/n-dhcp4' \
':(exclude)src/systemd/src' \
':(exclude)shared/systemd/src' \
':(exclude)m4' \
':(exclude)COPYING*'
)
sed \
-e 's/^\(--\|#\| \*\) *\(([cC]) *\)\?Copyright \+\(\(([cC])\) \+\)\?\(\(20\|19\)[0-9][0-9]\) *[-–] *\(\(20\|19\)[0-9][0-9]\) \+\([^ ].*\)$/\1 C1pyright#\5 - \7#\9/' \
-e 's/^\(--\|#\| \*\) *\(([cC]) *\)\?Copyright \+\(\(([cC])\) \+\)\?\(\(20\|19\)[0-9][0-9]\) *[,] *\(\(20\|19\)[0-9][0-9]\) \+\([^ ].*\)$/\1 C2pyright#\5, \7#\9/' \
-e 's/^\(--\|#\| \*\) *\(([cC]) *\)\?Copyright \+\(\(([cC])\) \+\)\?\(\(20\|19\)[0-9][0-9]\) \+\([^ ].*\)$/\1 C3pyright#\5#\7/' \
-e 's/^Copyright \(\(20\|19\)[0-9][0-9]\) \+\([^ ].*\)$/C4pyright#\1#\3/' \
-i \
"${FILES[@]}"
echo ">>> untouched Copyright lines"
git grep Copyright "${FILES[@]}"
echo ">>> Copyright lines with unusual extra"
git grep '\<C[0-9]pyright#' "${FILES[@]}" | grep -i reserved
sed \
-e 's/\<C[0-9]pyright#\([^#]*\)#\(.*\)$/Copyright (C) \1 \2/' \
-i \
"${FILES[@]}"
```
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/298
108 lines
3.4 KiB
C
108 lines
3.4 KiB
C
// SPDX-License-Identifier: LGPL-2.1+
|
|
/*
|
|
* Copyright (C) 2018 Red Hat, Inc.
|
|
*/
|
|
|
|
#ifndef __NM_SETTINGS_STORAGE_H__
|
|
#define __NM_SETTINGS_STORAGE_H__
|
|
|
|
/*****************************************************************************/
|
|
|
|
#include "c-list/src/c-list.h"
|
|
|
|
#define NM_TYPE_SETTINGS_STORAGE (nm_settings_storage_get_type ())
|
|
#define NM_SETTINGS_STORAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_SETTINGS_STORAGE, NMSettingsStorage))
|
|
#define NM_SETTINGS_STORAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_SETTINGS_STORAGE, NMSettingsStorageClass))
|
|
#define NM_IS_SETTINGS_STORAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NM_TYPE_SETTINGS_STORAGE))
|
|
#define NM_IS_SETTINGS_STORAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NM_TYPE_SETTINGS_STORAGE))
|
|
#define NM_SETTINGS_STORAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_SETTINGS_STORAGE, NMSettingsStorageClass))
|
|
|
|
#define NM_SETTINGS_STORAGE_PLUGIN "plugin"
|
|
#define NM_SETTINGS_STORAGE_UUID "uuid"
|
|
#define NM_SETTINGS_STORAGE_FILENAME "filename"
|
|
|
|
struct _NMSettingsPlugin;
|
|
|
|
typedef struct NMSettingsStorage {
|
|
GObject parent;
|
|
struct _NMSettingsPlugin *_plugin;
|
|
char *_uuid;
|
|
char *_filename;
|
|
CList _storage_lst;
|
|
CList _storage_by_uuid_lst;
|
|
} NMSettingsStorage;
|
|
|
|
typedef struct {
|
|
GObjectClass parent;
|
|
|
|
int (*cmp_fcn) (NMSettingsStorage *a,
|
|
NMSettingsStorage *b);
|
|
|
|
} NMSettingsStorageClass;
|
|
|
|
GType nm_settings_storage_get_type (void);
|
|
|
|
NMSettingsStorage *nm_settings_storage_new (struct _NMSettingsPlugin *plugin,
|
|
const char *uuid,
|
|
const char *filename);
|
|
|
|
static inline struct _NMSettingsPlugin *
|
|
nm_settings_storage_get_plugin (const NMSettingsStorage *self)
|
|
{
|
|
GType nm_settings_plugin_get_type (void);
|
|
|
|
g_return_val_if_fail (NM_IS_SETTINGS_STORAGE (self), NULL);
|
|
|
|
nm_assert (G_TYPE_CHECK_INSTANCE_TYPE (self->_plugin, nm_settings_plugin_get_type ()));
|
|
return self->_plugin;
|
|
}
|
|
|
|
static inline const char *
|
|
nm_settings_storage_get_uuid (const NMSettingsStorage *self)
|
|
{
|
|
gboolean nm_utils_is_uuid (const char *str);
|
|
|
|
g_return_val_if_fail (NM_IS_SETTINGS_STORAGE (self), NULL);
|
|
|
|
nm_assert (nm_utils_is_uuid (self->_uuid));
|
|
return self->_uuid;
|
|
}
|
|
|
|
static inline const char *
|
|
nm_settings_storage_get_uuid_opt (const NMSettingsStorage *self)
|
|
{
|
|
gboolean nm_utils_is_uuid (const char *str);
|
|
|
|
g_return_val_if_fail (NM_IS_SETTINGS_STORAGE (self), NULL);
|
|
|
|
nm_assert (!self->_uuid || nm_utils_is_uuid (self->_uuid));
|
|
return self->_uuid;
|
|
}
|
|
|
|
static inline const char *
|
|
nm_settings_storage_get_filename (const NMSettingsStorage *self)
|
|
{
|
|
g_return_val_if_fail (NM_IS_SETTINGS_STORAGE (self), NULL);
|
|
|
|
return self->_filename;
|
|
}
|
|
|
|
/*****************************************************************************/
|
|
|
|
#define nm_assert_valid_settings_storage(plugin, storage) \
|
|
G_STMT_START { \
|
|
NMSettingsPlugin *const _plugin = (plugin); \
|
|
NMSettingsStorage *const _storage = (storage); \
|
|
\
|
|
nm_assert (!_plugin || NM_IS_SETTINGS_PLUGIN (_plugin)); \
|
|
nm_assert (NM_IS_SETTINGS_STORAGE (_storage)); \
|
|
nm_assert (!_plugin || nm_settings_storage_get_plugin (_storage) == _plugin); \
|
|
} G_STMT_END
|
|
|
|
/*****************************************************************************/
|
|
|
|
int nm_settings_storage_cmp (NMSettingsStorage *sd_a,
|
|
NMSettingsStorage *sd_b,
|
|
const GSList *plugin_list);
|
|
|
|
#endif /* __NM_SETTINGS_STORAGE_H__ */
|