summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Kozlov <xeb@mail.ru>2021-08-26 12:56:02 +0300
committerDmitry Kozlov <xeb@mail.ru>2021-08-26 12:56:02 +0300
commit5daf0f6782b769600855f745aa0a2e514a06a8aa (patch)
treec386bac3188c0825393a290393eaf68616fdacba
parenta77f448266e90d6706517cb91a699be080268eb3 (diff)
parent2224396d8d184e2c267a9958408e0606541e9d0b (diff)
downloadaccel-ppp-xebd-5daf0f6782b769600855f745aa0a2e514a06a8aa.tar.gz
accel-ppp-xebd-5daf0f6782b769600855f745aa0a2e514a06a8aa.zip
Merge branch 'master' of github.com:accel-ppp/accel-ppp
-rw-r--r--CMakeLists.txt2
-rw-r--r--accel-pppd/ctrl/ipoe/dhcpv4.c6
-rw-r--r--accel-pppd/logs/log_file.c6
-rw-r--r--cmake/cpack.cmake5
4 files changed, 12 insertions, 7 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dd45777..70bf512 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,4 @@
cmake_minimum_required(VERSION 2.6)
-cmake_policy(SET CMP0005 NEW)
-cmake_policy(SET CMP0003 OLD)
if (CMAKE_BINARY_DIR STREQUAL CMAKE_HOME_DIRECTORY)
message(FATAL_ERROR "Building in source directory is forbidden. Please make separated build directory.")
diff --git a/accel-pppd/ctrl/ipoe/dhcpv4.c b/accel-pppd/ctrl/ipoe/dhcpv4.c
index ffbbcfe..f1d9c46 100644
--- a/accel-pppd/ctrl/ipoe/dhcpv4.c
+++ b/accel-pppd/ctrl/ipoe/dhcpv4.c
@@ -105,7 +105,7 @@ static struct dhcpv4_iprange *parse_range(const char *str)
pthread_mutex_init(&r->lock, NULL);
end -= start;
- r->free[(end - 1) / ( 8 * sizeof(long))] &= (1l << ((end - 1) % (8 * sizeof(long)) + 1)) - 1;
+ r->free[(end - 1) / ( 8 * sizeof(long))] &= (1ul << ((end - 1) % (8 * sizeof(long)) + 1)) - 1;
r->free[0] &= ~3;
return r;
@@ -1179,7 +1179,7 @@ int dhcpv4_get_ip(struct dhcpv4_serv *serv, uint32_t *yiaddr, uint32_t *siaddr,
for (i = serv->range->pos; i < serv->range->len; i++) {
k = ffsl(serv->range->free[i]);
if (k) {
- serv->range->free[i] &= ~(1l << (k - 1));
+ serv->range->free[i] &= ~(1lu << (k - 1));
serv->range->pos = i;
pthread_mutex_unlock(&serv->range->lock);
*yiaddr = htonl(serv->range->startip + i * 8 * sizeof(long) + k - 1);
@@ -1207,7 +1207,7 @@ void dhcpv4_put_ip(struct dhcpv4_serv *serv, uint32_t ip)
return;
pthread_mutex_lock(&serv->range->lock);
- serv->range->free[n / (8 * sizeof(long))] |= 1l << (n % (8 * sizeof(long)));
+ serv->range->free[n / (8 * sizeof(long))] |= 1lu << (n % (8 * sizeof(long)));
pthread_mutex_unlock(&serv->range->lock);
}
diff --git a/accel-pppd/logs/log_file.c b/accel-pppd/logs/log_file.c
index 216ff5a..42d9f3f 100644
--- a/accel-pppd/logs/log_file.c
+++ b/accel-pppd/logs/log_file.c
@@ -265,8 +265,10 @@ static void general_log(struct log_target_t *t, struct log_msg_t *msg, struct ap
static struct ap_private *find_pd(struct ap_session *ses, void *pd_key)
{
struct ap_private *pd;
+ struct list_head *pos, *next;
- list_for_each_entry(pd, &ses->pd_list, entry) {
+ list_for_each_safe(pos, next, &ses->pd_list) {
+ pd = list_entry(pos->next, typeof(*pd), entry);
if (pd->key == pd_key) {
return pd;
}
@@ -551,8 +553,8 @@ static void ev_ctrl_started(struct ap_session *ses)
}
memset(fpd, 0, sizeof(*fpd));
fpd->pd.key = &pd_key3;
- list_add_tail(&fpd->pd.entry, &ses->pd_list);
INIT_LIST_HEAD(&fpd->msgs);
+ list_add_tail(&fpd->pd.entry, &ses->pd_list);
}
}
diff --git a/cmake/cpack.cmake b/cmake/cpack.cmake
index be4c085..7de53ad 100644
--- a/cmake/cpack.cmake
+++ b/cmake/cpack.cmake
@@ -43,6 +43,11 @@ IF(CPACK_TYPE STREQUAL Debian10)
INCLUDE(${CMAKE_HOME_DIRECTORY}/cmake/debian/debian.cmake)
ENDIF(CPACK_TYPE STREQUAL Debian10)
+IF(CPACK_TYPE STREQUAL Debian11)
+ SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.31), libssl1.1 (>= 1.1.1k), libpcre3 (>= 8.39)")
+ INCLUDE(${CMAKE_HOME_DIRECTORY}/cmake/debian/debian.cmake)
+ENDIF(CPACK_TYPE STREQUAL Debian11)
+
IF(CPACK_TYPE STREQUAL Ubuntu16)
SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.23), libssl1.0.0 (>= 1.0.0), libpcre3 (>= 8.39)")
INCLUDE(${CMAKE_HOME_DIRECTORY}/cmake/debian/debian.cmake)