diff --git a/.travis.yml b/.travis.yml index a951de6..3daed0d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,9 +6,9 @@ os: linux before_install: #Cron builds only build mainline kernel. Stable and LTS kernels usually not have breaking changes. - if [ "$TRAVIS_EVENT_TYPE" == "cron" ] && [ "$KVER_BUILD" != "$KERNEL_MAINLINE" ]; then exit 0; fi - - export KERNEL_URL_DETAILS=$(wget --quiet -O - ${KERNEL_URL}v${KVER_BUILD}/ | grep -A8 "Build for ${TRAVIS_CPU_ARCH}") + - export KERNEL_URL_DETAILS=$(wget --quiet -O - ${KERNEL_URL}v${KVER_BUILD}/ | grep -A8 "Build for ${TRAVIS_CPU_ARCH}\|Test ${TRAVIS_CPU_ARCH}") - export ALL_DEB=$(echo "$KERNEL_URL_DETAILS" | grep -m1 'all.deb' | cut -d '"' -f 2) - - export KVER=$(echo $ALL_DEB | cut -d '_' -f 1 | cut -c15-)-generic + - export KVER=$(echo $ALL_DEB | cut -d '_' -f 2 | rev | cut -c14- | rev)-generic - wget ${KERNEL_URL}v${KVER_BUILD}/$(echo "$KERNEL_URL_DETAILS" | grep -m1 "${TRAVIS_CPU_ARCH}.deb" | cut -d '"' -f 2) - wget ${KERNEL_URL}v${KVER_BUILD}/$ALL_DEB - sudo dpkg -i *.deb diff --git a/core/rtw_security.c b/core/rtw_security.c index b537a26..af98bef 100644 --- a/core/rtw_security.c +++ b/core/rtw_security.c @@ -2133,7 +2133,7 @@ BIP_exit: #ifndef PLATFORM_FREEBSD #if defined(CONFIG_TDLS) /* compress 512-bits */ -static int sha256_compress(struct sha256_state *md, unsigned char *buf) +static int sha256_compress(struct sha256_state_rtk *md, unsigned char *buf) { u32 S[8], W[64], t0, t1; u32 t; @@ -2181,7 +2181,7 @@ static int sha256_compress(struct sha256_state *md, unsigned char *buf) } /* Initialize the hash state */ -static void sha256_init(struct sha256_state *md) +static void sha256_init(struct sha256_state_rtk *md) { md->curlen = 0; md->length = 0; @@ -2202,7 +2202,7 @@ static void sha256_init(struct sha256_state *md) @param inlen The length of the data (octets) @return CRYPT_OK if successful */ -static int sha256_process(struct sha256_state *md, unsigned char *in, +static int sha256_process(struct sha256_state_rtk *md, unsigned char *in, unsigned long inlen) { unsigned long n; @@ -2243,7 +2243,7 @@ static int sha256_process(struct sha256_state *md, unsigned char *in, @param out [out] The destination of the hash (32 bytes) @return CRYPT_OK if successful */ -static int sha256_done(struct sha256_state *md, unsigned char *out) +static int sha256_done(struct sha256_state_rtk *md, unsigned char *out) { int i; @@ -2293,7 +2293,7 @@ static int sha256_done(struct sha256_state *md, unsigned char *out) static int sha256_vector(size_t num_elem, u8 *addr[], size_t *len, u8 *mac) { - struct sha256_state ctx; + struct sha256_state_rtk ctx; size_t i; sha256_init(&ctx); diff --git a/include/rtw_security.h b/include/rtw_security.h index 36756e1..4a530be 100644 --- a/include/rtw_security.h +++ b/include/rtw_security.h @@ -252,7 +252,7 @@ struct security_priv { #define SEC_IS_BIP_KEY_INSTALLED(sec) _FALSE #endif -struct sha256_state { +struct sha256_state_rtk { u64 length; u32 state[8], curlen; u8 buf[64]; diff --git a/os_dep/linux/ioctl_cfg80211.c b/os_dep/linux/ioctl_cfg80211.c index f7d8f4f..dd08643 100644 --- a/os_dep/linux/ioctl_cfg80211.c +++ b/os_dep/linux/ioctl_cfg80211.c @@ -7470,6 +7470,7 @@ exit: return ret; } +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0) static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)) struct wireless_dev *wdev, @@ -7524,6 +7525,7 @@ static void cfg80211_rtw_mgmt_frame_register(struct wiphy *wiphy, exit: return; } +#endif #if defined(CONFIG_TDLS) && (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)) static int cfg80211_rtw_tdls_mgmt(struct wiphy *wiphy, @@ -9903,7 +9905,9 @@ static struct cfg80211_ops rtw_cfg80211_ops = { #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) || defined(COMPAT_KERNEL_RELEASE) .mgmt_tx = cfg80211_rtw_mgmt_tx, +#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 8, 0) .mgmt_frame_register = cfg80211_rtw_mgmt_frame_register, +#endif #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 34) && LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 35)) .action = cfg80211_rtw_mgmt_tx, #endif