MCPcopy Create free account
hub / github.com/cloudreve/cloudreve / SlaveRPCSignRequired

Function SlaveRPCSignRequired

middleware/cluster.go:50–75  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

48}
49
50func SlaveRPCSignRequired() gin.HandlerFunc {
51 return func(c *gin.Context) {
52 nodeId := cluster.NodeIdFromContext(c)
53 if nodeId == 0 {
54 c.JSON(200, serializer.ParamErr(c, "Unknown node ID", nil))
55 c.Abort()
56 return
57 }
58
59 np, err := dependency.FromContext(c).NodePool(c)
60 if err != nil {
61 c.JSON(200, serializer.NewError(serializer.CodeInternalSetting, "Failed to get node pool", err))
62 c.Abort()
63 return
64 }
65
66 slaveNode, err := np.Get(c, types.NodeCapabilityNone, nodeId)
67 if slaveNode == nil || slaveNode.IsMaster() {
68 c.JSON(200, serializer.ParamErr(c, "Unknown node ID", err))
69 c.Abort()
70 return
71 }
72
73 SignRequired(slaveNode.AuthInstance())(c)
74 }
75}

Callers 1

initMasterRouterFunction · 0.92

Calls 9

NodeIdFromContextFunction · 0.92
ParamErrFunction · 0.92
FromContextFunction · 0.92
NewErrorFunction · 0.92
SignRequiredFunction · 0.85
NodePoolMethod · 0.65
GetMethod · 0.65
IsMasterMethod · 0.65
AuthInstanceMethod · 0.65

Tested by

no test coverage detected