Skip to content

Commit 3fac35a

Browse files
committed
Bugfixes
1 parent 586a00f commit 3fac35a

File tree

3 files changed

+59
-50
lines changed

3 files changed

+59
-50
lines changed

daemons/notepadhandler/src/notepadhandler.ts

Lines changed: 39 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -340,28 +340,27 @@ export class NoteScreenConnection extends CommonConnection {
340340
this.emitVideoquestions(socket, notepadscreenid)
341341

342342
socket.on('reauthor', async () => {
343-
// we use the information from the already present authtoken
344-
const token = await this.getLectureToken(curtoken)
345-
if (!token.decoded) {
346-
console.log('error in reauthor', token.error)
347-
return
348-
}
349-
curtoken = token.decoded
350-
const { cryptKey, signKey, userhash } = notepadscreenid
351343
if (
352-
typeof cryptKey !== 'string' ||
353-
typeof signKey !== 'string' ||
354-
typeof userhash !== 'string'
344+
typeof notepadscreenid.userhash === 'undefined' ||
345+
typeof notepadscreenid.signKey === 'undefined' ||
346+
typeof notepadscreenid.cryptKey === 'undefined'
355347
) {
356-
console.log('error in reauthor , no sign, userhash or crypt key')
348+
console.log(
349+
'reautor failed userhash, signKey or userHash not set',
350+
notepadscreenid
351+
)
357352
return
358353
}
359-
this.updateNotescreenActive({
360-
...notepadscreenid,
361-
cryptKey,
362-
signKey,
363-
userhash
364-
})
354+
// we use the information from the already present authtoken
355+
const token = await this.getLectureToken(curtoken)
356+
if (token.decoded) curtoken = token.decoded
357+
this.updateNotescreenActive(
358+
notepadscreenid as NotepadScreenIdType & {
359+
cryptKey: string
360+
signKey: string
361+
userhash: string
362+
}
363+
)
365364
socket.emit('authtoken', { token: token.token })
366365
})
367366
let rurl: string | undefined
@@ -915,28 +914,27 @@ export class NoteScreenConnection extends CommonConnection {
915914
this.emitVideoquestions(socket, purescreen)
916915

917916
socket.on('reauthor', async () => {
918-
// we use the information from the already present authtoken
919-
const token = await this.getScreenToken(curtoken)
920-
const { cryptKey, signKey, userhash } = purescreen
921917
if (
922-
typeof cryptKey !== 'string' ||
923-
typeof signKey !== 'string' ||
924-
typeof userhash !== 'string'
918+
typeof purescreen.userhash === 'undefined' ||
919+
typeof purescreen.signKey === 'undefined' ||
920+
typeof purescreen.cryptKey === 'undefined'
925921
) {
926-
console.log('error in reauthor , no sign, userhash or crypt key')
927-
return
928-
}
929-
this.updateNotescreenActive({
930-
...purescreen,
931-
cryptKey,
932-
signKey,
933-
userhash
934-
})
935-
if (!token.decoded) {
936-
console.log('error in reauthor', token.error)
922+
console.log(
923+
'reautor failed userhash, signKey or userHash not set',
924+
purescreen
925+
)
937926
return
938927
}
939-
curtoken = token.decoded
928+
// we use the information from the already present authtoken
929+
const token = await this.getScreenToken(curtoken)
930+
this.updateNotescreenActive(
931+
purescreen as NotepadScreenIdType & {
932+
cryptKey: string
933+
signKey: string
934+
userhash: string
935+
}
936+
)
937+
if (token.decoded) curtoken = token.decoded
940938
socket.emit('authtoken', { token: token.token })
941939
})
942940

@@ -1017,6 +1015,7 @@ export class NoteScreenConnection extends CommonConnection {
10171015
})
10181016

10191017
socket.on('keyInfo', (cmd) => {
1018+
console.log('debug keyinfo', cmd)
10201019
if (cmd.cryptKey && cmd.signKey) {
10211020
purescreen.cryptKey = cmd.cryptKey
10221021
purescreen.signKey = cmd.signKey
@@ -1137,6 +1136,7 @@ export class NoteScreenConnection extends CommonConnection {
11371136
oldtoken?: ScreenLectureToken
11381137
error?: string
11391138
}> {
1139+
console.log('getLectureToken mark 1')
11401140
const newtoken: ScreenLectureToken = {
11411141
user: oldtoken.user,
11421142
purpose: 'notepad',
@@ -1148,8 +1148,10 @@ export class NoteScreenConnection extends CommonConnection {
11481148
name: oldtoken.name,
11491149
maxrenew: oldtoken.maxrenew - 1
11501150
}
1151+
console.log('getLectureToken mark 2')
11511152
if (!oldtoken.maxrenew || !(oldtoken.maxrenew > 0))
11521153
return { error: 'maxrenew token failed', oldtoken: oldtoken }
1154+
console.log('getLectureToken mark 3')
11531155
try {
11541156
this.redis.hSet(
11551157
'lecture:{' +
@@ -1165,6 +1167,7 @@ export class NoteScreenConnection extends CommonConnection {
11651167
} catch (error) {
11661168
console.log('redis problem in getNotepadToken', error)
11671169
}
1170+
console.log('getLectureToken mark 4')
11681171
return { token: await this.signNotepadJwt(newtoken), decoded: newtoken }
11691172
}
11701173

daemons/noteshandler/src/noteshandler.ts

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import { createHash } from 'crypto'
2020
import {
2121
CommonConnection,
22+
type AddUpdateCryptoIdentArgs,
2223
type NotesIdType,
2324
type RouterInfo,
2425
type TokenType
@@ -149,24 +150,21 @@ export class NotesConnection extends CommonConnection {
149150
this.emitVideoquestions(socket, purenotes)
150151

151152
socket.on('reauthor', async () => {
152-
// we use the information from the already present authtoken
153-
const token = await this.getNotesToken(curtoken)
154-
if (!token.decoded) {
155-
console.log('error in reauthor', token.error)
156-
return
157-
}
158-
curtoken = token.decoded
159-
const { cryptKey, signKey, userhash } = purenotes
160153
if (
161-
typeof cryptKey !== 'string' ||
162-
typeof signKey !== 'string' ||
163-
typeof userhash !== 'string'
154+
typeof purenotes.userhash === 'undefined' ||
155+
typeof purenotes.signKey === 'undefined' ||
156+
typeof purenotes.cryptKey === 'undefined'
164157
) {
165-
console.log('error in reauthor , no sign, userhash or crypt key')
158+
console.log(
159+
'reautor failed userhash, signKey or userHash not set',
160+
purenotes
161+
)
166162
return
167163
}
168-
this.addUpdateCryptoIdent({ ...purenotes, cryptKey, signKey, userhash })
169-
164+
// we use the information from the already present authtoken
165+
this.addUpdateCryptoIdent(purenotes as AddUpdateCryptoIdentArgs)
166+
const token = await this.getNotesToken(curtoken)
167+
if (token.decoded) curtoken = token.decoded
170168
socket.emit('authtoken', { token: token.token })
171169
})
172170

packages/data/src/data.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1571,6 +1571,14 @@ export class Collection implements StrictSink {
15711571
return this.jupytercontainer_
15721572
}
15731573

1574+
get containers() {
1575+
return this.containers_
1576+
}
1577+
1578+
get contdirty() {
1579+
return this.contdirty_
1580+
}
1581+
15741582
protected lastcontainer: {
15751583
[key: number]: ContainerId
15761584
} = {}

0 commit comments

Comments
 (0)