Preparing report...

Report for github.com/fireeye/gocrack

A+    Excellent!    Found 39 issues across 131 files

Tweet

gofmt98%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo93%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.


golint74%

Golint is a linter for Go source code.

    • gocrack/server/authentication/test/fake_auth.go
    • Line 5: warning: exported type FakeAuthPlugin should have comment or be unexported (golint)
    • Line 9: warning: exported function NewFakeAuthProv should have comment or be unexported (golint)
    • Line 15: warning: exported method FakeAuthPlugin.Login should have comment or be unexported (golint)
    • Line 21: warning: exported method FakeAuthPlugin.CreateUser should have comment or be unexported (golint)
    • Line 25: warning: exported method FakeAuthPlugin.UserCanChangePassword should have comment or be unexported (golint)
    • Line 29: warning: exported method FakeAuthPlugin.CanUsersRegister should have comment or be unexported (golint)
    • Line 33: warning: exported method FakeAuthPlugin.GenerateSecurePassword should have comment or be unexported (golint)
    • gocrack/server/web/sse_endpoint.go
    • Line 46: warning: exported type RealtimeServer should have comment or be unexported (golint)
    • Line 55: warning: exported function NewRealtimeServer should have comment or be unexported (golint)
    • Line 167: warning: exported method RealtimeServer.ServeStream should have comment or be unexported (golint)
    • gocrack/server/authentication/test/fake_database.go
    • Line 9: warning: exported type FakeDatabase should have comment or be unexported (golint)
    • Line 13: warning: exported function NewFakeDatabase should have comment or be unexported (golint)
    • Line 19: warning: exported method FakeDatabase.CreateUser should have comment or be unexported (golint)
    • Line 24: warning: exported method FakeDatabase.SearchForUserByPassword should have comment or be unexported (golint)
    • Line 35: warning: exported method FakeDatabase.GetUsers should have comment or be unexported (golint)
    • gocrack/server/rpc/client/client.go
    • Line 17: warning: exported type IPool should have comment or be unexported (golint)
    • Line 42: warning: exported type RPCClient should have comment or be unexported (golint)
    • Line 49: warning: exported type FileResponse should have comment or be unexported (golint)
    • Line 54: warning: exported function NewRPCClient should have comment or be unexported (golint)
    • Line 69: warning: exported method RPCClient.OverrideServerName should have comment or be unexported (golint)
    • Line 78: warning: exported method RPCClient.AddCredentials should have comment or be unexported (golint)
    • gocrack/server/storage/schemas.go
    • Line 76: warning: exported const TaskStatusQueued should have comment (or a comment on this block) or be unexported (golint)
    • Line 86: warning: exported method TaskStatus.UnmarshalJSON should have comment or be unexported (golint)
    • Line 119: warning: exported const WorkerPriorityHigh should have comment (or a comment on this block) or be unexported (golint)
    • Line 128: warning: exported const EntitlementTask should have comment (or a comment on this block) or be unexported (golint)
    • gocrack/server/rpc/rpc_server.go
    • Line 21: warning: exported type RPCServer should have comment or be unexported (golint)
    • Line 31: warning: exported type RPCError should have comment or be unexported (golint)
    • Line 36: warning: exported type RPCAPI should have comment or be unexported (golint)
    • Line 39: warning: exported function WrapCallError should have comment or be unexported (golint)
    • gocrack/server/filemanager/test/fakestor.go
    • Line 5: warning: exported type TestEngineFileTxn should have comment or be unexported (golint)
    • Line 10: warning: exported method TestEngineFileTxn.SaveEngineFile should have comment or be unexported (golint)
    • Line 16: warning: exported method TestEngineFileTxn.AddEntitlement should have comment or be unexported (golint)
    • Line 20: warning: exported method TestEngineFileTxn.Rollback should have comment or be unexported (golint)
    • Line 26: warning: exported method TestEngineFileTxn.Commit should have comment or be unexported (golint)
    • Line 31: warning: exported type TestStorageImpl should have comment or be unexported (golint)
    • Line 33: warning: exported method TestStorageImpl.NewEngineFileTransaction should have comment or be unexported (golint)
    • Line 37: warning: exported method TestStorageImpl.DeleteEngineFile should have comment or be unexported (golint)
    • Line 41: warning: exported method TestStorageImpl.DeleteTaskFile should have comment or be unexported (golint)
    • gocrack/server/storage/storage.go
    • Line 38: warning: exported type EngineFileTxn should have comment or be unexported (golint)
    • Line 68: warning: exported type PendingTaskStatusChangeItem should have comment or be unexported (golint)
    • Line 73: warning: exported type GetPendingTasksResponseItem should have comment or be unexported (golint)
    • gocrack/server/storage/bdb/task_management.go
    • Line 126: warning: exported method BoltBackend.GetPendingTasks should have comment or be unexported (golint)
    • Line 172: warning: exported method BoltBackend.ChangeTaskStatus should have comment or be unexported (golint)
    • Line 197: warning: exported method BoltBackend.TasksSearch should have comment or be unexported (golint)
    • Line 307: warning: exported method BoltBackend.SaveCrackedHash should have comment or be unexported (golint)
    • Line 319: warning: exported method BoltBackend.GetCrackedPasswords should have comment or be unexported (golint)
    • Line 333: warning: exported method BoltBackend.UpdateTask should have comment or be unexported (golint)
    • gocrack/server/web/task_management.go
    • Line 18: warning: exported type TaskCrackEngineFancy should have comment or be unexported (golint)
    • Line 20: warning: exported method TaskCrackEngineFancy.MarshalJSON should have comment or be unexported (golint)
    • Line 29: warning: exported type TaskPriorityFancy should have comment or be unexported (golint)
    • Line 31: warning: exported method TaskPriorityFancy.MarshalJSON should have comment or be unexported (golint)
    • Line 109: warning: exported type TaskListingResponse should have comment or be unexported (golint)
    • Line 114: warning: exported type PasswordResponseItem should have comment or be unexported (golint)
    • Line 120: warning: exported type PasswordListResponse should have comment or be unexported (golint)
    • Line 125: warning: exported type ChangeTaskStatusRequest should have comment or be unexported (golint)
    • Line 129: warning: exported type ModifyTaskRequest should have comment or be unexported (golint)
    • gocrack/server/web/file_management_task.go
    • Line 20: warning: exported type APIEngine should have comment or be unexported (golint)
    • Line 22: warning: exported method APIEngine.MarshalJSON should have comment or be unexported (golint)
    • Line 54: warning: exported type TaskFileLintError should have comment or be unexported (golint)
    • gocrack/opencl/types.go
    • Line 18: warning: exported const DeviceTypeCPU should have comment (or a comment on this block) or be unexported (golint)
    • Line 45: warning: exported type ErrOther should have comment or be unexported (golint)
    • Line 52: warning: exported var ErrDeviceNotFound should have comment or be unexported (golint)
    • gocrack/server/storage/config.go
    • Line 6: warning: error var noBackend should have name of the form errFoo (golint)
    • Line 7: warning: error var noConnectionString should have name of the form errFoo (golint)
    • Line 10: warning: exported type Config should have comment or be unexported (golint)
    • Line 15: warning: exported method Config.Validate should have comment or be unexported (golint)
    • gocrack/server/rpc/rpc_tasks.go
    • Line 16: warning: exported type FileType should have comment or be unexported (golint)
    • Line 19: warning: exported const FileTypeTask should have comment (or a comment on this block) or be unexported (golint)
    • Line 23: warning: exported type ChangeTaskStatusRequest should have comment or be unexported (golint)
    • Line 29: warning: exported type RequestTaskPayload should have comment or be unexported (golint)
    • Line 33: warning: exported type NewTaskPayloadResponse should have comment or be unexported (golint)
    • Line 42: warning: exported type TaskFileGetRequest should have comment or be unexported (golint)
    • Line 47: warning: exported type CrackedPasswordRequest should have comment or be unexported (golint)
    • Line 54: warning: exported type TaskStatusUpdate should have comment or be unexported (golint)
    • Line 61: warning: exported type TaskCheckpointSaveRequest should have comment or be unexported (golint)
    • gocrack/server/storage/bdb/engine_file_txn.go
    • Line 11: warning: exported type EngineFileTransaction should have comment or be unexported (golint)
    • Line 16: warning: exported method BoltBackend.NewEngineFileTransaction should have comment or be unexported (golint)
    • Line 24: warning: exported method EngineFileTransaction.SaveEngineFile should have comment or be unexported (golint)
    • Line 51: warning: exported method EngineFileTransaction.AddEntitlement should have comment or be unexported (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign97%

IneffAssign detects ineffectual assignments in Go code.


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!