Extend username limit to 128-1

This commit is contained in:
Lauri Kasanen 2023-11-06 15:22:23 +02:00
parent 73c3bda8cd
commit fb7570709a
No known key found for this signature in database
5 changed files with 8 additions and 6 deletions

View File

@ -33,7 +33,6 @@
#include <openssl/sha.h> /* sha1 hash */ #include <openssl/sha.h> /* sha1 hash */
#include "websocket.h" #include "websocket.h"
#include "jsonescape.h" #include "jsonescape.h"
#include "kasmpasswd.h"
#include <network/Blacklist.h> #include <network/Blacklist.h>
/* /*
@ -1756,7 +1755,7 @@ ws_ctx_t *do_handshake(int sock, char * const ip) {
} }
unsigned char owner = 0; unsigned char owner = 0;
char inuser[32] = "-"; char inuser[USERNAME_LEN] = "-";
if (!settings.disablebasicauth) { if (!settings.disablebasicauth) {
const char *hdr = strstr(handshake, "Authorization: Basic "); const char *hdr = strstr(handshake, "Authorization: Basic ");
if (!hdr) { if (!hdr) {

View File

@ -2,6 +2,7 @@
#include <stdint.h> #include <stdint.h>
#include "GetAPIEnums.h" #include "GetAPIEnums.h"
#include "datelog.h" #include "datelog.h"
#include "kasmpasswd.h"
#define BUFSIZE 65536 #define BUFSIZE 65536
#define DBUFSIZE (BUFSIZE * 3) / 4 - 20 #define DBUFSIZE (BUFSIZE * 3) / 4 - 20
@ -57,7 +58,7 @@ typedef struct {
char *tin_buf; char *tin_buf;
char *tout_buf; char *tout_buf;
char user[32]; char user[USERNAME_LEN];
char ip[64]; char ip[64];
} ws_ctx_t; } ws_ctx_t;

View File

@ -89,7 +89,7 @@ VNCSConnectionST::VNCSConnectionST(VNCServerST* server_, network::Socket *s,
user[0] = '\0'; user[0] = '\0';
const char *at = strrchr(peerEndpoint.buf, '@'); const char *at = strrchr(peerEndpoint.buf, '@');
if (at && at - peerEndpoint.buf > 1 && at - peerEndpoint.buf < 32) { if (at && at - peerEndpoint.buf > 1 && at - peerEndpoint.buf < USERNAME_LEN) {
memcpy(user, peerEndpoint.buf, at - peerEndpoint.buf); memcpy(user, peerEndpoint.buf, at - peerEndpoint.buf);
user[at - peerEndpoint.buf] = '\0'; user[at - peerEndpoint.buf] = '\0';
} }

View File

@ -35,6 +35,8 @@
#include <rfb/Timer.h> #include <rfb/Timer.h>
#include <rfb/unixRelayLimits.h> #include <rfb/unixRelayLimits.h>
#include "kasmpasswd.h"
namespace rfb { namespace rfb {
class VNCServerST; class VNCServerST;
@ -318,7 +320,7 @@ namespace rfb {
rdr::U64 bstats_total[BS_NUM]; rdr::U64 bstats_total[BS_NUM];
struct timeval connStart; struct timeval connStart;
char user[32]; char user[USERNAME_LEN];
char kasmpasswdpath[4096]; char kasmpasswdpath[4096];
bool needsPermCheck; bool needsPermCheck;

View File

@ -6,7 +6,7 @@ extern "C" {
#endif #endif
struct kasmpasswd_entry_t { struct kasmpasswd_entry_t {
char user[32]; char user[128];
char password[128]; char password[128];
unsigned char read : 1; unsigned char read : 1;
unsigned char write : 1; unsigned char write : 1;