Skip to content

Instantly share code, notes, and snippets.

jonm

Block or report user

Report or block jonm

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View keybase.md

Keybase proof

I hereby claim:

  • I am jonm on github.
  • I am jon_moore (https://keybase.io/jon_moore) on keybase.
  • I have a public key whose fingerprint is F768 1F51 860C A81F 987B 1178 A2C7 49E7 BB6B 22C4

To claim this, I am signing this object:

@jonm
jonm / xhtml_api_example.html
Created Nov 25, 2010
Sample document using XHTML for hypermedia APIs.
View xhtml_api_example.html
<!-- quick demo of XHTML API style -->
<html>
<body>
<div class="dvr">
<p>This div (and all it contains), represents a DVR set-top box. Some parts, like this text, may be
ignored by programmatic clients. A client can recognize it by its @class attribute. The general
convention here is one of inclusion rather than position, and clients make a lot of use of the
"//" (descendent) XPath operator rather than the "/" (child) operator.</p>
<!-- by the next form's @class I can recognize this is what I use to assign a friendly name.
@jonm
jonm / shallow-vs-deep.html
Created Dec 8, 2011
Shallow vs. deep representations in XHTML Hypermedia APIs
View shallow-vs-deep.html
<html>
<body>
<!-- the following div is a sample representation of a 'car' domain object; it can be identified as
such by the presence of 'car' in its @class. In this case, the car has two attributes, a make
and a model, and both are included right here. This is what I call a deep/complete/concrete
representation. -->
<div id="car123" class="car">
<span class="make">Ford</span>
<span class="model">Mustang</span>
</div>
@jonm
jonm / initial-compilation-errors.txt
Last active Oct 3, 2015
initial compilation errors
View initial-compilation-errors.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
In file included from comm.c:21:
./protos.h:21:7: error: conflicting types for 'strdup'
char *strdup(char *source);
^
/usr/include/string.h:117:7: note: previous declaration is here
char *strdup(const char *);
^
comm.c:133:7: warning: implicitly declaring library function 'log' with type
@jonm
jonm / compiler-version.txt
Last active Oct 3, 2015
compiler version
View compiler-version.txt
$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
@jonm
jonm / strdup-decl.txt
Created Oct 3, 2015
Error describing a duplicated/conflicting declaration.
View strdup-decl.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
In file included from comm.c:21:
./protos.h:21:7: error: conflicting types for 'strdup'
char *strdup(char *source);
^
/usr/include/string.h:117:7: note: previous declaration is here
char *strdup(const char *);
...
@jonm
jonm / -Wreturn-type.txt
Created Oct 3, 2015
control reaches end of non-void function
View -Wreturn-type.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
comm.c:98:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
...
@jonm
jonm / overridden-log-error.txt
Created Oct 3, 2015
Compilation error with the `log()` function.
View overridden-log-error.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
comm.c:133:7: warning: implicitly declaring library function 'log' with type
'double (double)'
log("Lawful mode selected.");
^
comm.c:133:7: note: please include the header <math.h> or explicitly provide a
declaration for 'log'
...
@jonm
jonm / missing-proto-log_msg.txt
Created Oct 3, 2015
the log_msg() function is missing a prototype
View missing-proto-log_msg.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
comm.c:133:7: warning: implicit declaration of function 'log_msg' is invalid in
C99 [-Wimplicit-function-declaration]
log_msg("Lawful mode selected.");
^
...
@jonm
jonm / bind-arg-mismatch.txt
Created Oct 3, 2015
we are calling bind() with the wrong number of arguments
View bind-arg-mismatch.txt
$ make
gcc -g -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -DIMPL_SECURITY -DNEW_RENT -DLEVEL_LOSS -DNEWEXP -DGROUP_NAMES -c -o comm.o comm.c
...
comm.c:747:31: error: too many arguments to function call, expected 3, have 4
if (bind(s, &sa, sizeof(sa), 0) < 0) {
~~~~ ^
/usr/include/sys/socket.h:557:1: note: 'bind' declared here
int bind(int, const struct sockaddr *, socklen_t) __DARWIN_ALIAS(bind);
^
...
You can’t perform that action at this time.