@@ -159,15 +159,18 @@ func Pull(network string, manual bool) (*models.Node, error) {
159159 return nil , err
160160 }
161161 servercfg := cfg .Server
162- var header metadata.MD
163162
164163 if cfg .Node .IPForwarding == "yes" && ! ncutils .IsWindows () {
165164 if err = local .SetIPForwarding (); err != nil {
166165 return nil , err
167166 }
168167 }
169168 var resNode models.Node // just need to fill this with either server calls or client calls
169+
170+ var header metadata.MD
171+ var wcclient nodepb.NodeServiceClient
170172 var ctx context.Context
173+
171174 if cfg .Node .IsServer != "yes" {
172175 conn , err := grpc .Dial (cfg .Server .GRPCAddress ,
173176 ncutils .GRPCRequestOpts (cfg .Server .GRPCSSL ))
@@ -176,9 +179,9 @@ func Pull(network string, manual bool) (*models.Node, error) {
176179 return nil , err
177180 }
178181 defer conn .Close ()
179- wcclient : = nodepb .NewNodeServiceClient (conn )
182+ wcclient = nodepb .NewNodeServiceClient (conn )
180183
181- ctx , err : = auth .SetJWT (wcclient , network )
184+ ctx , err = auth .SetJWT (wcclient , network )
182185 if err != nil {
183186 ncutils .PrintLog ("Failed to authenticate: " + err .Error (), 1 )
184187 return nil , err
@@ -188,6 +191,7 @@ func Pull(network string, manual bool) (*models.Node, error) {
188191 Data : node .MacAddress + "###" + node .Network ,
189192 Type : nodepb .STRING_TYPE ,
190193 }
194+
191195 readres , err := wcclient .ReadNode (ctx , req , grpc .Header (& header ))
192196 if err != nil {
193197 return nil , err
@@ -222,6 +226,9 @@ func Pull(network string, manual bool) (*models.Node, error) {
222226 return & resNode , err
223227 }
224228 if resNode .IsServer != "yes" {
229+ if wcclient == nil || ctx == nil {
230+ return & cfg .Node , errors .New ("issue initializing gRPC client" )
231+ }
225232 req := & nodepb.Object {
226233 Data : string (nodeData ),
227234 Type : nodepb .NODE_TYPE ,
0 commit comments