The V1_LWT type interface changes are here:
https://github.com/mirage/mirage/commits/master/types/V1_LWT.mli 
<https://github.com/mirage/mirage/commits/master/types/V1_LWT.mli>

And the only main addition was this in February for IPv6:
https://github.com/mirage/mirage/commit/fac5ec598d728bd559794f540ff0a56cc5abc51d#diff-be484a37f777d5945a68983604b384fc
 
<https://github.com/mirage/mirage/commit/fac5ec598d728bd559794f540ff0a56cc5abc51d#diff-be484a37f777d5945a68983604b384fc>

But normally this sort of error is because of a mismatch in functor arguments 
-- can you check that the generated code or manually write code is in sync?  
Which versions of the tools are you using?

-anil

> On 19 May 2015, at 17:34, Nick Betteridge <[email protected]> wrote:
> 
> Hi
> 
> I'm trying to work out why this example is failing to compile, as it was OK 
> not so long ago :) - 
> 
> File "dispatch.ml", line 14, characters 22-23:
> Error: Signature mismatch:
>        Modules do not match:
>          functor (C : V1.CLOCK) (T : V1_LWT.TIME) ->
>            sig
>              type buffer = Cstruct.t
>              type ethif = E.t
>              type ipaddr = Ipaddr.V4.t
>              type prefix = Ipaddr.V4.t
>              type error = [ `Unimplemented | `Unknown of string ]
>              type 'a io = 'a Lwt.t
>              type t = Ipv4.Make(E)(C)(T).t
>              val disconnect : t -> unit io
>              type callback = src:ipaddr -> dst:ipaddr -> buffer -> unit io
>              val input :
>                t ->
>                tcp:callback ->
>                udp:callback ->
>                default:(proto:int -> callback) -> buffer -> unit io
>              val allocate_frame :
>                t ->
>                dst:ipaddr -> proto:[ `ICMP | `TCP | `UDP ] -> buffer * int
>              val write : t -> buffer -> buffer -> unit io
>              val writev : t -> buffer -> buffer list -> unit io
>              val checksum : buffer -> buffer list -> int
>              val get_source : t -> dst:ipaddr -> ipaddr
>              val set_ip : t -> ipaddr -> unit io
>              val get_ip : t -> ipaddr list
>              val set_ip_netmask : t -> prefix -> unit io
>              val get_ip_netmasks : t -> prefix list
>              val set_ip_gateways : t -> ipaddr list -> unit io
>              val get_ip_gateways : t -> ipaddr list
>              type uipaddr = Ipaddr.t
>              val to_uipaddr : ipaddr -> uipaddr
>              val of_uipaddr : uipaddr -> ipaddr option
>              val input_arpv4 : t -> buffer -> unit io
>              val connect : ethif -> [> `Error of error | `Ok of t ] Lwt.t
>            end
>        is not included in
>          V1_LWT.IP
> 
> _______________________________________________
> MirageOS-devel mailing list
> [email protected] 
> <mailto:[email protected]>
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel 
> <http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel>
_______________________________________________
MirageOS-devel mailing list
[email protected]
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel

Reply via email to